tools/llvm: Do not build with symbols
[minix3.git] / external / mit / lua / dist / etc / noparser.c
blob75f2f4fc0460e683cc4c31c22127be34791ffce5
1 /* $NetBSD: noparser.c,v 1.1.1.2 2012/03/15 00:08:14 alnsn Exp $ */
3 /*
4 * The code below can be used to make a Lua core that does not contain the
5 * parsing modules (lcode, llex, lparser), which represent 35% of the total core.
6 * You'll only be able to load binary files and strings, precompiled with luac.
7 * (Of course, you'll have to build luac with the original parsing modules!)
9 * To use this module, simply compile it ("make noparser" does that) and list
10 * its object file before the Lua libraries. The linker should then not load
11 * the parsing modules. To try it, do "make luab".
13 * If you also want to avoid the dump module (ldump.o), define NODUMP.
14 * #define NODUMP
17 #define LUA_CORE
19 #include "llex.h"
20 #include "lparser.h"
21 #include "lzio.h"
23 LUAI_FUNC void luaX_init (lua_State *L) {
24 UNUSED(L);
27 LUAI_FUNC Proto *luaY_parser (lua_State *L, ZIO *z, Mbuffer *buff, const char *name) {
28 UNUSED(z);
29 UNUSED(buff);
30 UNUSED(name);
31 lua_pushliteral(L,"parser not loaded");
32 lua_error(L);
33 return NULL;
36 #ifdef NODUMP
37 #include "lundump.h"
39 LUAI_FUNC int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, void* data, int strip) {
40 UNUSED(f);
41 UNUSED(w);
42 UNUSED(data);
43 UNUSED(strip);
44 #if 1
45 UNUSED(L);
46 return 0;
47 #else
48 lua_pushliteral(L,"dumper not loaded");
49 lua_error(L);
50 #endif
52 #endif