forked from enlightenment/efl
docs: correctly wrap struct/enum fields in doctree
This commit is contained in:
parent
e65aae994e
commit
ef8a66a41d
|
@ -503,6 +503,48 @@ M.Event = Node:clone {
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
|
M.StructField = Node:clone {
|
||||||
|
__ctor = function(self, fl)
|
||||||
|
self.field = fl
|
||||||
|
assert(self.field)
|
||||||
|
end,
|
||||||
|
|
||||||
|
name_get = function(self)
|
||||||
|
return self.field:name_get()
|
||||||
|
end,
|
||||||
|
|
||||||
|
doc_get = function(self)
|
||||||
|
return M.Doc(self.field:documentation_get())
|
||||||
|
end,
|
||||||
|
|
||||||
|
type_get = function(self)
|
||||||
|
return self.field:type_get()
|
||||||
|
end
|
||||||
|
}
|
||||||
|
|
||||||
|
M.EnumField = Node:clone {
|
||||||
|
__ctor = function(self, fl)
|
||||||
|
self.field = fl
|
||||||
|
assert(self.field)
|
||||||
|
end,
|
||||||
|
|
||||||
|
name_get = function(self)
|
||||||
|
return self.field:name_get()
|
||||||
|
end,
|
||||||
|
|
||||||
|
c_name_get = function(self)
|
||||||
|
return self.field:c_name_get()
|
||||||
|
end,
|
||||||
|
|
||||||
|
doc_get = function(self)
|
||||||
|
return M.Doc(self.field:documentation_get())
|
||||||
|
end,
|
||||||
|
|
||||||
|
value_get = function(self, force)
|
||||||
|
return self.field:value_get(force)
|
||||||
|
end
|
||||||
|
}
|
||||||
|
|
||||||
M.Typedecl = Node:clone {
|
M.Typedecl = Node:clone {
|
||||||
UNKNOWN = eolian.typedecl_type.UNKNOWN,
|
UNKNOWN = eolian.typedecl_type.UNKNOWN,
|
||||||
STRUCT = eolian.typedecl_type.STRUCT,
|
STRUCT = eolian.typedecl_type.STRUCT,
|
||||||
|
@ -530,19 +572,35 @@ M.Typedecl = Node:clone {
|
||||||
end,
|
end,
|
||||||
|
|
||||||
struct_fields_get = function(self)
|
struct_fields_get = function(self)
|
||||||
return self.typedecl:struct_fields_get():to_array()
|
local ret = {}
|
||||||
|
for fl in self.typedecl:struct_fields_get() do
|
||||||
|
ret[#ret + 1] = M.StructField(fl)
|
||||||
|
end
|
||||||
|
return ret
|
||||||
end,
|
end,
|
||||||
|
|
||||||
struct_field_get = function(self, name)
|
struct_field_get = function(self, name)
|
||||||
return self.typedecl:struct_field_get(name)
|
local v = self.typedecl:struct_field_get(name)
|
||||||
|
if not v then
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
return M.StructField(v)
|
||||||
end,
|
end,
|
||||||
|
|
||||||
enum_fields_get = function(self)
|
enum_fields_get = function(self)
|
||||||
return self.typedecl:enum_fields_get():to_array()
|
local ret = {}
|
||||||
|
for fl in self.typedecl:enum_fields_get() do
|
||||||
|
ret[#ret + 1] = M.EnumField(fl)
|
||||||
|
end
|
||||||
|
return ret
|
||||||
end,
|
end,
|
||||||
|
|
||||||
enum_field_get = function(self, name)
|
enum_field_get = function(self, name)
|
||||||
return self.typedecl:enum_field_get(name)
|
local v = self.typedecl:enum_field_get(name)
|
||||||
|
if not v then
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
return M.EnumField(v)
|
||||||
end,
|
end,
|
||||||
|
|
||||||
enum_legacy_prefix_get = function(self)
|
enum_legacy_prefix_get = function(self)
|
||||||
|
|
|
@ -221,7 +221,7 @@ M.check_struct = function(v)
|
||||||
stat_incr("struct", false)
|
stat_incr("struct", false)
|
||||||
end
|
end
|
||||||
for i, fl in ipairs(v:struct_fields_get()) do
|
for i, fl in ipairs(v:struct_fields_get()) do
|
||||||
if not fl:documentation_get() then
|
if not fl:doc_get():exists() then
|
||||||
print_missing(v:full_name_get() .. "." .. fl:name_get(), "struct field")
|
print_missing(v:full_name_get() .. "." .. fl:name_get(), "struct field")
|
||||||
stat_incr("sfield", true)
|
stat_incr("sfield", true)
|
||||||
else
|
else
|
||||||
|
@ -238,7 +238,7 @@ M.check_enum = function(v)
|
||||||
stat_incr("enum", false)
|
stat_incr("enum", false)
|
||||||
end
|
end
|
||||||
for i, fl in ipairs(v:enum_fields_get()) do
|
for i, fl in ipairs(v:enum_fields_get()) do
|
||||||
if not fl:documentation_get() then
|
if not fl:doc_get():exists() then
|
||||||
print_missing(v:full_name_get() .. "." .. fl:name_get(), "enum field")
|
print_missing(v:full_name_get() .. "." .. fl:name_get(), "enum field")
|
||||||
stat_incr("efield", true)
|
stat_incr("efield", true)
|
||||||
else
|
else
|
||||||
|
|
|
@ -9,8 +9,6 @@ local keyref = require("docgen.keyref")
|
||||||
local ser = require("docgen.serializers")
|
local ser = require("docgen.serializers")
|
||||||
local dtree = require("docgen.doctree")
|
local dtree = require("docgen.doctree")
|
||||||
|
|
||||||
-- eolian to various doc elements conversions
|
|
||||||
|
|
||||||
local propt_to_type = {
|
local propt_to_type = {
|
||||||
[dtree.Function.PROPERTY] = "(get, set)",
|
[dtree.Function.PROPERTY] = "(get, set)",
|
||||||
[dtree.Function.PROP_GET] = "(get)",
|
[dtree.Function.PROP_GET] = "(get)",
|
||||||
|
@ -786,7 +784,7 @@ local build_struct = function(tp)
|
||||||
for i, fl in ipairs(tp:struct_fields_get()) do
|
for i, fl in ipairs(tp:struct_fields_get()) do
|
||||||
local buf = writer.Buffer()
|
local buf = writer.Buffer()
|
||||||
buf:write_b(fl:name_get())
|
buf:write_b(fl:name_get())
|
||||||
buf:write_raw(" - ", dtree.Doc(fl:documentation_get()):full_get())
|
buf:write_raw(" - ", fl:doc_get():full_get())
|
||||||
arr[#arr + 1] = buf:finish()
|
arr[#arr + 1] = buf:finish()
|
||||||
end
|
end
|
||||||
f:write_list(arr)
|
f:write_list(arr)
|
||||||
|
@ -811,7 +809,7 @@ local build_enum = function(tp)
|
||||||
for i, fl in ipairs(tp:enum_fields_get()) do
|
for i, fl in ipairs(tp:enum_fields_get()) do
|
||||||
local buf = writer.Buffer()
|
local buf = writer.Buffer()
|
||||||
buf:write_b(fl:name_get())
|
buf:write_b(fl:name_get())
|
||||||
buf:write_raw(" - ", dtree.Doc(fl:documentation_get()):full_get())
|
buf:write_raw(" - ", fl:doc_get():full_get())
|
||||||
arr[#arr + 1] = buf:finish()
|
arr[#arr + 1] = buf:finish()
|
||||||
end
|
end
|
||||||
f:write_list(arr)
|
f:write_list(arr)
|
||||||
|
|
Loading…
Reference in New Issue