1/* $NetBSD: lundump.h,v 1.8 2023/04/16 20:46:17 nikita Exp $ */ 2 3/* 4** Id: lundump.h 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/* 24** Encode major-minor version in one byte, one nibble for each 25*/ 26#define MYINT(s) (s[0]-'0') /* assume one-digit numerals */ 27#define LUAC_VERSION (MYINT(LUA_VERSION_MAJOR)*16+MYINT(LUA_VERSION_MINOR)) 28 29#define LUAC_FORMAT 0 /* this is the official format */ 30 31/* load one chunk; from lundump.c */ 32LUAI_FUNC LClosure* luaU_undump (lua_State* L, ZIO* Z, const char* name); 33 34/* dump one chunk; from ldump.c */ 35LUAI_FUNC int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, 36 void* data, int strip); 37 38#endif 39