diff options
| author | s-ol <s-ol@users.noreply.github.com> | 2020-09-04 12:14:46 +0000 |
|---|---|---|
| committer | s-ol <s+removethis@s-ol.nu> | 2025-03-02 14:24:49 +0000 |
| commit | 6946779f88fec479239b36128924996d0495dce6 (patch) | |
| tree | a2f1ee6dc6d3fe60ba0d23cc169ca03e2b71b9c2 /docs | |
| parent | have alv-lua modules return Results, not plain tables (diff) | |
| download | alive-6946779f88fec479239b36128924996d0495dce6.tar.gz alive-6946779f88fec479239b36128924996d0495dce6.zip | |
update lib and docs to new module convention
Diffstat (limited to 'docs')
| -rwxr-xr-x | docs/gen/index | 9 | ||||
| -rwxr-xr-x | docs/gen/module | 23 | ||||
| -rw-r--r-- | docs/gen/shim.moon | 21 |
3 files changed, 36 insertions, 17 deletions
diff --git a/docs/gen/index b/docs/gen/index index 20fb3bd..1536645 100755 --- a/docs/gen/index +++ b/docs/gen/index @@ -2,6 +2,7 @@ require 'alv' import render, layout, autoref, subnav from require 'docs.gen.layout' import section, h1, h2, p, ul, li, a, code from require 'docs.gen.dom' +import get_module from require 'docs.gen.shim' import compile from require 'discount' export OUT @@ -20,9 +21,11 @@ spit = (file, str) -> md = slurp file for file in *arg[3,] - if mod = file\match '/module/(.*)%.html' - name = mod\gsub '/', '.' - md ..= " - [`#{name}`](module/#{mod}.html)\n" + if name = file\match '/module/(.*)%.html' + modname = name\gsub '/', '.' + mod = get_module "alv-lib.#{modname}" + summary = if mod.meta then ": #{mod.meta.summary}" else '' + md ..= " - [`#{modname}`](module/#{name}.html)#{summary}\n" content = compile (autoref md), 'githubtags', 'fencedcode' sub = subnav [a for a in *arg[3,]] diff --git a/docs/gen/module b/docs/gen/module index 77336cf..7b94dff 100755 --- a/docs/gen/module +++ b/docs/gen/module @@ -1,17 +1,11 @@ #!/usr/bin/env moon import Constant from require 'alv' -import render, layout, subnav from require 'docs.gen.layout' -import h2, h3, ul, li, code from require 'docs.gen.dom' +import render, render_meta, layout, subnav from require 'docs.gen.layout' +import h2, h3, p, ul, li, code from require 'docs.gen.dom' +import get_module from require 'docs.gen.shim' import opairs from require 'alv.util' -export OUT, require - -require = do - old_require = require - blacklist = {k, true for k in *{'osc', 'socket', 'system', 'luartmidi'}} - (mod, ...) -> - return {} if blacklist[mod] - old_require mod, ... +export OUT slurp = (file) -> file = io.open file, 'r' @@ -26,18 +20,19 @@ spit = (file, str) -> { OUT, module, name } = arg name or= module -const = Constant.wrap require module -module = const\unwrap! +module = get_module module +raw = module! spit OUT, layout title: "#{name} module reference" body: table.concat { subnav [a for a in *arg[4,]] h2 (code name), ' module reference' + p if m = module.meta then m.summary else '' h3 'index' - ul for key, node in opairs module.values + ul for key, node in opairs raw.values li render key, node.result, nil, true h3 'details' - ul for key, node in opairs module.values + ul for key, node in opairs raw.values li render key, node.result }, '' diff --git a/docs/gen/shim.moon b/docs/gen/shim.moon new file mode 100644 index 0000000..01a96cc --- /dev/null +++ b/docs/gen/shim.moon @@ -0,0 +1,21 @@ +import RTNode from require 'alv' + +export require + +require = do + old_require = require + blacklist = {k, true for k in *{'osc', 'socket', 'system', 'luartmidi'}} + (mod, ...) -> + return {} if blacklist[mod] + old_require mod, ... + +get_module = (name) -> + rtn_or_module = require name + if rtn_or_module.__class == RTNode + assert rtn_or_module.result + else + rtn_or_module + +{ + :get_module +} |
