xref: /freebsd-src/contrib/lua/src/lundump.h (revision 8e3e3a7ae841ccf6f6ac30a2eeab85df5d7f04bc)
1*8e3e3a7aSWarner Losh /*
2*8e3e3a7aSWarner Losh ** $Id: lundump.h,v 1.45 2015/09/08 15:41:05 roberto Exp $
3*8e3e3a7aSWarner Losh ** load precompiled Lua chunks
4*8e3e3a7aSWarner Losh ** See Copyright Notice in lua.h
5*8e3e3a7aSWarner Losh */
6*8e3e3a7aSWarner Losh 
7*8e3e3a7aSWarner Losh #ifndef lundump_h
8*8e3e3a7aSWarner Losh #define lundump_h
9*8e3e3a7aSWarner Losh 
10*8e3e3a7aSWarner Losh #include "llimits.h"
11*8e3e3a7aSWarner Losh #include "lobject.h"
12*8e3e3a7aSWarner Losh #include "lzio.h"
13*8e3e3a7aSWarner Losh 
14*8e3e3a7aSWarner Losh 
15*8e3e3a7aSWarner Losh /* data to catch conversion errors */
16*8e3e3a7aSWarner Losh #define LUAC_DATA	"\x19\x93\r\n\x1a\n"
17*8e3e3a7aSWarner Losh 
18*8e3e3a7aSWarner Losh #define LUAC_INT	0x5678
19*8e3e3a7aSWarner Losh #define LUAC_NUM	cast_num(370.5)
20*8e3e3a7aSWarner Losh 
21*8e3e3a7aSWarner Losh #define MYINT(s)	(s[0]-'0')
22*8e3e3a7aSWarner Losh #define LUAC_VERSION	(MYINT(LUA_VERSION_MAJOR)*16+MYINT(LUA_VERSION_MINOR))
23*8e3e3a7aSWarner Losh #define LUAC_FORMAT	0	/* this is the official format */
24*8e3e3a7aSWarner Losh 
25*8e3e3a7aSWarner Losh /* load one chunk; from lundump.c */
26*8e3e3a7aSWarner Losh LUAI_FUNC LClosure* luaU_undump (lua_State* L, ZIO* Z, const char* name);
27*8e3e3a7aSWarner Losh 
28*8e3e3a7aSWarner Losh /* dump one chunk; from ldump.c */
29*8e3e3a7aSWarner Losh LUAI_FUNC int luaU_dump (lua_State* L, const Proto* f, lua_Writer w,
30*8e3e3a7aSWarner Losh                          void* data, int strip);
31*8e3e3a7aSWarner Losh 
32*8e3e3a7aSWarner Losh #endif
33