You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.6 KiB
1.6 KiB
Luna standard library
Reference docs for the library Luna adds on top of Lua 5.5. Every module below is
a global, present in every script with no setup (require-ing one by name
also works and returns the same table).
Modules
| Module | What it covers |
|---|---|
utils |
JSON encode/decode, the NULL marker, error-trapping (try/tryn), value dump. |
math |
Additions to stock math: round, clamp, isFinite, sign, scale. |
table |
Additions to stock table: map/filter/reduce, merge, deep-copy, aggregates, lookups, read-only proxy. |
os |
Sandbox additions: microtime (sub-second clock), async sleep, and args (script arguments). |
log |
Level-tagged diagnostic logging (trace…error), gated by LUNA_LOG. |
sqlite |
Embedded SQLite: connect, query, parameters, transactions. |
http |
HTTP/HTTPS client: requests, JSON, auth, cookie-jar sessions, per-origin permissions. |
fs |
Whole-file read/write and directory listing, behind a per-script folder permission system. |
tui |
Interactive terminal prompts (confirm/text/select/…), ANSI-styled output, message blocks. |
Concepts
| Page | What it covers |
|---|---|
| Concurrency | How async calls suspend, and running work in parallel with task.join. |
Modules & require |
Splitting scripts into files: search roots, LUNA_INCLUDE_PATHS, .env, caching, LSP setup. |
See the top-level README for what Luna is and how to build it.