Elixir.Luerl (luerl v1.5.1)

View Source

Elixir API for Luerl, an implementation of Lua 5.3 written in Erlang.

This module provides an idiomatic Elixir interface to the Luerl Lua interpreter with state as the first argument for better pipe operator usage.

Summary

Functions

Equivalent to luerl:gc(LuaState).

Equivalent to luerl:init().

Equivalent to luerl:load(Chunk, LuaState).

Equivalent to luerl:load(Chunk, CompileOptions, LuaState).

Equivalent to luerl:load_module(KeyPath, ErlangModule, LuaState).

Equivalent to luerl:load_module_dec(KeyPath, ErlangModule, LuaState).

Equivalent to luerl:loadfile(FileName, LuaState).

Equivalent to luerl:loadfile(FileName, CompileOptions, LuaState).

Equivalent to luerl:path_loadfile(FileName, LuaState).

Equivalent to luerl:path_loadfile(Path, FileName, LuaState).

Equivalent to luerl:path_loadfile(Path, FileName, CompileOptions, LuaState).

Encode/Decode Date functions

Equivalent to luerl:decode(LuerlTerm, LuaState).

Equivalent to luerl:decode_list(LuerlTerms, LuaState).

Equivalent to :luerl.encode(term, luastate).

Equivalent to luerl:encode_list(Terms, LuaState).

Private Data functions

Delete the private value for Key.

Get the private value for Key.

Puts a private Value under Key that is not exposed to the runtime.

Trace Control functions

Equivalent to luerl:clear_trace_func(LuaState).

Equivalent to luerl:get_trace_func(LuaState).

Equivalent to luerl:set_trace_func(TraceData, LuaState).

Equivalent to luerl:set_trace_func(Function, LuaState).

Types

luerlstate()

-type luerlstate() ::
          #luerl{tabs :: term(),
                 envs :: term(),
                 usds :: term(),
                 fncs :: term(),
                 g :: term(),
                 stk :: term(),
                 cs :: term(),
                 meta :: term(),
                 rand :: term(),
                 tag :: term(),
                 trace_func :: term(),
                 trace_data :: term(),
                 private :: term()}.

Functions

call(St, C, Args)

call_chunk(St, C)

call_chunk(St, C, Args)

call_function(St, Fp, Args)

call_function_dec(St, Dfunc, Dargs)

call_function_enc(St, Dfunc, Dargs)

call_method(St, Obj, Meth, Args)

call_method_dec(St, Dobj, Dmeth, Dargs)

do(St, S)

do(St, S, Opts)

do_dec(St, S)

do_dec(St, S, Opts)

dofile(St, Path)

dofile(St, Path, Opts)

dofile_dec(St, Path)

dofile_dec(St, Path, Opts)

externalize(St)

gc(LuaState)

Equivalent to luerl:gc(LuaState).

get_stacktrace(St)

get_table_key(St, Tab, Key)

get_table_keys(St, Keys)

get_table_keys_dec(St, Dkeys)

init()

Equivalent to luerl:init().

internalize(St)

load(LuaState, Chunk)

Equivalent to luerl:load(Chunk, LuaState).

load(LuaState, Chunk, CompileOptions)

Equivalent to luerl:load(Chunk, CompileOptions, LuaState).

load_module(LuaState, KeyPath, ErlangModule)

Equivalent to luerl:load_module(KeyPath, ErlangModule, LuaState).

load_module_dec(LuaState, KeyPath, ErlangModule)

Equivalent to luerl:load_module_dec(KeyPath, ErlangModule, LuaState).

loadfile(LuaState, FileName)

Equivalent to luerl:loadfile(FileName, LuaState).

loadfile(LuaState, FileName, CompileOptions)

Equivalent to luerl:loadfile(FileName, CompileOptions, LuaState).

path_loadfile(LuaState, FileName)

Equivalent to luerl:path_loadfile(FileName, LuaState).

path_loadfile(LuaState, Path, FileName)

Equivalent to luerl:path_loadfile(Path, FileName, LuaState).

path_loadfile(LuaState, Path, FileName, CompileOptions)

Equivalent to luerl:path_loadfile(Path, FileName, CompileOptions, LuaState).

set_table_key(St, Tab, Key, Val)

set_table_keys(St, Keys, Val)

set_table_keys_dec(St, Dkeys, Dval)

Encode/Decode Date functions

decode(LuaState, LuerlTerm)

Equivalent to luerl:decode(LuerlTerm, LuaState).

decode_list(LuaState, LuerlTerms)

Equivalent to luerl:decode_list(LuerlTerms, LuaState).

encode(luastate, term)

Equivalent to :luerl.encode(term, luastate).

encode_list(LuaState, Terms)

Equivalent to luerl:encode_list(Terms, LuaState).

Private Data functions

delete_private(LuaState, Key)

-spec delete_private(LuaState, Key) -> LuaState when Key :: term(), LuaState :: luerlstate().

Delete the private value for Key.

get_private(LuaState, Key)

-spec get_private(LuaState, Key) -> Value when Key :: term(), Value :: term(), LuaState :: luerlstate().

Get the private value for Key.

put_private(LuaState, Key, Value)

-spec put_private(LuaState, Key, Value) -> LuaState
                     when Key :: term(), Value :: term(), LuaState :: luerlstate().

Puts a private Value under Key that is not exposed to the runtime.

Trace Control functions

clear_trace_func(LuaState)

Equivalent to luerl:clear_trace_func(LuaState).

get_trace_data(LuaState)

Equivalent to luerl:get_trace_func(LuaState).

set_trace_data(LuaState, TraceData)

Equivalent to luerl:set_trace_func(TraceData, LuaState).

set_trace_func(LuaState, Function)

Equivalent to luerl:set_trace_func(Function, LuaState).