diff options
Diffstat (limited to 'LuaSL/src')
-rw-r--r-- | LuaSL/src/LuaSL.h | 3 | ||||
-rw-r--r-- | LuaSL/src/LuaSL_compile.c | 19 | ||||
-rw-r--r-- | LuaSL/src/LuaSL_main.c | 8 |
3 files changed, 28 insertions, 2 deletions
diff --git a/LuaSL/src/LuaSL.h b/LuaSL/src/LuaSL.h index af87de5..2bb2b4a 100644 --- a/LuaSL/src/LuaSL.h +++ b/LuaSL/src/LuaSL.h | |||
@@ -55,7 +55,8 @@ typedef struct | |||
55 | int logDom; | 55 | int logDom; |
56 | } gameGlobals; | 56 | } gameGlobals; |
57 | 57 | ||
58 | typedef void (*doSomething) (gameGlobals *game, unsigned char key); | 58 | |
59 | Eina_Bool compileLSL(gameGlobals *game, char *script); | ||
59 | 60 | ||
60 | void loggingStartup(gameGlobals *game); | 61 | void loggingStartup(gameGlobals *game); |
61 | char *getDateTime(struct tm **nowOut, char *dateOut, time_t *tiemOut); | 62 | char *getDateTime(struct tm **nowOut, char *dateOut, time_t *tiemOut); |
diff --git a/LuaSL/src/LuaSL_compile.c b/LuaSL/src/LuaSL_compile.c new file mode 100644 index 0000000..f4aa0c6 --- /dev/null +++ b/LuaSL/src/LuaSL_compile.c | |||
@@ -0,0 +1,19 @@ | |||
1 | #include "LuaSL.h" | ||
2 | |||
3 | |||
4 | Eina_Bool compileLSL(gameGlobals *game, char *script) | ||
5 | { | ||
6 | Eina_Bool result = EINA_FALSE; | ||
7 | |||
8 | // Parse the LSL script, validating it and reporting errors. | ||
9 | |||
10 | // Take the result of the parse, and convert it into Lua source. | ||
11 | // Each LSL script becomes a Lua state. | ||
12 | // LSL states are handled as Lua tables, with each LSL state function being a table function in a common metatable. | ||
13 | // LL and OS functions are likely to be C functions. | ||
14 | |||
15 | // Compile the Lua source by the Lua compiler. | ||
16 | |||
17 | return result; | ||
18 | } | ||
19 | |||
diff --git a/LuaSL/src/LuaSL_main.c b/LuaSL/src/LuaSL_main.c index 29b04d6..9a6c256 100644 --- a/LuaSL/src/LuaSL_main.c +++ b/LuaSL/src/LuaSL_main.c | |||
@@ -104,7 +104,7 @@ main(int argc, char **argv) | |||
104 | return -1; | 104 | return -1; |
105 | } | 105 | } |
106 | game.canvas = ecore_evas_get(game.ee); | 106 | game.canvas = ecore_evas_get(game.ee); |
107 | ecore_evas_title_set(game.ee, "LuaoSL test harness"); | 107 | ecore_evas_title_set(game.ee, "LuaSL test harness"); |
108 | ecore_evas_show(game.ee); | 108 | ecore_evas_show(game.ee); |
109 | 109 | ||
110 | game.bg = evas_object_rectangle_add(game.canvas); | 110 | game.bg = evas_object_rectangle_add(game.canvas); |
@@ -160,6 +160,12 @@ main(int argc, char **argv) | |||
160 | ecore_evas_callback_delete_request_set(game.ee, _on_delete); | 160 | ecore_evas_callback_delete_request_set(game.ee, _on_delete); |
161 | edje_object_signal_callback_add(game.edje, "*", "game_*", _edje_signal_cb, &game); | 161 | edje_object_signal_callback_add(game.edje, "*", "game_*", _edje_signal_cb, &game); |
162 | 162 | ||
163 | snprintf(buf, sizeof(buf), "%s/Test sim/objects/onefang's test bed/~run", PACKAGE_DATA_DIR); | ||
164 | if (compileLSL(&game, buf)) | ||
165 | PIm("Against all odds, the compile of %s worked! lol", buf); | ||
166 | else | ||
167 | PEm("The compile of %s failed, as expected!", buf); | ||
168 | |||
163 | ecore_main_loop_begin(); | 169 | ecore_main_loop_begin(); |
164 | 170 | ||
165 | ecore_animator_del(ani); | 171 | ecore_animator_del(ani); |