forked from enlightenment/efl
elua: update eolian bindings and add Ptr_Iterator and String_Iterator common objects to eina iterator module
This commit is contained in:
parent
4f45be13cf
commit
c548981046
|
@ -99,4 +99,27 @@ M.Iterator = util.Readonly_Object:clone {
|
|||
end
|
||||
}
|
||||
|
||||
local Iterator = M.Iterator
|
||||
|
||||
M.Ptr_Iterator = Iterator:clone {
|
||||
__ctor = function(self, selfmt, ptrtype, iter)
|
||||
Iterator.__ctor(self, selfmt, iter)
|
||||
selfmt.ptrtype = ptrtype
|
||||
end,
|
||||
|
||||
next = function(self)
|
||||
local v = Iterator.next(self)
|
||||
if not v then return nil end
|
||||
return ffi.cast(dgetmt(self).ptrtype, v)
|
||||
end
|
||||
}
|
||||
|
||||
M.String_Iterator = Iterator:clone {
|
||||
next = function(self)
|
||||
local v = Iterator.next(self)
|
||||
if not v then return nil end
|
||||
return ffi.string(v)
|
||||
end
|
||||
}
|
||||
|
||||
return M
|
||||
|
|
|
@ -285,6 +285,7 @@ M.Ptr_List = List_Base:clone {
|
|||
|
||||
data_get = function(self, ptr)
|
||||
ptr = List_Base.data_get(self, ptr)
|
||||
if not ptr then return nil end
|
||||
return ffi.cast(dgetmt(self).ptrtype, ptr)
|
||||
end
|
||||
}
|
||||
|
|
|
@ -16,98 +16,127 @@ ffi.cdef [[
|
|||
|
||||
typedef enum
|
||||
{
|
||||
EOLIAN_UNRESOLVED,
|
||||
EOLIAN_PROPERTY,
|
||||
EOLIAN_PROP_SET,
|
||||
EOLIAN_PROP_GET,
|
||||
EOLIAN_METHOD,
|
||||
EOLIAN_CTOR
|
||||
EOLIAN_UNRESOLVED,
|
||||
EOLIAN_PROPERTY,
|
||||
EOLIAN_PROP_SET,
|
||||
EOLIAN_PROP_GET,
|
||||
EOLIAN_METHOD,
|
||||
EOLIAN_CTOR
|
||||
} Eolian_Function_Type;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
EOLIAN_IN_PARAM,
|
||||
EOLIAN_OUT_PARAM,
|
||||
EOLIAN_INOUT_PARAM
|
||||
EOLIAN_IN_PARAM,
|
||||
EOLIAN_OUT_PARAM,
|
||||
EOLIAN_INOUT_PARAM
|
||||
} Eolian_Parameter_Dir;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
EOLIAN_CLASS_UNKNOWN_TYPE,
|
||||
EOLIAN_CLASS_REGULAR,
|
||||
EOLIAN_CLASS_ABSTRACT,
|
||||
EOLIAN_CLASS_MIXIN,
|
||||
EOLIAN_CLASS_INTERFACE
|
||||
EOLIAN_CLASS_REGULAR,
|
||||
EOLIAN_CLASS_ABSTRACT,
|
||||
EOLIAN_CLASS_MIXIN,
|
||||
EOLIAN_CLASS_INTERFACE
|
||||
} Eolian_Class_Type;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
EOLIAN_SCOPE_PUBLIC,
|
||||
EOLIAN_SCOPE_PROTECTED
|
||||
EOLIAN_SCOPE_PUBLIC,
|
||||
EOLIAN_SCOPE_PROTECTED
|
||||
} Eolian_Function_Scope;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
EOLIAN_TYPE_UNKNOWN_TYPE,
|
||||
EOLIAN_TYPE_VOID,
|
||||
EOLIAN_TYPE_REGULAR,
|
||||
EOLIAN_TYPE_REGULAR_STRUCT,
|
||||
EOLIAN_TYPE_POINTER,
|
||||
EOLIAN_TYPE_FUNCTION,
|
||||
EOLIAN_TYPE_STRUCT
|
||||
} Eolian_Type_Type;
|
||||
|
||||
Eina_Bool eolian_eo_file_parse(const char *filename);
|
||||
Eina_Bool eolian_eot_file_parse(const char *filepath);
|
||||
int eolian_init(void);
|
||||
int eolian_shutdown(void);
|
||||
Eina_Bool eolian_directory_scan(const char *dir);
|
||||
Eina_Bool eolian_system_directory_scan();
|
||||
Eina_Bool eolian_all_eo_files_parse();
|
||||
Eina_Bool eolian_all_eot_files_parse();
|
||||
Eina_Bool eolian_show(const Eolian_Class *klass);
|
||||
Eolian_Class *eolian_class_find_by_name(const char *class_name);
|
||||
Eolian_Class *eolian_class_find_by_file(const char *file_name);
|
||||
Eina_Bool eolian_show_class(const Eolian_Class *klass);
|
||||
Eina_Bool eolian_show_typedef(const char *alias);
|
||||
Eina_Bool eolian_show_struct(const char *name);
|
||||
void eolian_show_all();
|
||||
const Eolian_Class *eolian_class_find_by_name(const char *class_name);
|
||||
const Eolian_Class *eolian_class_find_by_file(const char *file_name);
|
||||
const char *eolian_class_file_get(const Eolian_Class *klass);
|
||||
const char *eolian_class_full_name_get(const Eolian_Class *klass);
|
||||
const char *eolian_class_name_get(const Eolian_Class *klass);
|
||||
const Eina_List *eolian_class_namespaces_list_get(const Eolian_Class *klass);
|
||||
Eolian_Class_Type eolian_class_type_get(const Eolian_Class *klass);
|
||||
const Eina_List *eolian_class_names_list_get(void);
|
||||
const Eina_List *eolian_all_classes_list_get(void);
|
||||
const char *eolian_class_description_get(const Eolian_Class *klass);
|
||||
const char *eolian_class_legacy_prefix_get(const Eolian_Class *klass);
|
||||
const char *eolian_class_eo_prefix_get(const Eolian_Class *klass);
|
||||
const char *eolian_class_data_type_get(const Eolian_Class *klass);
|
||||
const Eina_List *eolian_class_inherits_list_get(const Eolian_Class *klass);
|
||||
const Eina_List *eolian_class_functions_list_get(const Eolian_Class *klass, Eolian_Function_Type func_type);
|
||||
Eolian_Function_Type eolian_function_type_get(Eolian_Function *function_id);
|
||||
Eolian_Function_Scope eolian_function_scope_get(Eolian_Function *function_id);
|
||||
const char *eolian_function_name_get(Eolian_Function *function_id);
|
||||
const char *eolian_function_full_c_name_get(Eolian_Function function_id, const char *prefix);
|
||||
Eolian_Function *eolian_class_function_find_by_name(const Eolian_Class *klass, const char *func_name, Eolian_Function_Type f_type);
|
||||
const char *eolian_function_data_get(Eolian_Function *function_id, const char *key);
|
||||
Eina_Bool eolian_function_is_virtual_pure(Eolian_Function *function_id, Eolian_Function_Type f_type);
|
||||
Eolian_Function_Parameter *eolian_function_parameter_get(const Eolian_Function *function_id, const char *param_name);
|
||||
const Eina_List *eolian_property_keys_list_get(Eolian_Function *foo_id);
|
||||
const Eina_List *eolian_property_values_list_get(Eolian_Function *foo_id);
|
||||
const Eina_List *eolian_parameters_list_get(Eolian_Function *function_id);
|
||||
void eolian_parameter_information_get(const Eolian_Function_Parameter *param_desc, Eolian_Parameter_Dir *param_dir, const char **type, const char **name, const char **description);
|
||||
Eolian_Type *eolian_type_information_get(Eolian_Type *etype, const char **type, Eina_Bool *own);
|
||||
const char *eolian_parameter_type_get(const Eolian_Function_Parameter *param);
|
||||
Eolian_Type *eolian_parameter_types_list_get(const Eolian_Function_Parameter *param);
|
||||
Eolian_Function_Type eolian_function_type_get(const Eolian_Function *function_id);
|
||||
Eolian_Function_Scope eolian_function_scope_get(const Eolian_Function *function_id);
|
||||
const char *eolian_function_name_get(const Eolian_Function *function_id);
|
||||
const char *eolian_function_full_c_name_get(const Eolian_Function function_id, const char *prefix);
|
||||
const Eolian_Function *eolian_class_function_find_by_name(const Eolian_Class *klass, const char *func_name, Eolian_Function_Type f_type);
|
||||
const char *eolian_function_data_get(const Eolian_Function *function_id, const char *key);
|
||||
Eina_Bool eolian_function_is_virtual_pure(const Eolian_Function *function_id, Eolian_Function_Type f_type);
|
||||
const Eolian_Function_Parameter *eolian_function_parameter_get(const Eolian_Function *function_id, const char *param_name);
|
||||
const Eina_List *eolian_property_keys_list_get(const Eolian_Function *foo_id);
|
||||
const Eina_List *eolian_property_values_list_get(const Eolian_Function *foo_id);
|
||||
const Eina_List *eolian_parameters_list_get(const Eolian_Function *function_id);
|
||||
void eolian_parameter_information_get(const Eolian_Function_Parameter *param_desc, Eolian_Parameter_Dir *param_dir, const Eolian_Type **type, const char **name, const char **description);
|
||||
const Eolian_Type *eolian_parameter_type_get(const Eolian_Function_Parameter *param);
|
||||
const char *eolian_parameter_name_get(const Eolian_Function_Parameter *param);
|
||||
Eina_Bool eolian_parameter_const_attribute_get(Eolian_Function_Parameter *param_desc, Eina_Bool is_get);
|
||||
Eina_Bool eolian_parameter_is_nonull(Eolian_Function_Parameter *param_desc);
|
||||
const char *eolian_function_return_type_get(Eolian_Function *function_id, Eolian_Function_Type ftype);
|
||||
Eolian_Type *eolian_function_return_types_list_get(Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
const char *eolian_function_return_dflt_value_get(Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
const char *eolian_function_return_comment_get(Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
Eina_Bool eolian_function_return_is_warn_unused(Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
Eina_Bool eolian_function_object_is_const(Eolian_Function *function_id);
|
||||
Eina_Bool eolian_parameter_const_attribute_get(const Eolian_Function_Parameter *param_desc, Eina_Bool is_get);
|
||||
Eina_Bool eolian_parameter_is_nonull(const Eolian_Function_Parameter *param_desc);
|
||||
const Eolian_Type *eolian_function_return_type_get(const Eolian_Function *function_id, Eolian_Function_Type ftype);
|
||||
const char *eolian_function_return_default_value_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
const char *eolian_function_return_comment_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
Eina_Bool eolian_function_return_is_warn_unused(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
|
||||
Eina_Bool eolian_function_object_is_const(const Eolian_Function *function_id);
|
||||
const char *eolian_implement_full_name_get(const Eolian_Implement *impl);
|
||||
Eina_Bool eolian_implement_information_get(const Eolian_Implement *impl, Eolian_Class *klass, Eolian_Function *function, Eolian_Function_Type *type);
|
||||
Eina_Bool eolian_implement_information_get(const Eolian_Implement *impl, const Eolian_Class *klass, const Eolian_Function *function, Eolian_Function_Type *type);
|
||||
const Eina_List *eolian_class_implements_list_get(const Eolian_Class *klass);
|
||||
const Eina_List *eolian_class_events_list_get(const Eolian_Class *klass);
|
||||
Eina_Bool eolian_class_event_information_get(Eolian_Event *event, const char **event_name, const char **event_type, const char **event_desc);
|
||||
Eina_Bool eolian_class_event_information_get(const Eolian_Event *event, const char **event_name, const Eolian_Type **event_type, const char **event_desc);
|
||||
Eina_Bool eolian_class_ctor_enable_get(const Eolian_Class *klass);
|
||||
Eina_Bool eolian_class_dtor_enable_get(const Eolian_Class *klass);
|
||||
Eolian_Type *eolian_type_find_by_alias(const char *alias);
|
||||
const Eolian_Type *eolian_type_find_by_alias(const char *alias);
|
||||
const Eolian_Type *eolian_type_struct_find_by_name(const char *name);
|
||||
Eolian_Type_Type eolian_type_type_get(const Eolian_Type *tp);
|
||||
Eina_Iterator *eolian_type_arguments_list_get(const Eolian_Type *tp);
|
||||
Eina_Iterator *eolian_type_subtypes_list_get(const Eolian_Type *tp);
|
||||
Eina_Iterator *eolian_type_struct_field_names_list_get(const Eolian_Type *tp);
|
||||
const Eolian_Type *eolian_type_struct_field_get(const Eolian_Type *tp, const char *field);
|
||||
Eina_Stringshare *eolian_type_struct_field_description_get(const Eolian_Type *tp, const char *field);
|
||||
Eina_Stringshare *eolian_type_struct_description_get(const Eolian_Type *tp);
|
||||
const Eolian_Type *eolian_type_return_type_get(const Eolian_Type *tp);
|
||||
const Eolian_Type *eolian_type_base_type_get(const Eolian_Type *tp);
|
||||
Eina_Bool eolian_type_is_own(const Eolian_Type *tp);
|
||||
Eina_Bool eolian_type_is_const(const Eolian_Type *tp);
|
||||
Eina_Stringshare *eolian_type_c_type_named_get(const Eolian_Type *tp, const char *name);
|
||||
Eina_Stringshare *eolian_type_c_type_get(const Eolian_Type *tp);
|
||||
Eina_Stringshare *eolian_type_name_get(const Eolian_Type *tp);
|
||||
]]
|
||||
|
||||
local cutil = require("cutil")
|
||||
local util = require("util")
|
||||
|
||||
local list = require("eina.list")
|
||||
local iterator = require("eina.iterator")
|
||||
|
||||
local Ptr_List = list.Ptr_List
|
||||
local Ptr_Iterator = iterator.Ptr_Iterator
|
||||
|
||||
local M = {}
|
||||
|
||||
|
@ -129,6 +158,9 @@ M.directory_scan = function(dir)
|
|||
return eolian.eolian_directory_scan(dir) ~= 0
|
||||
end
|
||||
|
||||
M.system_directory_scan = function()
|
||||
return eolian.eolian_system_directory_scan() ~= 0
|
||||
|
||||
M.all_eo_files_parse = function()
|
||||
return eolian.eolian_all_eo_files_parse() ~= 0
|
||||
end
|
||||
|
@ -145,18 +177,97 @@ M.eot_file_parse = function(fname)
|
|||
return eolian.eolian_eot_file_parse(fname) ~= 0
|
||||
end
|
||||
|
||||
M.show = function(klass)
|
||||
return eolian.eolian_show(klass) ~= 0
|
||||
M.show_class = function(klass)
|
||||
return eolian.eolian_show_class(klass) ~= 0
|
||||
end
|
||||
|
||||
M.show_typedef = function(alias)
|
||||
return eolian.eolian_show_typedef(alias) ~= 0
|
||||
end
|
||||
|
||||
M.show_struct = function(name)
|
||||
return eolian.eolian_show_typedef(name) ~= 0
|
||||
end
|
||||
|
||||
M.show_all = function()
|
||||
eolian.eolian_show_all()
|
||||
end
|
||||
|
||||
M.Type = ffi.metatype("Eolian_Type", {
|
||||
__index = {
|
||||
information_get = function(self)
|
||||
local tp = ffi.new("const char*[1]")
|
||||
local on = ffi.new("Eina_Bool[1]")
|
||||
local nx = eolian.eolian_type_information_get(self, tp, on)
|
||||
if nx == nil then nx = nil end
|
||||
return nx, (tp[0] ~= nil) and ffi.string(tp[0]) or nil, on[0] ~= 0
|
||||
type_get = function(self)
|
||||
return eolian.eolian_type_type_get(self)
|
||||
end,
|
||||
|
||||
arguments_list_get = function(self)
|
||||
return Ptr_Iterator("const Eolian_Type*",
|
||||
eolian.eolian_type_arguments_list_get(self))
|
||||
end,
|
||||
|
||||
subtypes_list_get = function(self)
|
||||
return Ptr_Iterator("const Eolian_Type*",
|
||||
eolian.eolian_type_subtypes_list_get(self))
|
||||
end,
|
||||
|
||||
struct_field_names_list_get = function(self)
|
||||
return iterator.String_Iterator(
|
||||
eolian.eolian_type_struct_field_names_list_get(self))
|
||||
end,
|
||||
|
||||
struct_field_get = function(self, name)
|
||||
local v = eolian.eolian_type_struct_field_get(self, name)
|
||||
if v == nil then return nil end
|
||||
return v
|
||||
end,
|
||||
|
||||
struct_field_description_get = function(self, name)
|
||||
local v = eolian.eolian_type_struct_field_description_get(self, name)
|
||||
if v == nil then return nil end
|
||||
return ffi.string(v)
|
||||
end,
|
||||
|
||||
struct_description_get = function(self, name)
|
||||
local v = eolian.eolian_type_struct_description_get(self)
|
||||
if v == nil then return nil end
|
||||
return ffi.string(v)
|
||||
end,
|
||||
|
||||
return_type_get = function(self)
|
||||
local v = eolian.eolian_type_return_type_get(self)
|
||||
if v == nil then return nil end
|
||||
return v
|
||||
end,
|
||||
|
||||
base_type_get = function(self)
|
||||
local v = eolian.eolian_type_base_type_get(self)
|
||||
if v == nil then return nil end
|
||||
return v
|
||||
end,
|
||||
|
||||
is_own = function(self)
|
||||
return eolian.eolian_type_is_own(self) ~= 0
|
||||
end,
|
||||
|
||||
is_const = function(self)
|
||||
return eolian.eolian_type_is_const(self) ~= 0
|
||||
end,
|
||||
|
||||
c_type_named_get = function(self, name)
|
||||
local v = eolian.eolian_type_c_type_named_get(self, name)
|
||||
if v == nil then return v end
|
||||
return ffi.string(v)
|
||||
end,
|
||||
|
||||
c_type_get = function(self)
|
||||
local v = eolian.eolian_type_c_type_get(self)
|
||||
if v == nil then return v end
|
||||
return ffi.string(v)
|
||||
end,
|
||||
|
||||
name_get = function(self)
|
||||
local v = eolian.eolian_type_name_get(self)
|
||||
if v == nil then return v end
|
||||
return ffi.string(v)
|
||||
end
|
||||
}
|
||||
})
|
||||
|
@ -218,34 +329,28 @@ M.Function = ffi.metatype("Eolian_Function", {
|
|||
end,
|
||||
|
||||
property_keys_list_get = function(self)
|
||||
return Ptr_List("Eolian_Function_Parameter*",
|
||||
return Ptr_List("const Eolian_Function_Parameter*",
|
||||
eolian.eolian_property_keys_list_get(self)):to_array()
|
||||
end,
|
||||
|
||||
property_values_list_get = function(self)
|
||||
return Ptr_List("Eolian_Function_Parameter*",
|
||||
return Ptr_List("const Eolian_Function_Parameter*",
|
||||
eolian.eolian_property_values_list_get(self)):to_array()
|
||||
end,
|
||||
|
||||
parameters_list_get = function(self)
|
||||
return Ptr_List("Eolian_Function_Parameter*",
|
||||
return Ptr_List("const Eolian_Function_Parameter*",
|
||||
eolian.eolian_parameters_list_get(self)):to_array()
|
||||
end,
|
||||
|
||||
return_type_get = function(self, ftype)
|
||||
local v = eolian.eolian_function_return_type_get(self, ftype)
|
||||
if v == nil then return nil end
|
||||
return ffi.string(v)
|
||||
end,
|
||||
|
||||
return_types_list_get = function(self, ftype)
|
||||
local v = eolian.eolian_function_return_types_list_get(self, ftype)
|
||||
if v == nil then return nil end
|
||||
return v
|
||||
end,
|
||||
|
||||
return_dflt_value_get = function(self, ftype)
|
||||
local v = eolian.eolian_function_return_dflt_value_get(self, ftype)
|
||||
return_default_value_get = function(self, ftype)
|
||||
local v = eolian.eolian_function_return_default_value_get(self, ftype)
|
||||
if v == nil then return nil end
|
||||
return ffi.string(v)
|
||||
end,
|
||||
|
@ -277,11 +382,11 @@ ffi.metatype("Eolian_Function_Parameter", {
|
|||
__index = {
|
||||
information_get = function(self)
|
||||
local dir = ffi.new("Eolian_Parameter_Dir[1]")
|
||||
local str = ffi.new("const char*[3]")
|
||||
eolian.eolian_parameter_information_get(self, dir, str, str + 1,
|
||||
str + 2)
|
||||
local tp, nm, dsc = str[0], str[1], str[2]
|
||||
tp, nm, dsc = (tp ~= nil) and ffi.string(tp ) or nil,
|
||||
local str = ffi.new("const char*[2]")
|
||||
local tp = ffi.new("const Eolian_Type*[1]")
|
||||
eolian.eolian_parameter_information_get(self, dir, tp, str, str + 1)
|
||||
local tp, nm, dsc = tp[0], str[0], str[1]
|
||||
tp, nm, dsc = (tp ~= nil) and tp or nil,
|
||||
(nm ~= nil) and ffi.string(nm ) or nil,
|
||||
(dsc ~= nil) and ffi.string(dsc) or nil
|
||||
return dir[0], tp, nm, dsc
|
||||
|
@ -290,12 +395,6 @@ ffi.metatype("Eolian_Function_Parameter", {
|
|||
type_get = function(self)
|
||||
local v = eolian.eolian_parameter_type_get(self)
|
||||
if v == nil then return nil end
|
||||
return ffi.string(v)
|
||||
end,
|
||||
|
||||
types_list_get = function(self)
|
||||
local v = eolian.eolian_parameter_types_list_get(self)
|
||||
if v == nil then return nil end
|
||||
return v
|
||||
end,
|
||||
|
||||
|
@ -336,11 +435,12 @@ ffi.metatype("Eolian_Implement", {
|
|||
ffi.metatype("Eolian_Event", {
|
||||
__index = {
|
||||
information_get = function(self)
|
||||
local ev = ffi.new("const char*[3]")
|
||||
eolian.eolian_class_event_information_get(self, ev, ev + 1, ev + 2)
|
||||
local en, et, ed = ev[0], ev[1], ev[2]
|
||||
local ev = ffi.new("const char*[2]")
|
||||
local tp = ffi.new("const Eolian_Type*[1]");
|
||||
eolian.eolian_class_event_information_get(self, ev, tp, ev + 1)
|
||||
local en, et, ed = ev[0], tp[0], ev[1]
|
||||
en, et, ed = (en ~= nil) and ffi.string(en) or nil,
|
||||
(et ~= nil) and ffi.string(et) or nil,
|
||||
(et ~= nil) and et or nil,
|
||||
(ed ~= nil) and ffi.string(ed) or nil
|
||||
return en, et, ed
|
||||
end
|
||||
|
@ -359,8 +459,9 @@ M.class_find_by_file = function(fname)
|
|||
return v
|
||||
end
|
||||
|
||||
M.class_names_list_get = function()
|
||||
return list.String_List(eolian.eolian_class_names_list_get()):to_array()
|
||||
M.all_classes_list_get = function()
|
||||
return Ptr_List("const Eolian_Class*",
|
||||
eolian.eolain_all_classes_list_get()):to_array()
|
||||
end
|
||||
|
||||
M.class_type = {
|
||||
|
@ -434,7 +535,7 @@ M.Class = ffi.metatype("Eolian_Class", {
|
|||
end,
|
||||
|
||||
functions_list_get = function(self, func_type)
|
||||
return Ptr_List("Eolian_Function*",
|
||||
return Ptr_List("const Eolian_Function*",
|
||||
eolian.eolian_class_functions_list_get(self, func_type))
|
||||
:to_array()
|
||||
end,
|
||||
|
@ -447,12 +548,12 @@ M.Class = ffi.metatype("Eolian_Class", {
|
|||
end,
|
||||
|
||||
implements_list_get = function(self)
|
||||
return Ptr_List("Eolian_Implement*",
|
||||
return Ptr_List("const Eolian_Implement*",
|
||||
eolian.eolian_class_implements_list_get(self)):to_array()
|
||||
end,
|
||||
|
||||
events_list_get = function(self)
|
||||
return Ptr_List("Eolian_Event*",
|
||||
return Ptr_List("const Eolian_Event*",
|
||||
eolian.eolian_class_events_list_get(self)):to_array()
|
||||
end,
|
||||
|
||||
|
@ -467,7 +568,15 @@ M.Class = ffi.metatype("Eolian_Class", {
|
|||
})
|
||||
|
||||
M.type_find_by_alias = function(alias)
|
||||
return eolian.eolian_type_find_by_alias(alias)
|
||||
local v = eolian.eolian_type_find_by_alias(alias)
|
||||
if v == nil then return nil end
|
||||
return v
|
||||
end
|
||||
|
||||
M.type_struct_find_by_name = function(name)
|
||||
local v = eolian.eolian_type_struct_find_by_name(name)
|
||||
if v == nil then return nil end
|
||||
return v
|
||||
end
|
||||
|
||||
return M
|
||||
|
|
Loading…
Reference in New Issue