Files
plainleaf/plug-api/syscalls/lua.ts
T

35 lines
1.0 KiB
TypeScript

import { syscall } from "../syscall.ts";
import type { LuaBlock, LuaExpression } from "../../client/space_lua/ast.ts";
import type { PrintOptions } from "../../client/space_lua/pretty_print.ts";
export function parseBlock(code: string): Promise<LuaBlock> {
return syscall("lua.parseBlock", code);
}
/** @deprecated use {@link parseBlock} instead */
export function parse(code: string): Promise<LuaBlock> {
return syscall("lua.parseBlock", code);
}
export function parseExpression(expression: string): Promise<LuaExpression> {
return syscall("lua.parseExpression", expression);
}
export function evalExpression(expression: string): Promise<any> {
return syscall("lua.evalExpression", expression);
}
export function prettyPrintBlock(
block: LuaBlock,
opts?: PrintOptions,
): Promise<string> {
return syscall("lua.prettyPrintBlock", block, opts);
}
export function prettyPrintExpression(
expression: LuaExpression,
opts?: PrintOptions,
): Promise<string> {
return syscall("lua.prettyPrintExpression", expression, opts);
}