summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Kolesa <d.kolesa@osg.samsung.com>2017-01-20 15:09:11 +0100
committerDaniel Kolesa <d.kolesa@osg.samsung.com>2017-01-20 15:10:23 +0100
commitab7b6815e0f069ca2c44213618dae139684fc1e5 (patch)
treeff201f5b4d1602914ae2efac339473a05f63a0c8
parent47cebbc1f1ec41eab6d996f4d33e2535c505fce1 (diff)
downloadefl-ab7b6815e0f069ca2c44213618dae139684fc1e5.tar.gz
docs: add implement to doctree
-rw-r--r--src/scripts/elua/apps/docgen/doctree.lua58
1 files changed, 57 insertions, 1 deletions
diff --git a/src/scripts/elua/apps/docgen/doctree.lua b/src/scripts/elua/apps/docgen/doctree.lua
index 7ef3e8bb87..80d23b9206 100644
--- a/src/scripts/elua/apps/docgen/doctree.lua
+++ b/src/scripts/elua/apps/docgen/doctree.lua
@@ -227,6 +227,14 @@ M.Class = Node:clone {
return ret
end,
+ implements_get = function(self)
+ local ret = {}
+ for impl in self.class:implements_get() do
+ ret[#ret + 1] = M.Implement(ret)
+ end
+ return ret
+ end,
+
c_get_function_name_get = function(self)
return self.class:c_get_function_name_get()
end,
@@ -309,6 +317,10 @@ M.Function = Node:clone {
return M.Doc(self.func:implement_get():documentation_get(ft))
end,
+ implement_get = function(self)
+ return M.Implement(self.func:implement_get())
+ end,
+
fallback_doc_get = function(self, ft)
if not ft then
local fft = self:type_get()
@@ -410,7 +422,7 @@ M.Function = Node:clone {
}
M.Parameter = Node:clone {
- UNKNOWN = eolian.param_dir.UNKNOWN,
+ UNKNOWN = eolian.parameter_dir.UNKNOWN,
IN = eolian.parameter_dir.IN,
OUT = eolian.parameter_dir.OUT,
INOUT = eolian.parameter_dir.INOUT,
@@ -1273,6 +1285,50 @@ M.Expression = Node:clone {
end
}
+M.Implement = Node:clone {
+ __ctor = function(self, impl)
+ self.impl = impl
+ assert(self.impl)
+ end,
+
+ full_name_get = function(self)
+ return self.impl:full_name_get()
+ end,
+
+ class_get = function(self)
+ return M.Class(self.impl:class_get())
+ end,
+
+ function_get = function(self)
+ local func, tp = self.impl:function_get()
+ return M.Function(func), tp
+ end,
+
+ doc_get = function(self, ftype)
+ return M.Doc(self.impl:documentation_get(ftype))
+ end,
+
+ is_auto = function(self, ftype)
+ return self.impl:is_auto(ftype)
+ end,
+
+ is_empty = function(self, ftype)
+ return self.impl:is_empty(ftype)
+ end,
+
+ is_pure_virtual = function(self, ftype)
+ return self.impl:is_pure_virtual(ftype)
+ end,
+
+ is_prop_get = function(self)
+ return self.impl:is_prop_get()
+ end,
+
+ is_prop_set = function(self)
+ return self.impl:is_prop_set()
+ end
+}
+
M.DocTokenizer = Node:clone {
UNKNOWN = eolian.doc_token_type.UNKNOWN,
TEXT = eolian.doc_token_type.TEXT,