aboutsummaryrefslogtreecommitdiff
path: root/examples/hello_lua
diff options
context:
space:
mode:
Diffstat (limited to 'examples/hello_lua')
-rw-r--r--examples/hello_lua/.gitignore5
-rw-r--r--examples/hello_lua/hello.lua1
-rw-r--r--examples/hello_lua/project.conf8
-rw-r--r--examples/hello_lua/src/main.cpp31
4 files changed, 45 insertions, 0 deletions
diff --git a/examples/hello_lua/.gitignore b/examples/hello_lua/.gitignore
new file mode 100644
index 0000000..636c6b9
--- /dev/null
+++ b/examples/hello_lua/.gitignore
@@ -0,0 +1,5 @@
+# Compiled sibs files
+sibs-build/
+compile_commands.json
+tests/sibs-build/
+tests/compile_commands.json
diff --git a/examples/hello_lua/hello.lua b/examples/hello_lua/hello.lua
new file mode 100644
index 0000000..4601856
--- /dev/null
+++ b/examples/hello_lua/hello.lua
@@ -0,0 +1 @@
+print("inside lua!")
diff --git a/examples/hello_lua/project.conf b/examples/hello_lua/project.conf
new file mode 100644
index 0000000..e416497
--- /dev/null
+++ b/examples/hello_lua/project.conf
@@ -0,0 +1,8 @@
+[package]
+name = "hello_lua"
+type = "executable"
+version = "0.1.0"
+platforms = ["any"]
+
+[dependencies]
+lua51 = "5.1.5"
diff --git a/examples/hello_lua/src/main.cpp b/examples/hello_lua/src/main.cpp
new file mode 100644
index 0000000..57f9194
--- /dev/null
+++ b/examples/hello_lua/src/main.cpp
@@ -0,0 +1,31 @@
+#include <stdio.h>
+extern "C" {
+#include <lua5.1/lua.h>
+#include <lua5.1/lualib.h>
+#include <lua5.1/lauxlib.h>
+}
+int main(int argc, char *argv[]) {
+ // Open lua
+ lua_State *L = lua_open();
+
+ // Load the libraries
+ luaL_openlibs(L);
+
+ // Execution of a lua string
+ luaL_dostring(L, "print \"Yo dude\"");
+
+ // Load a string and then execute it.
+ luaL_loadstring(L, "io.write(\"I'm here too\\n\")");
+ lua_pcall(L, 0, LUA_MULTRET, 0);
+
+ // Load from a file and then execute
+ if (luaL_loadfile(L, "hello.lua") == 0) {
+ // File loaded call it
+ lua_pcall(L, 0, LUA_MULTRET, 0);
+ }
+
+ // Close lua
+ lua_close (L);
+
+ return 0;
+}