aboutsummaryrefslogtreecommitdiffhomepage
path: root/config.ld
diff options
context:
space:
mode:
authorRobin Haberkorn <robin.haberkorn@googlemail.com>2023-09-13 17:26:53 +0300
committerRobin Haberkorn <robin.haberkorn@googlemail.com>2023-09-13 17:26:53 +0300
commit7fc0f17fb37326c86a83627b856a5b75f522c090 (patch)
treebc5de8b30c705afafc9b30e6fd3f5bc2b12f19d6 /config.ld
parent1cfaa431c1f3c4f417811dcff342c9f28600f13f (diff)
downloadapplause2-7fc0f17fb37326c86a83627b856a5b75f522c090.tar.gz
added LDoc documentation
* gives a useful overview of everything supported right now * especially the type documentation is useful, as these things are not self-evident in Lua (because of dynamic typing). * The LDoc page can later be published as the Github pages of the project. This can even be done automatically by a Github action. However, we should first make sure that it's okay to publish the project before defending the thesis since Github pages will always be public even for private repositories. * Documentation of command-line parameters is lacking (TODO). * It may be possible to use types like "Stream(number)" to describe streams of numbers. The LDoc documentation mentions boxed types. Perhaps there can even be Streamable(number)? * We are also lacking good example programs and/or introductory material.
Diffstat (limited to 'config.ld')
-rw-r--r--config.ld33
1 files changed, 33 insertions, 0 deletions
diff --git a/config.ld b/config.ld
new file mode 100644
index 0000000..b7b4ad5
--- /dev/null
+++ b/config.ld
@@ -0,0 +1,33 @@
+-- LDoc configuration file
+
+project = "Applause"
+description = "LuaJIT-based real-time synthesizer, based on a stream algebra"
+
+format = "discount"
+readme = "README.md"
+examples = "examples/"
+
+file = {
+ "applause.lua", "sndfile-stream.lua", -- "sndfile.lua",
+ "filters.lua", "dssi.lua", "midi.lua", "evdev.lua"
+}
+
+no_space_before_args = true
+manual_url "https://www.lua.org/manual/5.1/manual.html"
+
+-- Support external references to the bit module.
+custom_see_handler("^bit%.(.+)$", function(fnc)
+ return "bit."..fnc, "https://bitop.luajit.org/api.html#"..fnc
+end)
+
+-- Use @Stream only if a parameter must already be a Stream object.
+tparam_alias("Stream", "Stream")
+-- Use @StreamableNumber for parameters that can be converted to number streams using tostream().
+tparam_alias("StreamableNumber", "Stream|{number,...}|number")
+
+-- For metamethods
+-- FIXME: Perhaps we can put them into separate sections.
+new_type("metamethod", "Metamethods")
+
+-- The @submodule tag does not work, so we use `@module applause` multiple times instead.
+merge = true