diff options
| author | Alexander Pickering <alex@cogarr.net> | 2020-09-18 15:00:16 -0400 |
|---|---|---|
| committer | Alexander Pickering <alex@cogarr.net> | 2020-09-18 15:00:16 -0400 |
| commit | 9940b5ab62df3adb91e78ebe6905125be6e6f4e7 (patch) | |
| tree | 75f5d960fb7a032d01fc4e7432f6525d9ae7b27a | |
| parent | 8252fc216c21a1dba63296ccd741fe1c4a943e5b (diff) | |
| download | mdoc-9940b5ab62df3adb91e78ebe6905125be6e6f4e7.tar.gz mdoc-9940b5ab62df3adb91e78ebe6905125be6e6f4e7.tar.bz2 mdoc-9940b5ab62df3adb91e78ebe6905125be6e6f4e7.zip | |
Add asserts for rendering.
Add a few asserts for rendering for debugging help.
| -rw-r--r-- | share/page.etlua.lua | 192 |
1 files changed, 98 insertions, 94 deletions
diff --git a/share/page.etlua.lua b/share/page.etlua.lua index b1bad23..e67d161 100644 --- a/share/page.etlua.lua +++ b/share/page.etlua.lua @@ -1,94 +1,98 @@ -return [[
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html>
- <head>
- <title><%- options.title %></title>
- <link rel="stylesheet" href="style.css" type="text/css">
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.0.0/build/styles/default.min.css">
- <script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.0.0/build/highlight.min.js"></script>
- <script>hljs.initHighlightingOnLoad();</script>
- </head>
- <body>
- <%- navbar %>
- <article>
- <% if header.data_file then %>
- <% local reffd = io.open(header.data_file,"r") %>
- <p><%- reffd:read("*a") %>
- <% reffd:close() %>
- <% else %>
- <section>
- <h3><%- header.name %></h3>
- <% if header.short_desc then %>
- <p><%- header.short_desc %>
- <% header.short_desc = nil %>
- <% end %>
- <% if header.desc then %>
- <p><%- header.desc or "" %>
- <% header.desc = nil %>
- <% end %>
- <% if header.inherits then %>
- <p>Inherits from
- <% for _,name in pairs(header.inherits) do %>
- <a href="<%- name %>.html"><%- name %></a>
- <% end %>
- <% end %>
- </section>
- <% local funcorder = {} %>
- <% for funcname,_ in pairs(header) do %>
- <% table.insert(funcorder,funcname) %>
- <% end %>
- <% table.sort(funcorder) %>
- <section>
- <h4>Contents</h4>
- <table>
- <tr>
- <th>Name</th>
- <th>Description</th>
- </tr>
- <% for _, funcname in ipairs(funcorder) do %>
- <% local data = header[funcname] %>
- <% if data and data.short_desc then %>
- <tr>
- <% if data.type == "function" or data.type == "method" then %>
- <td><%- funcsig({funcname = funcname, func = header[funcname]}) %></td>
- <td><%- data.short_desc %></td>
- <% else %>
- <td><%- data.name %></td>
- <td><%- data.short_desc %></td>
- <% end %>
- </tr>
- <% end %>
- <% end %>
- </table>
- </section>
- <hr>
- <% local func_sec = assert(et.compile(require("mdoc.files.func"))) %>
- <% for _, funcname in ipairs(funcorder) do %>
- <% local data = header[funcname] %>
- <% if not data.type then goto nextfunc end %>
- <% if data.type == "method" or data.type == "function" then %>
- <%- assert(func_sec{
- name = funcname,
- data = data
- }) %>
- <hr>
- <% elseif data.type == "field" then %>
- <h4><%- funcname %></h4>
- <p><%- data.desc or "" %>
- <hr>
- <% else %>
- <% if funcname ~= "name" and funcname ~= "type" then %>
- <p>Unknown field type: <%- data.type or "" %> for <%- funcname %>
- <p><%- tostring(data) %>
- <p><%- tostring(header) %>
- <hr>
- <% end %>
- <% end %>
- <% ::nextfunc:: %>
- <% end %>
- <% end %>
- </article>
- </body>
-</html>
-]]
+return [[ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html> + <head> + <title><%- options.title %></title> + <link rel="stylesheet" href="style.css" type="text/css"> + <link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.0.0/build/styles/default.min.css"> + <script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.0.0/build/highlight.min.js"></script> + <script>hljs.initHighlightingOnLoad();</script> + </head> + <body> + <%- navbar %> + <article> + <% if header.data_file then %> + <% local reffd = io.open(header.data_file,"r") %> + <p><%- reffd:read("*a") %> + <% reffd:close() %> + <% else %> + <section> + <h3><%- header.name %></h3> + <% if header.short_desc then %> + <p><%- header.short_desc %> + <% header.short_desc = nil %> + <% end %> + <% if header.desc then %> + <p><%- header.desc or "" %> + <% header.desc = nil %> + <% end %> + <% if header.inherits then %> + <p>Inherits from + <% assert(header.inherits,"Failed to find field 'inherits'") %> + <% for _,name in pairs(header.inherits) do %> + <a href="<%- name %>.html"><%- name %></a> + <% end %> + <% end %> + </section> + <% local funcorder = {} %> + <% assert(header and type(header) == "table", "Failed to find header") %> + <% for funcname,_ in pairs(header) do %> + <% table.insert(funcorder,funcname) %> + <% end %> + <% table.sort(funcorder) %> + <section> + <h4>Contents</h4> + <table> + <tr> + <th>Name</th> + <th>Description</th> + </tr> + <% assert(funcorder and type(funcorder) == "table" , "Failed to find 'funcorder'") %> + <% for _, funcname in ipairs(funcorder) do %> + <% local data = header[funcname] %> + <% if data and data.short_desc then %> + <tr> + <% if data.type == "function" or data.type == "method" then %> + <td><%- funcsig({funcname = funcname, func = header[funcname]}) %></td> + <td><%- data.short_desc %></td> + <% else %> + <td><%- data.name %></td> + <td><%- data.short_desc %></td> + <% end %> + </tr> + <% end %> + <% end %> + </table> + </section> + <hr> + <% local func_sec = assert(et.compile(require("mdoc.files.func"))) %> + <% assert(funcorder and type(funcorder) == "table", "Failed to find funcorder 2") + <% for _, funcname in ipairs(funcorder) do %> + <% local data = header[funcname] %> + <% if not data.type then goto nextfunc end %> + <% if data.type == "method" or data.type == "function" then %> + <%- assert(func_sec{ + name = funcname, + data = data + }) %> + <hr> + <% elseif data.type == "field" then %> + <h4><%- funcname %></h4> + <p><%- data.desc or "" %> + <hr> + <% else %> + <% if funcname ~= "name" and funcname ~= "type" then %> + <p>Unknown field type: <%- data.type or "" %> for <%- funcname %> + <p><%- tostring(data) %> + <p><%- tostring(header) %> + <hr> + <% end %> + <% end %> + <% ::nextfunc:: %> + <% end %> + <% end %> + </article> + </body> +</html> +]] |
