S 32 lib/lua/lundump.c #define error(S,s) S 34 lib/lua/lundump.c #define IF(c,s) if (c) error(S,s) S 36 lib/lua/lundump.c static void error(LoadState* S, const char* why) S 38 lib/lua/lundump.c luaO_pushfstring(S->L,"%s: %s in precompiled chunk",S->name,why); S 39 lib/lua/lundump.c luaD_throw(S->L,LUA_ERRSYNTAX); S 43 lib/lua/lundump.c #define LoadMem(S,b,n,size) LoadBlock(S,b,(n)*(size)) S 44 lib/lua/lundump.c #define LoadByte(S) (lu_byte)LoadChar(S) S 45 lib/lua/lundump.c #define LoadVar(S,x) LoadMem(S,&x,1,sizeof(x)) S 46 lib/lua/lundump.c #define LoadVector(S,b,n,size) LoadMem(S,b,n,size) S 48 lib/lua/lundump.c static void LoadBlock(LoadState* S, void* b, size_t size) S 50 lib/lua/lundump.c size_t r=luaZ_read(S->Z,b,size); S 54 lib/lua/lundump.c static int LoadChar(LoadState* S) S 57 lib/lua/lundump.c LoadVar(S,x); S 61 lib/lua/lundump.c static int LoadInt(LoadState* S) S 64 lib/lua/lundump.c LoadVar(S,x); S 69 lib/lua/lundump.c static lua_Number LoadNumber(LoadState* S) S 72 lib/lua/lundump.c LoadVar(S,x); S 76 lib/lua/lundump.c static TString* LoadString(LoadState* S) S 79 lib/lua/lundump.c LoadVar(S,size); S 84 lib/lua/lundump.c char* s=luaZ_openspace(S->L,S->b,size); S 85 lib/lua/lundump.c LoadBlock(S,s,size); S 86 lib/lua/lundump.c return luaS_newlstr(S->L,s,size-1); /* remove trailing '\0' */ S 90 lib/lua/lundump.c static void LoadCode(LoadState* S, Proto* f) S 92 lib/lua/lundump.c int n=LoadInt(S); S 93 lib/lua/lundump.c f->code=luaM_newvector(S->L,n,Instruction); S 95 lib/lua/lundump.c LoadVector(S,f->code,n,sizeof(Instruction)); S 98 lib/lua/lundump.c static Proto* LoadFunction(LoadState* S, TString* p); S 100 lib/lua/lundump.c static void LoadConstants(LoadState* S, Proto* f) S 103 lib/lua/lundump.c n=LoadInt(S); S 104 lib/lua/lundump.c f->k=luaM_newvector(S->L,n,TValue); S 110 lib/lua/lundump.c int t=LoadChar(S); S 117 lib/lua/lundump.c setbvalue(o,LoadChar(S)!=0); S 120 lib/lua/lundump.c setnvalue(o,LoadNumber(S)); S 123 lib/lua/lundump.c setsvalue2n(S->L,o,LoadString(S)); S 126 lib/lua/lundump.c error(S,"bad constant"); S 130 lib/lua/lundump.c n=LoadInt(S); S 131 lib/lua/lundump.c f->p=luaM_newvector(S->L,n,Proto*); S 134 lib/lua/lundump.c for (i=0; i<n; i++) f->p[i]=LoadFunction(S,f->source); S 137 lib/lua/lundump.c static void LoadDebug(LoadState* S, Proto* f) S 140 lib/lua/lundump.c n=LoadInt(S); S 141 lib/lua/lundump.c f->lineinfo=luaM_newvector(S->L,n,int); S 143 lib/lua/lundump.c LoadVector(S,f->lineinfo,n,sizeof(int)); S 144 lib/lua/lundump.c n=LoadInt(S); S 145 lib/lua/lundump.c f->locvars=luaM_newvector(S->L,n,LocVar); S 150 lib/lua/lundump.c f->locvars[i].varname=LoadString(S); S 151 lib/lua/lundump.c f->locvars[i].startpc=LoadInt(S); S 152 lib/lua/lundump.c f->locvars[i].endpc=LoadInt(S); S 154 lib/lua/lundump.c n=LoadInt(S); S 155 lib/lua/lundump.c f->upvalues=luaM_newvector(S->L,n,TString*); S 158 lib/lua/lundump.c for (i=0; i<n; i++) f->upvalues[i]=LoadString(S); S 161 lib/lua/lundump.c static Proto* LoadFunction(LoadState* S, TString* p) S 164 lib/lua/lundump.c if (++S->L->nCcalls > LUAI_MAXCCALLS) error(S,"code too deep"); S 165 lib/lua/lundump.c f=luaF_newproto(S->L); S 166 lib/lua/lundump.c setptvalue2s(S->L,S->L->top,f); incr_top(S->L); S 167 lib/lua/lundump.c f->source=LoadString(S); if (f->source==NULL) f->source=p; S 168 lib/lua/lundump.c f->linedefined=LoadInt(S); S 169 lib/lua/lundump.c f->lastlinedefined=LoadInt(S); S 170 lib/lua/lundump.c f->nups=LoadByte(S); S 171 lib/lua/lundump.c f->numparams=LoadByte(S); S 172 lib/lua/lundump.c f->is_vararg=LoadByte(S); S 173 lib/lua/lundump.c f->maxstacksize=LoadByte(S); S 174 lib/lua/lundump.c LoadCode(S,f); S 175 lib/lua/lundump.c LoadConstants(S,f); S 176 lib/lua/lundump.c LoadDebug(S,f); S 178 lib/lua/lundump.c S->L->top--; S 179 lib/lua/lundump.c S->L->nCcalls--; S 183 lib/lua/lundump.c static void LoadHeader(LoadState* S) S 188 lib/lua/lundump.c LoadBlock(S,s,LUAC_HEADERSIZE); S 197 lib/lua/lundump.c LoadState S; S 199 lib/lua/lundump.c S.name=name+1; S 201 lib/lua/lundump.c S.name="binary string"; S 203 lib/lua/lundump.c S.name=name; S 204 lib/lua/lundump.c S.L=L; S 205 lib/lua/lundump.c S.Z=Z; S 206 lib/lua/lundump.c S.b=buff; S 207 lib/lua/lundump.c LoadHeader(&S); S 208 lib/lua/lundump.c return LoadFunction(&S,luaS_newliteral(L,"=?")); S 173 lib/lua/print.c S(f->sizecode),f->sizecode*Sizeof(Instruction),VOID(f)); S 176 lib/lua/print.c S(f->maxstacksize),S(f->nups)); S 178 lib/lua/print.c S(f->sizelocvars),S(f->sizek),S(f->sizep));