aboutsummaryrefslogtreecommitdiff
path: root/share/funcsignature.etlua.lua
diff options
context:
space:
mode:
Diffstat (limited to 'share/funcsignature.etlua.lua')
-rw-r--r--share/funcsignature.etlua.lua24
1 files changed, 24 insertions, 0 deletions
diff --git a/share/funcsignature.etlua.lua b/share/funcsignature.etlua.lua
new file mode 100644
index 0000000..de34880
--- /dev/null
+++ b/share/funcsignature.etlua.lua
@@ -0,0 +1,24 @@
+return [[
+<% assert(func, "Requires function to render a function signature") %>
+<% assert(funcname, "Requires a function name to render a function signature") %>
+<a href="#<%- funcname %>"><%- funcname %></a>(
+ <% if func.params and #func.params > 0 then %>
+ <% local optchain = false %>
+ <% for paramid, param in pairs(func.params) do %>
+ <% if paramid == 1 and param.optional then %>
+ [
+ <% elseif param.optional then %>
+ [,
+ <% elseif paramid > 1 then %>
+ ,
+ <% end %>
+ <%- param.name %>
+ <% if paramid == 1 and param.optional then %>
+ ]
+ <% elseif param.optional then %>
+ ]
+ <% end %>
+ <% end %>
+ <% end %>
+)
+]]