ExLua
Lua for Elixir, based on Luerl.
Examples
[42.0] = Lua.State.new |> Lua.eval!("return 6 * 7")
Reference
| ExLua (Elixir) | Luerl (Erlang) | Lua (C) |
|---|---|---|
Lua.Error | {:error, ...} | luaL_error |
Lua.State.new | luerl:init | luaL_newstate |
Lua.call_chunk! | luerl:call_chunk | lua_pcall |
Lua.call_function! | luerl:call_function | lua_pcall |
Lua.eval | luerl:eval | luaL_dostring |
Lua.eval! | luerl:eval | luaL_dostring |
Lua.eval_file | luerl:evalfile | luaL_dofile |
Lua.eval_file! | luerl:evalfile | luaL_dofile |
Lua.gc | luerl:gc | lua_gc |
Lua.load | luerl:load | luaL_loadstring |
Lua.load! | luerl:load | luaL_loadstring |
Lua.load_file | luerl:loadfile | luaL_loadfile |
Lua.load_file! | luerl:loadfile | luaL_loadfile |
Lua.set_table | luerl:set_table | lua_settable |
Installation
Add exlua to your list of dependencies in your project's mix.exs file:
defp deps do
[{:exlua, "~> 0.1.0"},
{:luerl, github: "rvirding/luerl", tag: "v0.3",
compile: "make && cp src/luerl.app.src ebin/luerl.app"}]
end
Alternatively, to pull in the dependency directly from a Git tag:
defp deps do
[{:exlua, github: "bendiken/exlua", tag: "0.1.0"},
{:luerl, github: "rvirding/luerl", tag: "v0.3",
compile: "make && cp src/luerl.app.src ebin/luerl.app"}]
end
Alternatively, to pull in the dependency directly from a Git branch:
defp deps do
[{:exlua, github: "bendiken/exlua", branch: "master"},
{:luerl, github: "rvirding/luerl", tag: "v0.3",
compile: "make && cp src/luerl.app.src ebin/luerl.app"}]
end