Eolian

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files
- Examples

Data Structures | Typedefs | Enumerations | Functions
Eolian

## Data Structures
union | Eolian_Value_Union
struct | _Eolian_Value

## Typedefs
typedef struct _Eolian_Class | Eolian_Class
typedef struct _Eolian_Function | Eolian_Function
typedef struct _Eolian_Type | Eolian_Type
typedef struct _Eolian_Function_Parameter | Eolian_Function_Parameter
typedef struct _Eolian_Implement | Eolian_Implement
typedef struct _Eolian_Constructor | Eolian_Constructor
typedef struct _Eolian_Event | Eolian_Event
typedef struct _Eolian_Expression | Eolian_Expression
typedef struct _Eolian_Variable | Eolian_Variable
typedef struct _Eolian_Struct_Type_Field | Eolian_Struct_Type_Field
typedef struct _Eolian_Enum_Type_Field | Eolian_Enum_Type_Field
typedef struct _Eolian_Declaration | Eolian_Declaration
typedef struct _Eolian_Documentation | Eolian_Documentation
typedef struct _Eolian_Value | Eolian_Value

## Enumerations
enum | Eolian_Function_Type { EOLIAN_UNRESOLVED, EOLIAN_PROPERTY, EOLIAN_PROP_SET, EOLIAN_PROP_GET, EOLIAN_METHOD }
enum | Eolian_Parameter_Dir { EOLIAN_IN_PARAM, EOLIAN_OUT_PARAM, EOLIAN_INOUT_PARAM }
enum | Eolian_Class_Type { EOLIAN_CLASS_UNKNOWN_TYPE, EOLIAN_CLASS_REGULAR, EOLIAN_CLASS_ABSTRACT, EOLIAN_CLASS_MIXIN, EOLIAN_CLASS_INTERFACE }
enum | Eolian_Object_Scope { EOLIAN_SCOPE_PUBLIC, EOLIAN_SCOPE_PRIVATE, EOLIAN_SCOPE_PROTECTED }
enum | Eolian_Type_Type { EOLIAN_TYPE_UNKNOWN_TYPE, EOLIAN_TYPE_VOID, EOLIAN_TYPE_REGULAR, EOLIAN_TYPE_COMPLEX, EOLIAN_TYPE_POINTER, EOLIAN_TYPE_STRUCT, EOLIAN_TYPE_STRUCT_OPAQUE, EOLIAN_TYPE_ENUM, EOLIAN_TYPE_ALIAS, EOLIAN_TYPE_CLASS, EOLIAN_TYPE_UNDEFINED }
enum | Eolian_Expression_Type { EOLIAN_EXPR_UNKNOWN = 0, EOLIAN_EXPR_INT, EOLIAN_EXPR_UINT, EOLIAN_EXPR_LONG, EOLIAN_EXPR_ULONG, EOLIAN_EXPR_LLONG, EOLIAN_EXPR_ULLONG, EOLIAN_EXPR_FLOAT, EOLIAN_EXPR_DOUBLE, EOLIAN_EXPR_STRING, EOLIAN_EXPR_CHAR, EOLIAN_EXPR_NULL, EOLIAN_EXPR_BOOL, EOLIAN_EXPR_NAME, EOLIAN_EXPR_UNARY, EOLIAN_EXPR_BINARY }
enum | Eolian_Expression_Mask { EOLIAN_MASK_SINT = 1 << 0, EOLIAN_MASK_UINT = 1 << 1, EOLIAN_MASK_INT = EOLIAN_MASK_SINT | EOLIAN_MASK_UINT, EOLIAN_MASK_FLOAT = 1 << 2, EOLIAN_MASK_BOOL = 1 << 3, EOLIAN_MASK_STRING = 1 << 4, EOLIAN_MASK_CHAR = 1 << 5, EOLIAN_MASK_NULL = 1 << 6, EOLIAN_MASK_NUMBER = EOLIAN_MASK_INT | EOLIAN_MASK_FLOAT, EOLIAN_MASK_ALL }
enum | Eolian_Variable_Type { EOLIAN_VAR_UNKNOWN = 0, EOLIAN_VAR_CONSTANT, EOLIAN_VAR_GLOBAL }
enum | Eolian_Binary_Operator { EOLIAN_BINOP_INVALID = -1, EOLIAN_BINOP_ADD, EOLIAN_BINOP_SUB, EOLIAN_BINOP_MUL, EOLIAN_BINOP_DIV, EOLIAN_BINOP_MOD, EOLIAN_BINOP_EQ, EOLIAN_BINOP_NQ, EOLIAN_BINOP_GT, EOLIAN_BINOP_LT, EOLIAN_BINOP_GE, EOLIAN_BINOP_LE, EOLIAN_BINOP_AND, EOLIAN_BINOP_OR, EOLIAN_BINOP_BAND, EOLIAN_BINOP_BOR, EOLIAN_BINOP_BXOR, EOLIAN_BINOP_LSH, EOLIAN_BINOP_RSH }
enum | Eolian_Unary_Operator { EOLIAN_UNOP_INVALID = -1, EOLIAN_UNOP_UNM, EOLIAN_UNOP_UNP, EOLIAN_UNOP_NOT, EOLIAN_UNOP_BNOT }
enum | Eolian_Declaration_Type { EOLIAN_DECL_UNKNOWN = -1, EOLIAN_DECL_CLASS, EOLIAN_DECL_ALIAS, EOLIAN_DECL_STRUCT, EOLIAN_DECL_ENUM, EOLIAN_DECL_VAR }

## Functions
EAPI Eina_Bool | eolian_file_parse (const char *filepath)
EAPI Eina_Iterator * | eolian_all_eo_file_paths_get (void)
EAPI Eina_Iterator * | eolian_all_eot_file_paths_get (void)
EAPI Eina_Iterator * | eolian_all_eo_files_get (void)
EAPI Eina_Iterator * | eolian_all_eot_files_get (void)
EAPI int | eolian_init (void)
EAPI int | eolian_shutdown (void)
EAPI Eina_Bool | eolian_directory_scan (const char *dir)
EAPI Eina_Bool | eolian_system_directory_scan (void)
EAPI Eina_Bool | eolian_all_eo_files_parse (void)
EAPI Eina_Bool | eolian_all_eot_files_parse (void)
EAPI Eina_Bool | eolian_database_validate (void)
EAPI const Eolian_Class * | eolian_class_get_by_name (const char *class_name)
EAPI const Eolian_Class * | eolian_class_get_by_file (const char *file_name)
EAPI Eina_Stringshare * | eolian_class_file_get (const Eolian_Class *klass)
EAPI Eina_Stringshare * | eolian_class_full_name_get (const Eolian_Class *klass)
EAPI Eina_Stringshare * | eolian_class_name_get (const Eolian_Class *klass)
EAPI Eina_Iterator * | eolian_class_namespaces_get (const Eolian_Class *klass)
EAPI Eolian_Class_Type | eolian_class_type_get (const Eolian_Class *klass)
EAPI Eina_Iterator * | eolian_all_classes_get (void)
EAPI const Eolian_Documentation * | eolian_class_documentation_get (const Eolian_Class *klass)
EAPI Eina_Stringshare * | eolian_class_legacy_prefix_get (const Eolian_Class *klass)
EAPI Eina_Stringshare * | eolian_class_eo_prefix_get (const Eolian_Class *klass)
EAPI Eina_Stringshare * | eolian_class_data_type_get (const Eolian_Class *klass)
EAPI Eina_Iterator * | eolian_class_inherits_get (const Eolian_Class *klass)
EAPI Eina_Iterator * | eolian_class_functions_get (const Eolian_Class *klass, Eolian_Function_Type func_type)
EAPI Eolian_Function_Type | eolian_function_type_get (const Eolian_Function *function_id)
EAPI Eolian_Object_Scope | eolian_function_scope_get (const Eolian_Function *function_id)
EAPI Eina_Stringshare * | eolian_function_name_get (const Eolian_Function *function_id)
EAPI Eina_Stringshare * | eolian_function_full_c_name_get (const Eolian_Function *function_id, Eolian_Function_Type ftype, Eina_Bool use_legacy)
EAPI const Eolian_Function * | eolian_class_function_get_by_name (const Eolian_Class *klass, const char *func_name, Eolian_Function_Type f_type)
EAPI Eina_Stringshare * | eolian_function_legacy_get (const Eolian_Function *function_id, Eolian_Function_Type f_type)
EAPI const Eolian_Documentation * | eolian_function_documentation_get (const Eolian_Function *function_id, Eolian_Function_Type f_type)
EAPI Eina_Bool | eolian_function_is_virtual_pure (const Eolian_Function *function_id, Eolian_Function_Type f_type)
EAPI Eina_Bool | eolian_function_is_auto (const Eolian_Function *function_id, Eolian_Function_Type f_type)
EAPI Eina_Bool | eolian_function_is_empty (const Eolian_Function *function_id, Eolian_Function_Type f_type)
EAPI Eina_Bool | eolian_function_is_legacy_only (const Eolian_Function *function_id, Eolian_Function_Type ftype)
EAPI Eina_Bool | eolian_function_is_class (const Eolian_Function *function_id)
EAPI Eina_Bool | eolian_function_is_c_only (const Eolian_Function *function_id)
EAPI Eina_Bool | eolian_function_is_beta (const Eolian_Function *function_id)
EAPI Eina_Bool | eolian_function_is_constructor (const Eolian_Function *function_id, const Eolian_Class *klass)
EAPI Eina_Iterator * | eolian_function_parameters_get (const Eolian_Function *function_id)
EAPI Eina_Iterator * | eolian_property_keys_get (const Eolian_Function *foo_id, Eolian_Function_Type ftype)
EAPI Eina_Iterator * | eolian_property_values_get (const Eolian_Function *foo_id, Eolian_Function_Type ftype)
EAPI Eolian_Parameter_Dir | eolian_parameter_direction_get (const Eolian_Function_Parameter *param)
EAPI const Eolian_Type * | eolian_parameter_type_get (const Eolian_Function_Parameter *param)
EAPI const Eolian_Expression * | eolian_parameter_default_value_get (const Eolian_Function_Parameter *param)
EAPI Eina_Stringshare * | eolian_parameter_name_get (const Eolian_Function_Parameter *param)
EAPI const Eolian_Documentation * | eolian_parameter_documentation_get (const Eolian_Function_Parameter *param)
EAPI Eina_Bool | eolian_parameter_is_nonull (const Eolian_Function_Parameter *param_desc)
EAPI Eina_Bool | eolian_parameter_is_nullable (const Eolian_Function_Parameter *param_desc)
EAPI Eina_Bool | eolian_parameter_is_optional (const Eolian_Function_Parameter *param_desc)
EAPI const Eolian_Type * | eolian_function_return_type_get (const Eolian_Function *function_id, Eolian_Function_Type ftype)
EAPI const Eolian_Expression * | eolian_function_return_default_value_get (const Eolian_Function *foo_id, Eolian_Function_Type ftype)
EAPI const Eolian_Documentation * | eolian_function_return_documentation_get (const Eolian_Function *foo_id, Eolian_Function_Type ftype)
EAPI Eina_Bool | eolian_function_return_is_warn_unused (const Eolian_Function *foo_id, Eolian_Function_Type ftype)
EAPI Eina_Bool | eolian_function_object_is_const (const Eolian_Function *function_id)
EAPI const Eolian_Class * | eolian_function_class_get (const Eolian_Function *function_id)
EAPI Eina_Bool | eolian_function_is_implemented (const Eolian_Function *function_id, Eolian_Function_Type func_type, const Eolian_Class *klass)
EAPI Eina_Stringshare * | eolian_implement_full_name_get (const Eolian_Implement *impl)
EAPI const Eolian_Class * | eolian_implement_class_get (const Eolian_Implement *impl)
EAPI const Eolian_Function * | eolian_implement_function_get (const Eolian_Implement *impl, Eolian_Function_Type *func_type)
EAPI Eina_Bool | eolian_implement_is_auto (const Eolian_Implement *impl)
EAPI Eina_Bool | eolian_implement_is_empty (const Eolian_Implement *impl)
EAPI Eina_Bool | eolian_implement_is_virtual (const Eolian_Implement *impl)
EAPI Eina_Bool | eolian_implement_is_prop_get (const Eolian_Implement *impl)
EAPI Eina_Bool | eolian_implement_is_prop_set (const Eolian_Implement *impl)
EAPI Eina_Iterator * | eolian_class_implements_get (const Eolian_Class *klass)
EAPI Eina_Stringshare * | eolian_constructor_full_name_get (const Eolian_Constructor *ctor)
EAPI const Eolian_Class * | eolian_constructor_class_get (const Eolian_Constructor *ctor)
EAPI const Eolian_Function * | eolian_constructor_function_get (const Eolian_Constructor *ctor)
EAPI Eina_Bool | eolian_constructor_is_optional (const Eolian_Constructor *ctor)
EAPI Eina_Iterator * | eolian_class_constructors_get (const Eolian_Class *klass)
EAPI Eina_Iterator * | eolian_class_events_get (const Eolian_Class *klass)
EAPI Eina_Stringshare * | eolian_event_name_get (const Eolian_Event *event)
EAPI const Eolian_Type * | eolian_event_type_get (const Eolian_Event *event)
EAPI const Eolian_Documentation * | eolian_event_documentation_get (const Eolian_Event *event)
EAPI Eolian_Object_Scope | eolian_event_scope_get (const Eolian_Event *event)
EAPI Eina_Bool | eolian_event_is_beta (const Eolian_Event *event)
EAPI Eina_Stringshare * | eolian_event_c_name_get (const Eolian_Event *event)
EAPI const Eolian_Event * | eolian_class_event_get_by_name (const Eolian_Class *klass, const char *event_name)
EAPI Eina_Bool | eolian_class_ctor_enable_get (const Eolian_Class *klass)
EAPI Eina_Bool | eolian_class_dtor_enable_get (const Eolian_Class *klass)
EAPI Eina_Stringshare * | eolian_class_c_get_function_name_get (const Eolian_Class *klass)
EAPI const Eolian_Type * | eolian_type_alias_get_by_name (const char *name)
EAPI const Eolian_Type * | eolian_type_struct_get_by_name (const char *name)
EAPI const Eolian_Type * | eolian_type_enum_get_by_name (const char *name)
EAPI Eina_Iterator * | eolian_type_aliases_get_by_file (const char *fname)
EAPI Eina_Iterator * | eolian_type_structs_get_by_file (const char *fname)
EAPI Eina_Iterator * | eolian_type_enums_get_by_file (const char *fname)
EAPI Eolian_Type_Type | eolian_type_type_get (const Eolian_Type *tp)
EAPI Eina_Iterator * | eolian_type_subtypes_get (const Eolian_Type *tp)
EAPI Eina_Iterator * | eolian_type_struct_fields_get (const Eolian_Type *tp)
EAPI const Eolian_Struct_Type_Field * | eolian_type_struct_field_get (const Eolian_Type *tp, const char *field)
EAPI Eina_Stringshare * | eolian_type_struct_field_name_get (const Eolian_Struct_Type_Field *fl)
EAPI const Eolian_Documentation * | eolian_type_struct_field_documentation_get (const Eolian_Struct_Type_Field *fl)
EAPI const Eolian_Type * | eolian_type_struct_field_type_get (const Eolian_Struct_Type_Field *fl)
EAPI Eina_Iterator * | eolian_type_enum_fields_get (const Eolian_Type *tp)
EAPI const Eolian_Enum_Type_Field * | eolian_type_enum_field_get (const Eolian_Type *tp, const char *field)
EAPI Eina_Stringshare * | eolian_type_enum_field_name_get (const Eolian_Enum_Type_Field *fl)
EAPI Eina_Stringshare * | eolian_type_enum_field_c_name_get (const Eolian_Enum_Type_Field *fl)
EAPI const Eolian_Documentation * | eolian_type_enum_field_documentation_get (const Eolian_Enum_Type_Field *fl)
EAPI const Eolian_Expression * | eolian_type_enum_field_value_get (const Eolian_Enum_Type_Field *fl, Eina_Bool force)
EAPI Eina_Stringshare * | eolian_type_enum_legacy_prefix_get (const Eolian_Type *tp)
EAPI const Eolian_Documentation * | eolian_type_documentation_get (const Eolian_Type *tp)
EAPI Eina_Stringshare * | eolian_type_file_get (const Eolian_Type *tp)
EAPI const Eolian_Type * | eolian_type_base_type_get (const Eolian_Type *tp)
EAPI const Eolian_Type * | eolian_type_aliased_base_get (const Eolian_Type *tp)
EAPI const Eolian_Class * | eolian_type_class_get (const Eolian_Type *tp)
EAPI Eina_Bool | eolian_type_is_own (const Eolian_Type *tp)
EAPI Eina_Bool | eolian_type_is_const (const Eolian_Type *tp)
EAPI Eina_Bool | eolian_type_is_extern (const Eolian_Type *tp)
EAPI Eina_Stringshare * | eolian_type_c_type_named_get (const Eolian_Type *tp, const char *name)
EAPI Eina_Stringshare * | eolian_type_c_type_get (const Eolian_Type *tp)
EAPI Eina_Stringshare * | eolian_type_name_get (const Eolian_Type *tp)
EAPI Eina_Stringshare * | eolian_type_full_name_get (const Eolian_Type *tp)
EAPI Eina_Iterator * | eolian_type_namespaces_get (const Eolian_Type *tp)
EAPI Eina_Stringshare * | eolian_type_free_func_get (const Eolian_Type *tp)
EAPI Eolian_Value | eolian_expression_eval (const Eolian_Expression *expr, Eolian_Expression_Mask m)
EAPI Eolian_Value | eolian_expression_eval_type (const Eolian_Expression *expr, const Eolian_Type *type)
EAPI Eina_Stringshare * | eolian_expression_value_to_literal (const Eolian_Value *v)
EAPI Eina_Stringshare * | eolian_expression_serialize (const Eolian_Expression *expr)
EAPI Eolian_Expression_Type | eolian_expression_type_get (const Eolian_Expression *expr)
EAPI Eolian_Binary_Operator | eolian_expression_binary_operator_get (const Eolian_Expression *expr)
EAPI const Eolian_Expression * | eolian_expression_binary_lhs_get (const Eolian_Expression *expr)
EAPI const Eolian_Expression * | eolian_expression_binary_rhs_get (const Eolian_Expression *expr)
EAPI Eolian_Unary_Operator | eolian_expression_unary_operator_get (const Eolian_Expression *expr)
EAPI const Eolian_Expression * | eolian_expression_unary_expression_get (const Eolian_Expression *expr)
EAPI Eolian_Value | eolian_expression_value_get (const Eolian_Expression *expr)
EAPI const Eolian_Variable * | eolian_variable_global_get_by_name (const char *name)
EAPI const Eolian_Variable * | eolian_variable_constant_get_by_name (const char *name)
EAPI Eina_Iterator * | eolian_variable_globals_get_by_file (const char *fname)
EAPI Eina_Iterator * | eolian_variable_constants_get_by_file (const char *fname)
EAPI Eolian_Variable_Type | eolian_variable_type_get (const Eolian_Variable *var)
EAPI const Eolian_Documentation * | eolian_variable_documentation_get (const Eolian_Variable *var)
EAPI Eina_Stringshare * | eolian_variable_file_get (const Eolian_Variable *var)
EAPI const Eolian_Type * | eolian_variable_base_type_get (const Eolian_Variable *var)
EAPI const Eolian_Expression * | eolian_variable_value_get (const Eolian_Variable *var)
EAPI Eina_Stringshare * | eolian_variable_name_get (const Eolian_Variable *var)
EAPI Eina_Stringshare * | eolian_variable_full_name_get (const Eolian_Variable *var)
EAPI Eina_Iterator * | eolian_variable_namespaces_get (const Eolian_Variable *var)
EAPI Eina_Bool | eolian_variable_is_extern (const Eolian_Variable *var)
EAPI const Eolian_Declaration * | eolian_declaration_get_by_name (const char *name)
EAPI Eina_Iterator * | eolian_declarations_get_by_file (const char *fname)
EAPI Eolian_Declaration_Type | eolian_declaration_type_get (const Eolian_Declaration *decl)
EAPI Eina_Stringshare * | eolian_declaration_name_get (const Eolian_Declaration *decl)
EAPI const Eolian_Class * | eolian_declaration_class_get (const Eolian_Declaration *decl)
EAPI const Eolian_Type * | eolian_declaration_data_type_get (const Eolian_Declaration *decl)
EAPI const Eolian_Variable * | eolian_declaration_variable_get (const Eolian_Declaration *decl)
EAPI Eina_Stringshare * | eolian_documentation_summary_get (const Eolian_Documentation *doc)
EAPI Eina_Stringshare * | eolian_documentation_description_get (const Eolian_Documentation *doc)
EAPI Eina_Stringshare * | eolian_documentation_since_get (const Eolian_Documentation *doc)

## Detailed Description