diff options
Diffstat (limited to 'lstate.h')
-rw-r--r-- | lstate.h | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lstate.h,v 2.154 2018/02/09 15:16:06 roberto Exp roberto $ | 2 | ** $Id: lstate.h,v 2.155 2018/02/15 18:06:24 roberto Exp roberto $ |
3 | ** Global State | 3 | ** Global State |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -103,9 +103,13 @@ typedef struct CallInfo { | |||
103 | union { | 103 | union { |
104 | int funcidx; /* called-function index */ | 104 | int funcidx; /* called-function index */ |
105 | int nyield; /* number of values yielded */ | 105 | int nyield; /* number of values yielded */ |
106 | struct { /* info about transfered values (for call/return hooks) */ | ||
107 | unsigned short fTransfer; /* offset of first value transfered */ | ||
108 | unsigned short nTransfer; /* number of values transfered */ | ||
109 | } transferinfo; | ||
106 | } u2; | 110 | } u2; |
107 | short nresults; /* expected number of results from this function */ | 111 | short nresults; /* expected number of results from this function */ |
108 | lu_byte callstatus; | 112 | unsigned short callstatus; |
109 | } CallInfo; | 113 | } CallInfo; |
110 | 114 | ||
111 | 115 | ||
@@ -120,6 +124,7 @@ typedef struct CallInfo { | |||
120 | #define CIST_HOOKYIELD (1<<5) /* last hook called yielded */ | 124 | #define CIST_HOOKYIELD (1<<5) /* last hook called yielded */ |
121 | #define CIST_LEQ (1<<6) /* using __lt for __le */ | 125 | #define CIST_LEQ (1<<6) /* using __lt for __le */ |
122 | #define CIST_FIN (1<<7) /* call is running a finalizer */ | 126 | #define CIST_FIN (1<<7) /* call is running a finalizer */ |
127 | #define CIST_TRAN (1<<8) /* 'ci' has transfer information */ | ||
123 | 128 | ||
124 | /* active function is a Lua function */ | 129 | /* active function is a Lua function */ |
125 | #define isLua(ci) (!((ci)->callstatus & CIST_C)) | 130 | #define isLua(ci) (!((ci)->callstatus & CIST_C)) |