diff options
| author | Li Jin <dragon-fly@qq.com> | 2020-06-22 16:50:40 +0800 |
|---|---|---|
| committer | Li Jin <dragon-fly@qq.com> | 2020-06-22 16:50:40 +0800 |
| commit | cd2b60b101a398cb9356d746364e70eaed1860f1 (patch) | |
| tree | a1fe71b76faabc4883f16905a94164ce5c23e692 /src/lua-5.3/lfunc.h | |
| parent | 88c1052e700f38cf3d8ad82d469da4c487760b7e (diff) | |
| download | yuescript-cd2b60b101a398cb9356d746364e70eaed1860f1.tar.gz yuescript-cd2b60b101a398cb9356d746364e70eaed1860f1.tar.bz2 yuescript-cd2b60b101a398cb9356d746364e70eaed1860f1.zip | |
add support for local variable declared with attribute 'close' and 'const' for Lua 5.4.
Diffstat (limited to 'src/lua-5.3/lfunc.h')
| -rw-r--r-- | src/lua-5.3/lfunc.h | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/src/lua-5.3/lfunc.h b/src/lua-5.3/lfunc.h deleted file mode 100644 index c916e98..0000000 --- a/src/lua-5.3/lfunc.h +++ /dev/null | |||
| @@ -1,61 +0,0 @@ | |||
| 1 | /* | ||
| 2 | ** $Id: lfunc.h,v 2.15.1.1 2017/04/19 17:39:34 roberto Exp $ | ||
| 3 | ** Auxiliary functions to manipulate prototypes and closures | ||
| 4 | ** See Copyright Notice in lua.h | ||
| 5 | */ | ||
| 6 | |||
| 7 | #ifndef lfunc_h | ||
| 8 | #define lfunc_h | ||
| 9 | |||
| 10 | |||
| 11 | #include "lobject.h" | ||
| 12 | |||
| 13 | |||
| 14 | #define sizeCclosure(n) (cast(int, sizeof(CClosure)) + \ | ||
| 15 | cast(int, sizeof(TValue)*((n)-1))) | ||
| 16 | |||
| 17 | #define sizeLclosure(n) (cast(int, sizeof(LClosure)) + \ | ||
| 18 | cast(int, sizeof(TValue *)*((n)-1))) | ||
| 19 | |||
| 20 | |||
| 21 | /* test whether thread is in 'twups' list */ | ||
| 22 | #define isintwups(L) (L->twups != L) | ||
| 23 | |||
| 24 | |||
| 25 | /* | ||
| 26 | ** maximum number of upvalues in a closure (both C and Lua). (Value | ||
| 27 | ** must fit in a VM register.) | ||
| 28 | */ | ||
| 29 | #define MAXUPVAL 255 | ||
| 30 | |||
| 31 | |||
| 32 | /* | ||
| 33 | ** Upvalues for Lua closures | ||
| 34 | */ | ||
| 35 | struct UpVal { | ||
| 36 | TValue *v; /* points to stack or to its own value */ | ||
| 37 | lu_mem refcount; /* reference counter */ | ||
| 38 | union { | ||
| 39 | struct { /* (when open) */ | ||
| 40 | UpVal *next; /* linked list */ | ||
| 41 | int touched; /* mark to avoid cycles with dead threads */ | ||
| 42 | } open; | ||
| 43 | TValue value; /* the value (when closed) */ | ||
| 44 | } u; | ||
| 45 | }; | ||
| 46 | |||
| 47 | #define upisopen(up) ((up)->v != &(up)->u.value) | ||
| 48 | |||
| 49 | |||
| 50 | LUAI_FUNC Proto *luaF_newproto (lua_State *L); | ||
| 51 | LUAI_FUNC CClosure *luaF_newCclosure (lua_State *L, int nelems); | ||
| 52 | LUAI_FUNC LClosure *luaF_newLclosure (lua_State *L, int nelems); | ||
| 53 | LUAI_FUNC void luaF_initupvals (lua_State *L, LClosure *cl); | ||
| 54 | LUAI_FUNC UpVal *luaF_findupval (lua_State *L, StkId level); | ||
| 55 | LUAI_FUNC void luaF_close (lua_State *L, StkId level); | ||
| 56 | LUAI_FUNC void luaF_freeproto (lua_State *L, Proto *f); | ||
| 57 | LUAI_FUNC const char *luaF_getlocalname (const Proto *func, int local_number, | ||
| 58 | int pc); | ||
| 59 | |||
| 60 | |||
| 61 | #endif | ||
