Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
conformance
command
conformance runs the official Lua 5.4 test suite against the luapure engine and reports per-file status — the project's conformance oracle.
|
conformance runs the official Lua 5.4 test suite against the luapure engine and reports per-file status — the project's conformance oracle. |
|
luadbg-dap
command
luadbg-dap is a Debug Adapter Protocol (DAP) server for the luapure Lua VM, served over TCP.
|
luadbg-dap is a Debug Adapter Protocol (DAP) server for the luapure Lua VM, served over TCP. |
|
luadbg-mcp
command
luadbg-mcp is a Model Context Protocol (MCP) debug server for the luapure Lua VM: it lets an LLM agent set breakpoints, step, inspect frames and evaluate expressions in a running Lua program through MCP tool calls.
|
luadbg-mcp is a Model Context Protocol (MCP) debug server for the luapure Lua VM: it lets an LLM agent set breakpoints, step, inspect frames and evaluate expressions in a running Lua program through MCP tool calls. |
|
Package debugdap exposes a luapure debug Session over the Debug Adapter Protocol (DAP), the protocol Visual Studio Code and other editors speak.
|
Package debugdap exposes a luapure debug Session over the Debug Adapter Protocol (DAP), the protocol Visual Studio Code and other editors speak. |
|
Package debugmcp exposes a luapure debug Session over the Model Context Protocol (MCP), so an LLM agent can drive breakpoints, stepping and expression evaluation through tool calls.
|
Package debugmcp exposes a luapure debug Session over the Model Context Protocol (MCP), so an LLM agent can drive breakpoints, stepping and expression evaluation through tool calls. |
|
examples
|
|
|
basic
command
basic is the README quickstart as a runnable program: embed the VM, expose a Go function, run a script, and read the results back.
|
basic is the README quickstart as a runnable program: embed the VM, expose a Go function, run a script, and read the results back. |
|
channel
command
channel exposes a Go channel to Lua as userdata so two goroutines, each with its own LState, communicate by message passing.
|
channel exposes a Go channel to Lua as userdata so two goroutines, each with its own LState, communicate by message passing. |
|
channel-timeout
command
channel-timeout shows the cancellable receive pattern: a Go callback that blocks on a channel reads L.Context() and selects on its Done() channel, so a SetContext deadline frees the goroutine instead of blocking forever.
|
channel-timeout shows the cancellable receive pattern: a Go callback that blocks on a channel reads L.Context() and selects on its Done() channel, so a SetContext deadline frees the goroutine instead of blocking forever. |
|
customlib
command
customlib registers host-provided modules so scripts can require() them: Requiref opens a module eagerly (and optionally as a global), Preload registers a lazy loader that runs on the first require.
|
customlib registers host-provided modules so scripts can require() them: Requiref opens a module eagerly (and optionally as a global), Preload registers a lazy loader that runs on the first require. |
|
debugger
command
debugger drives the in-process Debugger: set a breakpoint, run a script, and each time it stops inspect the frame and evaluate expressions in its scope, then resume.
|
debugger drives the in-process Debugger: set a breakpoint, run a script, and each time it stops inspect the frame and evaluate expressions in its scope, then resume. |
|
embed
command
embed shows the data round-trip: build a table in Go and hand it to a script as a global, then convert Go values to Lua and back with ToValue/FromValue.
|
embed shows the data round-trip: build a table in Go and hand it to a script as a global, then convert Go values to Lua and back with ToValue/FromValue. |
|
openlib
command
openlib shows how to write your own library that installs like a built-in one.
|
openlib shows how to write your own library that installs like a built-in one. |
|
sandbox
command
sandbox runs untrusted-ish code safely: a state with only safe libraries, a per-call _ENV that confines globals, and a deadline that stops a runaway loop.
|
sandbox runs untrusted-ish code safely: a state with only safe libraries, a per-call _ENV that confines globals, and a deadline that stops a runaway loop. |
|
userdata
command
userdata binds a Go type into Lua: register a named metatable, give it a method table, and hand scripts a userdatum they call methods on.
|
userdata binds a Go type into Lua: register a named metatable, give it a method table, and hand scripts a userdatum they call methods on. |
|
Package luapure is a pure-Go implementation of PUC-Lua 5.4: its instruction set, single-pass compiler, virtual machine, standard libraries, and semantics are ported from the reference Lua sources.
|
Package luapure is a pure-Go implementation of PUC-Lua 5.4: its instruction set, single-pass compiler, virtual machine, standard libraries, and semantics are ported from the reference Lua sources. |
Click to show internal directories.
Click to hide internal directories.