diff options
-rw-r--r-- | src/Makefile_Eo.am | 7 | ||||
-rw-r--r-- | src/lib/eo/Eo.h | 11 | ||||
-rw-r--r-- | src/lib/eo/eo.c | 4 | ||||
-rw-r--r-- | src/lib/eo/eo_abstract_class.eo | 1 | ||||
-rw-r--r-- | src/lib/eo/eo_class_class.c | 12 | ||||
-rw-r--r-- | src/tests/eo/suite/eo_test_general.c | 2 |
6 files changed, 13 insertions, 24 deletions
diff --git a/src/Makefile_Eo.am b/src/Makefile_Eo.am index cd5e6b6..ca0c444 100644 --- a/src/Makefile_Eo.am +++ b/src/Makefile_Eo.am | |||
@@ -1,11 +1,18 @@ | |||
1 | 1 | ||
2 | ### Library | 2 | ### Library |
3 | 3 | ||
4 | BUILT_SOURCES += \ | ||
5 | lib/eo/eo_abstract_class.eo.c \ | ||
6 | lib/eo/eo_abstract_class.eo.h | ||
7 | |||
4 | lib_LTLIBRARIES += lib/eo/libeo.la | 8 | lib_LTLIBRARIES += lib/eo/libeo.la |
5 | 9 | ||
6 | installed_eomainheadersdir = $(includedir)/eo-@VMAJ@ | 10 | installed_eomainheadersdir = $(includedir)/eo-@VMAJ@ |
7 | dist_installed_eomainheaders_DATA = lib/eo/Eo.h | 11 | dist_installed_eomainheaders_DATA = lib/eo/Eo.h |
8 | 12 | ||
13 | nodist_installed_eomainheaders_DATA = \ | ||
14 | lib/eo/eo_abstract_class.eo.h | ||
15 | |||
9 | lib_eo_libeo_la_SOURCES = \ | 16 | lib_eo_libeo_la_SOURCES = \ |
10 | lib/eo/eo.c \ | 17 | lib/eo/eo.c \ |
11 | lib/eo/eo_ptr_indirection.c \ | 18 | lib/eo/eo_ptr_indirection.c \ |
diff --git a/src/lib/eo/Eo.h b/src/lib/eo/Eo.h index 5d92687..23150a6 100644 --- a/src/lib/eo/Eo.h +++ b/src/lib/eo/Eo.h | |||
@@ -913,16 +913,7 @@ EAPI Eina_Bool eo_composite_is(const Eo *comp_obj); | |||
913 | * @{ | 913 | * @{ |
914 | */ | 914 | */ |
915 | 915 | ||
916 | /** | 916 | #include "eo_abstract_class.eo.h" |
917 | * @def EO_CLASS_CLASS | ||
918 | * The class type for the Eo Class class. | ||
919 | */ | ||
920 | #define EO_CLASS_CLASS eo_class_class_get() | ||
921 | /** | ||
922 | * @brief Use #EO_CLASS_CLASS | ||
923 | * @internal | ||
924 | * */ | ||
925 | EAPI const Eo_Class *eo_class_class_get(void); | ||
926 | 917 | ||
927 | /** | 918 | /** |
928 | * @} | 919 | * @} |
diff --git a/src/lib/eo/eo.c b/src/lib/eo/eo.c index 9b8d6d7..8a14021 100644 --- a/src/lib/eo/eo.c +++ b/src/lib/eo/eo.c | |||
@@ -979,7 +979,7 @@ eo_class_get(const Eo *eo_id) | |||
979 | if (_eo_is_a_class(eo_id)) | 979 | if (_eo_is_a_class(eo_id)) |
980 | { | 980 | { |
981 | EO_CLASS_POINTER_RETURN_VAL(eo_id, _klass, NULL); | 981 | EO_CLASS_POINTER_RETURN_VAL(eo_id, _klass, NULL); |
982 | return eo_class_class_get(); | 982 | return EO_ABSTRACT_CLASS_CLASS; |
983 | } | 983 | } |
984 | 984 | ||
985 | EO_OBJ_POINTER_RETURN_VAL(eo_id, obj, NULL); | 985 | EO_OBJ_POINTER_RETURN_VAL(eo_id, obj, NULL); |
@@ -1802,7 +1802,7 @@ eo_init(void) | |||
1802 | EINA_LOG_STATE_INIT); | 1802 | EINA_LOG_STATE_INIT); |
1803 | 1803 | ||
1804 | /* bootstrap EO_CLASS_CLASS */ | 1804 | /* bootstrap EO_CLASS_CLASS */ |
1805 | (void) eo_class_class_get(); | 1805 | (void) EO_ABSTRACT_CLASS_CLASS; |
1806 | 1806 | ||
1807 | if (_eo_call_stack_key != 0) | 1807 | if (_eo_call_stack_key != 0) |
1808 | WRN("_eo_call_stack_key already set, this should not happen."); | 1808 | WRN("_eo_call_stack_key already set, this should not happen."); |
diff --git a/src/lib/eo/eo_abstract_class.eo b/src/lib/eo/eo_abstract_class.eo index 82ab905..27a52e3 100644 --- a/src/lib/eo/eo_abstract_class.eo +++ b/src/lib/eo/eo_abstract_class.eo | |||
@@ -1,3 +1,4 @@ | |||
1 | abstract Eo_Abstract_Class () | 1 | abstract Eo_Abstract_Class () |
2 | { | 2 | { |
3 | data: null; | ||
3 | } | 4 | } |
diff --git a/src/lib/eo/eo_class_class.c b/src/lib/eo/eo_class_class.c index 43c2ffe..d356755 100644 --- a/src/lib/eo/eo_class_class.c +++ b/src/lib/eo/eo_class_class.c | |||
@@ -4,15 +4,5 @@ | |||
4 | 4 | ||
5 | #include "Eo.h" | 5 | #include "Eo.h" |
6 | 6 | ||
7 | static const Eo_Class_Description class_desc = { | 7 | #include "eo_abstract_class.eo.c" |
8 | EO_VERSION, | ||
9 | "Eo_Abstract_Class", | ||
10 | EO_CLASS_TYPE_REGULAR_NO_INSTANT, | ||
11 | EO_CLASS_DESCRIPTION_NOOPS(), | ||
12 | NULL, | ||
13 | 0, | ||
14 | NULL, | ||
15 | NULL | ||
16 | }; | ||
17 | 8 | ||
18 | EO_DEFINE_CLASS(eo_class_class_get, &class_desc, NULL, NULL) | ||
diff --git a/src/tests/eo/suite/eo_test_general.c b/src/tests/eo/suite/eo_test_general.c index c4e0725..78561e8 100644 --- a/src/tests/eo/suite/eo_test_general.c +++ b/src/tests/eo/suite/eo_test_general.c | |||
@@ -641,7 +641,7 @@ START_TEST(eo_magic_checks) | |||
641 | fail_if(eo_class_get((Eo *) buf)); | 641 | fail_if(eo_class_get((Eo *) buf)); |
642 | fail_if(eo_class_name_get((Eo_Class*) buf)); | 642 | fail_if(eo_class_name_get((Eo_Class*) buf)); |
643 | fail_if(eo_class_get(obj) != SIMPLE_CLASS); | 643 | fail_if(eo_class_get(obj) != SIMPLE_CLASS); |
644 | fail_if(eo_class_get(SIMPLE_CLASS) != EO_CLASS_CLASS); | 644 | fail_if(eo_class_get(SIMPLE_CLASS) != EO_ABSTRACT_CLASS_CLASS); |
645 | eo_do((Eo_Class *) buf,(void) NULL); | 645 | eo_do((Eo_Class *) buf,(void) NULL); |
646 | eo_do_super((Eo_Class *) buf, SIMPLE_CLASS, simple_a_set(++i)); | 646 | eo_do_super((Eo_Class *) buf, SIMPLE_CLASS, simple_a_set(++i)); |
647 | eo_do_super(SIMPLE_CLASS, (Eo_Class *) buf, simple_a_set(++i)); | 647 | eo_do_super(SIMPLE_CLASS, (Eo_Class *) buf, simple_a_set(++i)); |