Luau
zune.luau
A library to parse, compile and run luau code.
Functions
compile
Compiles Luau
source code.
compile(source: string | buffer, opts: export type LuauCompileOptions = {
debug_level: number?,
optimization_level: number?,
coverage_level: number?,
}LuauCompileOptionsexport type LuauCompileOptions = {
debug_level: number?,
optimization_level: number?,
coverage_level: number?,
}?): buffer
Parameters
source: string | buffer
- The source code to compile.opts: LuauCompileOptions?
- The options for the compiler.debug_level: number?
- The debug level for the compilation.optimization_level: number?
- The optimization level for the compilation.coverage_level: number?
- The coverage level for the compilation.
Throws
- Luau Error
- Memory Error
load
Loads Luau
bytecode into a function.
load(bytecode: string | buffer, opts: export type LuauLoadOptions = {
env: {
[any]: any
}?,
chunk_name: string?,
native_code_gen: boolean?,
}LuauLoadOptionsexport type LuauLoadOptions = {
env: {
[any]: any
}?,
chunk_name: string?,
native_code_gen: boolean?,
}?): ((...any) -> ...any)
Parameters
bytecode: string | buffer
- The bytecode to load.opts: LuauLoadOptions?
- The options for loading the bytecode.env: {[any]: any}?
- The environment to use for the loaded function.chunk_name: string?
- The name of the chunk, used for debugging.- default:
"(load)"
- default:
native_code_gen: boolean?
- Whether to enable native code generation.- default:
true
- default:
Throws
- Luau Error
coverage
Get coverage data from a function.
coverage(fn: (...any) -> ...any): {export type LuauCoverageData = {
name: string,
line: number,
depth: number,
[number]: number,
}LuauCoverageDataexport type LuauCoverageData = {
name: string,
line: number,
depth: number,
[number]: number,
}}
Parameters
fn: (...any) -> ...any
- The function to get the coverage data from.
parse
Parses Luau
source code.
parse(src: string | buffer): export type Location = {
begin: Position,
["end"]: Position,
}
type Position = {
line: number,
column: number,
}
export type ParseResult = {
errors: {{
message: string,
location: Location,
}}?,
root: {any},
eof: {
text: "",
position: Position,
tag: "eof"
},
lines: number,
lineOffsets: {number},
hotcomments: {{
header: boolean,
content: string,
location: Location,
}},
}ParseResultexport type Location = {
begin: Position,
["end"]: Position,
}
type Position = {
line: number,
column: number,
}
export type ParseResult = {
errors: {{
message: string,
location: Location,
}}?,
root: {any},
eof: {
text: "",
position: Position,
tag: "eof"
},
lines: number,
lineOffsets: {number},
hotcomments: {{
header: boolean,
content: string,
location: Location,
}},
}
Parameters
src: string | buffer
- The source code to parse.
Throws
- Memory Error
parseExpr
Parses a Luau
expression.
parseExpr(src: string | buffer): any
Parameters
src: string | buffer
- The expression to parse.
Throws
- Memory Error
garbagecollect
Runs a full garbage collection cycle.
garbagecollect(): ()
Last updated on