forked from enlightenment/efl
elua: support is_c_only in lualian
This commit is contained in:
parent
d24220221a
commit
67c693eff1
|
@ -604,7 +604,7 @@ local gen_contents = function(klass)
|
|||
-- first try properties
|
||||
local props = klass:functions_get(ft.PROPERTY):to_array()
|
||||
for i, v in ipairs(props) do
|
||||
if v:scope_get() == eolian.object_scope.PUBLIC then
|
||||
if v:scope_get() == eolian.object_scope.PUBLIC and not v:is_c_only() then
|
||||
local ftype = v:type_get()
|
||||
local fread = (ftype == ft.PROPERTY or ftype == ft.PROP_GET)
|
||||
local fwrite = (ftype == ft.PROPERTY or ftype == ft.PROP_SET)
|
||||
|
@ -619,7 +619,7 @@ local gen_contents = function(klass)
|
|||
-- then methods
|
||||
local meths = klass:functions_get(ft.METHOD):to_array()
|
||||
for i, v in ipairs(meths) do
|
||||
if v:scope_get() == eolian.object_scope.PUBLIC then
|
||||
if v:scope_get() == eolian.object_scope.PUBLIC and not v:is_c_only() then
|
||||
cnt[#cnt + 1] = Method(v)
|
||||
end
|
||||
end
|
||||
|
|
|
@ -215,6 +215,7 @@ ffi.cdef [[
|
|||
Eina_Bool eolian_function_is_empty(const Eolian_Function *function_id, Eolian_Function_Type f_type);
|
||||
Eina_Bool eolian_function_is_legacy_only(const Eolian_Function *function_id, Eolian_Function_Type ftype);
|
||||
Eina_Bool eolian_function_is_class(const Eolian_Function *function_id);
|
||||
Eina_Bool eolian_function_is_c_only(const Eolian_Function *function_id);
|
||||
const Eolian_Function_Parameter *eolian_function_parameter_get_by_name(const Eolian_Function *function_id, const char *param_name);
|
||||
Eina_Iterator *eolian_property_keys_get(const Eolian_Function *foo_id);
|
||||
Eina_Iterator *eolian_property_values_get(const Eolian_Function *foo_id);
|
||||
|
@ -669,6 +670,10 @@ M.Function = ffi.metatype("Eolian_Function", {
|
|||
return eolian.eolian_function_is_class(self) ~= 0
|
||||
end,
|
||||
|
||||
is_c_only = function(self)
|
||||
return eolian.eolian_function_is_c_only(self) ~= 0
|
||||
end,
|
||||
|
||||
parameter_get_by_name = function(self, pname)
|
||||
local v = eolian.eolian_function_parameter_get_by_name(self, pname)
|
||||
if v == nil then return nil end
|
||||
|
|
Loading…
Reference in New Issue