#include "lua.h"#include "ldebug.h"#include "lfunc.h"#include "lmem.h"#include "lopcodes.h"#include "lstring.h"#include "lundump.h"#include "lzio.h"Go to the source code of this file.
Data Structures | |
| struct | LoadState |
Defines | |
| #define | lundump_c |
| #define | LoadByte (lu_byte) ezgetc |
| #define | TESTSIZE(s, w) TestSize(S,s,w) |
| #define | V(v) v/16,v%16 |
Functions | |
| static void | unexpectedEOZ (LoadState *S) |
| static int | ezgetc (LoadState *S) |
| static void | ezread (LoadState *S, void *b, int n) |
| static void | LoadBlock (LoadState *S, void *b, size_t size) |
| static void | LoadVector (LoadState *S, void *b, int m, size_t size) |
| static int | LoadInt (LoadState *S) |
| static size_t | LoadSize (LoadState *S) |
| static lua_Number | LoadNumber (LoadState *S) |
| static TString * | LoadString (LoadState *S) |
| static void | LoadCode (LoadState *S, Proto *f) |
| static void | LoadLocals (LoadState *S, Proto *f) |
| static void | LoadLines (LoadState *S, Proto *f) |
| static void | LoadUpvalues (LoadState *S, Proto *f) |
| static Proto * | LoadFunction (LoadState *S, TString *p) |
| static void | LoadConstants (LoadState *S, Proto *f) |
| static void | LoadSignature (LoadState *S) |
| static void | TestSize (LoadState *S, int s, const char *what) |
| static void | LoadHeader (LoadState *S) |
| static Proto * | LoadChunk (LoadState *S) |
| Proto * | luaU_undump (lua_State *L, ZIO *Z, Mbuffer *buff) |
| int | luaU_endianness (void) |
| #define LoadByte (lu_byte) ezgetc |
Definition at line 19 of file lundump.c.
Referenced by LoadConstants(), LoadFunction(), LoadHeader(), and TestSize().
| #define TESTSIZE | ( | s, | |||
| w | ) | TestSize(S,s,w) |
| #define V | ( | v | ) | v/16,v%16 |
| static int ezgetc | ( | LoadState * | S | ) | [static] |
Definition at line 36 of file lundump.c.
References EOZ, unexpectedEOZ(), LoadState::Z, and zgetc.
Referenced by LoadBlock(), LoadSignature(), and LoadVector().
| static void ezread | ( | LoadState * | S, | |
| void * | b, | |||
| int | n | |||
| ) | [static] |
Definition at line 44 of file lundump.c.
References luaZ_read(), unexpectedEOZ(), and LoadState::Z.
Referenced by LoadBlock(), LoadString(), and LoadVector().
| static void LoadBlock | ( | LoadState * | S, | |
| void * | b, | |||
| size_t | size | |||
| ) | [static] |
Definition at line 51 of file lundump.c.
References ezgetc(), ezread(), and LoadState::swap.
Referenced by LoadInt(), LoadNumber(), and LoadSize().
Definition at line 277 of file lundump.c.
References LoadFunction(), and LoadHeader().
Referenced by luaU_undump().
Definition at line 122 of file lundump.c.
References Proto::code, LoadState::L, LoadInt(), LoadVector(), luaM_newvector, and Proto::sizecode.
Referenced by LoadFunction().
Definition at line 172 of file lundump.c.
References Proto::k, LoadState::L, LoadByte, LoadFunction(), LoadInt(), LoadNumber(), LoadString(), luaG_runerror(), luaM_newvector, LoadState::name, Proto::p, setnilvalue, setnvalue, setsvalue2n, Proto::sizek, Proto::sizep, and Proto::source.
Referenced by LoadFunction().
Definition at line 205 of file lundump.c.
References Proto::is_vararg, LoadState::L, Proto::lineDefined, LoadByte, LoadCode(), LoadConstants(), LoadInt(), LoadLines(), LoadLocals(), LoadString(), LoadUpvalues(), luaF_newproto(), luaG_checkcode(), luaG_runerror(), Proto::maxstacksize, LoadState::name, Proto::numparams, Proto::nups, and Proto::source.
Referenced by LoadChunk(), and LoadConstants().
| static void LoadHeader | ( | LoadState * | S | ) | [static] |
Definition at line 247 of file lundump.c.
References LoadState::L, LoadByte, LoadNumber(), LoadSignature(), luaG_runerror(), luaU_endianness(), LoadState::name, SIZE_A, SIZE_B, SIZE_C, SIZE_OP, LoadState::swap, TEST_NUMBER, TESTSIZE, V, VERSION, and VERSION0.
Referenced by LoadChunk().
| static int LoadInt | ( | LoadState * | S | ) | [static] |
Definition at line 82 of file lundump.c.
References LoadState::L, LoadBlock(), luaG_runerror(), and LoadState::name.
Referenced by LoadCode(), LoadConstants(), LoadFunction(), LoadLines(), LoadLocals(), and LoadUpvalues().
Definition at line 146 of file lundump.c.
References LoadState::L, Proto::lineinfo, LoadInt(), LoadVector(), luaM_newvector, and Proto::sizelineinfo.
Referenced by LoadFunction().
Definition at line 131 of file lundump.c.
References LocVar::endpc, LoadState::L, LoadInt(), LoadString(), Proto::locvars, luaM_newvector, Proto::sizelocvars, LocVar::startpc, and LocVar::varname.
Referenced by LoadFunction().
| static lua_Number LoadNumber | ( | LoadState * | S | ) | [static] |
Definition at line 99 of file lundump.c.
References LoadBlock().
Referenced by LoadConstants(), and LoadHeader().
| static void LoadSignature | ( | LoadState * | S | ) | [static] |
Definition at line 226 of file lundump.c.
References ezgetc(), LoadState::L, LUA_SIGNATURE, luaG_runerror(), and LoadState::name.
Referenced by LoadHeader().
| static size_t LoadSize | ( | LoadState * | S | ) | [static] |
Definition at line 108 of file lundump.c.
References LoadState::b, ezread(), LoadState::L, LoadSize(), luaS_newlstr(), and luaZ_openspace().
Referenced by LoadConstants(), LoadFunction(), LoadLocals(), and LoadUpvalues().
Definition at line 155 of file lundump.c.
References LoadState::L, LoadInt(), LoadString(), luaG_runerror(), luaM_newvector, LoadState::name, Proto::nups, Proto::sizeupvalues, and Proto::upvalues.
Referenced by LoadFunction().
| static void LoadVector | ( | LoadState * | S, | |
| void * | b, | |||
| int | m, | |||
| size_t | size | |||
| ) | [static] |
Definition at line 64 of file lundump.c.
References ezgetc(), ezread(), and LoadState::swap.
Referenced by LoadCode(), and LoadLines().
| int luaU_endianness | ( | void | ) |
Definition at line 287 of file lundump.c.
References LoadState::b, LoadState::L, LoadChunk(), LUA_SIGNATURE, LoadState::name, LoadState::Z, and zname.
Referenced by f_parser().
| static void TestSize | ( | LoadState * | S, | |
| int | s, | |||
| const char * | what | |||
| ) | [static] |
Definition at line 235 of file lundump.c.
References LoadState::L, LoadByte, luaG_runerror(), and LoadState::name.
| static void unexpectedEOZ | ( | LoadState * | S | ) | [static] |
Definition at line 30 of file lundump.c.
References LoadState::L, luaG_runerror(), and LoadState::name.
1.5.2