1 | /* |
2 | ** $Id: ldebug.h $ |
3 | ** Auxiliary functions from Debug Interface module |
4 | ** See Copyright Notice in lua.h |
5 | */ |
6 | |
7 | #ifndef ldebug_h |
8 | #define ldebug_h |
9 | |
10 | |
11 | #include "lstate.h" |
12 | |
13 | |
14 | #define pcRel(pc, p) (cast_int((pc) - (p)->code) - 1) |
15 | |
16 | |
17 | /* Active Lua function (given call info) */ |
18 | #define ci_func(ci) (clLvalue(s2v((ci)->func))) |
19 | |
20 | |
21 | #define resethookcount(L) (L->hookcount = L->basehookcount) |
22 | |
23 | /* |
24 | ** mark for entries in 'lineinfo' array that has absolute information in |
25 | ** 'abslineinfo' array |
26 | */ |
27 | #define ABSLINEINFO (-0x80) |
28 | |
29 | |
30 | /* |
31 | ** MAXimum number of successive Instructions WiTHout ABSolute line |
32 | ** information. (A power of two allows fast divisions.) |
33 | */ |
34 | #if !defined(MAXIWTHABS) |
35 | #define MAXIWTHABS 128 |
36 | #endif |
37 | |
38 | |
39 | LUAI_FUNC int luaG_getfuncline (const Proto *f, int pc); |
40 | LUAI_FUNC const char *luaG_findlocal (lua_State *L, CallInfo *ci, int n, |
41 | StkId *pos); |
42 | LUAI_FUNC l_noret luaG_typeerror (lua_State *L, const TValue *o, |
43 | const char *opname); |
44 | LUAI_FUNC l_noret luaG_callerror (lua_State *L, const TValue *o); |
45 | LUAI_FUNC l_noret luaG_forerror (lua_State *L, const TValue *o, |
46 | const char *what); |
47 | LUAI_FUNC l_noret luaG_concaterror (lua_State *L, const TValue *p1, |
48 | const TValue *p2); |
49 | LUAI_FUNC l_noret luaG_opinterror (lua_State *L, const TValue *p1, |
50 | const TValue *p2, |
51 | const char *msg); |
52 | LUAI_FUNC l_noret luaG_tointerror (lua_State *L, const TValue *p1, |
53 | const TValue *p2); |
54 | LUAI_FUNC l_noret luaG_ordererror (lua_State *L, const TValue *p1, |
55 | const TValue *p2); |
56 | LUAI_FUNC l_noret luaG_runerror (lua_State *L, const char *fmt, ...); |
57 | LUAI_FUNC const char *luaG_addinfo (lua_State *L, const char *msg, |
58 | TString *src, int line); |
59 | LUAI_FUNC l_noret luaG_errormsg (lua_State *L); |
60 | LUAI_FUNC int luaG_traceexec (lua_State *L, const Instruction *pc); |
61 | |
62 | |
63 | #endif |
64 | |