if ret then
return ret
end
- -- FIXME: unit
local v = eolian.class_get_by_name(eos:unit_get(), name)
if not v then
return nil
if ret then
return ret
end
- -- FIXME: unit
local v = eolian.class_get_by_file(eos:unit_get(), name)
if not v then
return nil
all_get = function()
local ret, had = get_cache(M.Class, "_cache_all")
if not had then
- -- FIXME: unit
for cl in eolian.all_classes_get(eos:unit_get()) do
ret[#ret + 1] = M.Class(cl)
end
end,
class_get = function(self)
- -- FIXME: unit
return self.type:class_get(eos:unit_get())
end,
end,
c_type_get = function(self)
- -- FIXME: unit
return self.typedecl:c_type_get(eos:unit_get())
end,
all_aliases_get = function()
local ret = {}
- -- FIXME: unit
for tp in eolian.typedecl_all_aliases_get(eos:unit_get()) do
ret[#ret + 1] = M.Typedecl(tp)
end
all_structs_get = function()
local ret = {}
- -- FIXME: unit
for tp in eolian.typedecl_all_structs_get(eos:unit_get()) do
ret[#ret + 1] = M.Typedecl(tp)
end
all_enums_get = function()
local ret = {}
- -- FIXME: unit
for tp in eolian.typedecl_all_enums_get(eos:unit_get()) do
ret[#ret + 1] = M.Typedecl(tp)
end
aliases_by_file_get = function(fn)
local ret = {}
- -- FIXME: unit
for tp in eolian.typedecl_aliases_get_by_file(eos:unit_get(), fn) do
ret[#ret + 1] = M.Typedecl(tp)
end
structs_by_file_get = function(fn)
local ret = {}
- -- FIXME: unit
for tp in eolian.typedecl_structs_get_by_file(eos:unit_get(), fn) do
ret[#ret + 1] = M.Typedecl(tp)
end
enums_by_file_get = function(fn)
local ret = {}
- -- FIXME: unit
for tp in eolian.typedecl_enums_get_by_file(eos:unit_get(), fn) do
ret[#ret + 1] = M.Typedecl(tp)
end
end,
alias_by_name_get = function(tn)
- -- FIXME: unit
local v = eolian.typedecl_alias_get_by_name(eos:unit_get(), tn)
if not v then
return nil
end,
struct_by_name_get = function(tn)
- -- FIXME: unit
local v = eolian.typedecl_struct_get_by_name(eos:unit_get(), tn)
if not v then
return nil
end,
enum_by_name_get = function(tn)
- -- FIXME: unit
local v = eolian.typedecl_enum_get_by_name(eos:unit_get(), tn)
if not v then
return nil
all_globals_get = function()
local ret = {}
- -- FIXME: unit
for v in eolian.variable_all_globals_get(eos:unit_get()) do
ret[#ret + 1] = M.Variable(v)
end
all_constants_get = function()
local ret = {}
- -- FIXME: unit
for v in eolian.variable_all_constants_get(eos:unit_get()) do
ret[#ret + 1] = M.Variable(v)
end
globals_by_file_get = function(fn)
local ret = {}
- -- FIXME: unit
for v in eolian.variable_globals_get_by_file(eos:unit_get(), fn) do
ret[#ret + 1] = M.Variable(v)
end
constants_by_file_get = function(fn)
local ret = {}
- -- FIXME: unit
for v in eolian.variable_constants_get_by_file(eos:unit_get(), fn) do
ret[#ret + 1] = M.Variable(v)
end
end,
global_by_name_get = function(vn)
- -- FIXME: unit
local v = eolian.variable_global_get_by_name(eos:unit_get(), vn)
if not v then
return nil
end,
constant_by_name_get = function(vn)
- -- FIXME: unit
local v = eolian.variable_constant_get_by_name(eos:unit_get(), vn)
if not v then
return nil
end,
eval_enum = function(self)
- -- FIXME: unit
return self.expr:eval(eos:unit_get(), eolian.expression_mask.INT)
end,
eval_type = function(self, tp)
- -- FIXME: unit
return self.expr:eval_type(eos:unit_get(), tp.type)
end,
end,
ref_get = function(self, root)
- -- FIXME: unit
local tp, d1, d2 = self.tok:ref_get(eos:unit_get())
local reft = eolian.doc_ref_type
local ret
error("failed parsing eo files")
end
end
- -- build reverse inheritance hierarchy, FIXME: unit
+ -- build reverse inheritance hierarchy
for cl in eolian.all_classes_get(eos:unit_get()) do
local cln = cl:full_name_get()
for icl in cl:inherits_get() do