diff options
author | Daniel Kolesa <d.kolesa@osg.samsung.com> | 2016-04-06 14:10:21 +0100 |
---|---|---|
committer | Daniel Kolesa <d.kolesa@osg.samsung.com> | 2016-05-12 11:59:08 +0100 |
commit | 6ac7e3ee80d0b0f5bb4551497a9c8d589c4cc551 (patch) | |
tree | 1e59c6c2d97a6b97454dbbb153b8b804ae3dda54 | |
parent | 53c767a5423c8b1457f919b49bb9146f30df11dc (diff) | |
download | efl-6ac7e3ee80d0b0f5bb4551497a9c8d589c4cc551.tar.gz |
docgen: allow for buffer chaining
-rw-r--r-- | gendoc.lua | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/gendoc.lua b/gendoc.lua index f493fb1878..c4b9a8e7ae 100644 --- a/gendoc.lua +++ b/gendoc.lua @@ -45,10 +45,12 @@ local Writer = util.Object:clone { write_raw = function(self, ...) self.file:write(...) + return self end, write_nl = function(self, n) self:write_raw(("\n"):rep(n or 1)) + return self end, write_h = function(self, heading, level, nonl) @@ -57,51 +59,63 @@ local Writer = util.Object:clone { if not nonl then self:write_nl() end + return self end, write_fmt = function(self, fmt1, fmt2, ...) self:write_raw(fmt1, ...) self:write_raw(fmt2) + return self end, write_b = function(self, ...) self:write_fmt("**", "**", ...) + return self end, write_i = function(self, ...) self:write_fmt("//", "//", ...) + return self end, write_u = function(self, ...) self:write_fmt("__", "__", ...) + return self end, write_s = function(self, ...) self:write_fmt("<del>", "</del>", ...) + return self end, write_m = function(self, ...) self:write_fmt("''", "''", ...) + return self end, write_sub = function(self, ...) self:write_fmt("<sub>", "</sub>", ...) + return self end, write_sup = function(self, ...) self:write_fmt("<sup>", "</sup>", ...) + return self end, write_br = function(self, nl) self:write_raw("\\\\", nl and "\n" or " ") + return self end, write_pre_inline = function(self, ...) self:write_fmt("%%", "%%", ...) + return self end, write_pre = function(self, ...) self:write_fmt("<nowiki>\n", "\n</nowiki>", ...) + return self end, write_link = function(self, target, title) @@ -112,11 +126,12 @@ local Writer = util.Object:clone { target = target:lower() if type(title) == "string" then self:write_raw("[[", target, "|", title, "]]") - return + return self end self:write_raw("[[", target, "|") title(self) self:write_raw("]]") + return self end, write_table = function(self, titles, tbl) @@ -124,6 +139,7 @@ local Writer = util.Object:clone { for i, v in ipairs(tbl) do self:write_raw("| ", table.concat(v, " | "), " |\n") end + return self end, write_list = function(self, tbl, ord) @@ -135,6 +151,7 @@ local Writer = util.Object:clone { end self:write_raw((" "):rep(lvl), prec, " ", str, "\n") end + return self end, finish = function(self) @@ -151,6 +168,7 @@ local Buffer = Writer:clone { for i, v in ipairs({ ... }) do self.buf[#self.buf + 1] = v end + return self end, finish = function(self) @@ -272,10 +290,10 @@ local build_reftable = function(f, title, ctitle, ctype, t) f:write_h(title, 2) local nt = {} for i, v in ipairs(t) do - local lbuf = Buffer() - lbuf:write_link(gen_namespaces(v, ctype, true), v:full_name_get()) nt[#nt + 1] = { - lbuf:finish(), get_brief_doc(v:documentation_get()) + Buffer():write_link(gen_namespaces(v, ctype, true), + v:full_name_get()):finish(), + get_brief_doc(v:documentation_get()) } end table.sort(nt, function(v1, v2) return v1[1] < v2[1] end) |