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