forked from enlightenment/efl
Eo: Fix and use the abstract class .eo file.
Until now it was just there, but never generated or used.
This commit is contained in:
parent
7a83c9c659
commit
10626ff538
|
@ -1,11 +1,18 @@
|
||||||
|
|
||||||
### Library
|
### Library
|
||||||
|
|
||||||
|
BUILT_SOURCES += \
|
||||||
|
lib/eo/eo_abstract_class.eo.c \
|
||||||
|
lib/eo/eo_abstract_class.eo.h
|
||||||
|
|
||||||
lib_LTLIBRARIES += lib/eo/libeo.la
|
lib_LTLIBRARIES += lib/eo/libeo.la
|
||||||
|
|
||||||
installed_eomainheadersdir = $(includedir)/eo-@VMAJ@
|
installed_eomainheadersdir = $(includedir)/eo-@VMAJ@
|
||||||
dist_installed_eomainheaders_DATA = lib/eo/Eo.h
|
dist_installed_eomainheaders_DATA = lib/eo/Eo.h
|
||||||
|
|
||||||
|
nodist_installed_eomainheaders_DATA = \
|
||||||
|
lib/eo/eo_abstract_class.eo.h
|
||||||
|
|
||||||
lib_eo_libeo_la_SOURCES = \
|
lib_eo_libeo_la_SOURCES = \
|
||||||
lib/eo/eo.c \
|
lib/eo/eo.c \
|
||||||
lib/eo/eo_ptr_indirection.c \
|
lib/eo/eo_ptr_indirection.c \
|
||||||
|
|
|
@ -913,16 +913,7 @@ EAPI Eina_Bool eo_composite_is(const Eo *comp_obj);
|
||||||
* @{
|
* @{
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
#include "eo_abstract_class.eo.h"
|
||||||
* @def EO_CLASS_CLASS
|
|
||||||
* The class type for the Eo Class class.
|
|
||||||
*/
|
|
||||||
#define EO_CLASS_CLASS eo_class_class_get()
|
|
||||||
/**
|
|
||||||
* @brief Use #EO_CLASS_CLASS
|
|
||||||
* @internal
|
|
||||||
* */
|
|
||||||
EAPI const Eo_Class *eo_class_class_get(void);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @}
|
* @}
|
||||||
|
|
|
@ -979,7 +979,7 @@ eo_class_get(const Eo *eo_id)
|
||||||
if (_eo_is_a_class(eo_id))
|
if (_eo_is_a_class(eo_id))
|
||||||
{
|
{
|
||||||
EO_CLASS_POINTER_RETURN_VAL(eo_id, _klass, NULL);
|
EO_CLASS_POINTER_RETURN_VAL(eo_id, _klass, NULL);
|
||||||
return eo_class_class_get();
|
return EO_ABSTRACT_CLASS_CLASS;
|
||||||
}
|
}
|
||||||
|
|
||||||
EO_OBJ_POINTER_RETURN_VAL(eo_id, obj, NULL);
|
EO_OBJ_POINTER_RETURN_VAL(eo_id, obj, NULL);
|
||||||
|
@ -1802,7 +1802,7 @@ eo_init(void)
|
||||||
EINA_LOG_STATE_INIT);
|
EINA_LOG_STATE_INIT);
|
||||||
|
|
||||||
/* bootstrap EO_CLASS_CLASS */
|
/* bootstrap EO_CLASS_CLASS */
|
||||||
(void) eo_class_class_get();
|
(void) EO_ABSTRACT_CLASS_CLASS;
|
||||||
|
|
||||||
if (_eo_call_stack_key != 0)
|
if (_eo_call_stack_key != 0)
|
||||||
WRN("_eo_call_stack_key already set, this should not happen.");
|
WRN("_eo_call_stack_key already set, this should not happen.");
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
abstract Eo_Abstract_Class ()
|
abstract Eo_Abstract_Class ()
|
||||||
{
|
{
|
||||||
|
data: null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,15 +4,5 @@
|
||||||
|
|
||||||
#include "Eo.h"
|
#include "Eo.h"
|
||||||
|
|
||||||
static const Eo_Class_Description class_desc = {
|
#include "eo_abstract_class.eo.c"
|
||||||
EO_VERSION,
|
|
||||||
"Eo_Abstract_Class",
|
|
||||||
EO_CLASS_TYPE_REGULAR_NO_INSTANT,
|
|
||||||
EO_CLASS_DESCRIPTION_NOOPS(),
|
|
||||||
NULL,
|
|
||||||
0,
|
|
||||||
NULL,
|
|
||||||
NULL
|
|
||||||
};
|
|
||||||
|
|
||||||
EO_DEFINE_CLASS(eo_class_class_get, &class_desc, NULL, NULL)
|
|
||||||
|
|
|
@ -641,7 +641,7 @@ START_TEST(eo_magic_checks)
|
||||||
fail_if(eo_class_get((Eo *) buf));
|
fail_if(eo_class_get((Eo *) buf));
|
||||||
fail_if(eo_class_name_get((Eo_Class*) buf));
|
fail_if(eo_class_name_get((Eo_Class*) buf));
|
||||||
fail_if(eo_class_get(obj) != SIMPLE_CLASS);
|
fail_if(eo_class_get(obj) != SIMPLE_CLASS);
|
||||||
fail_if(eo_class_get(SIMPLE_CLASS) != EO_CLASS_CLASS);
|
fail_if(eo_class_get(SIMPLE_CLASS) != EO_ABSTRACT_CLASS_CLASS);
|
||||||
eo_do((Eo_Class *) buf,(void) NULL);
|
eo_do((Eo_Class *) buf,(void) NULL);
|
||||||
eo_do_super((Eo_Class *) buf, SIMPLE_CLASS, simple_a_set(++i));
|
eo_do_super((Eo_Class *) buf, SIMPLE_CLASS, simple_a_set(++i));
|
||||||
eo_do_super(SIMPLE_CLASS, (Eo_Class *) buf, simple_a_set(++i));
|
eo_do_super(SIMPLE_CLASS, (Eo_Class *) buf, simple_a_set(++i));
|
||||||
|
|
Loading…
Reference in New Issue