diff options
Diffstat (limited to 'lparser.h')
| -rw-r--r-- | lparser.h | 5 |
1 files changed, 4 insertions, 1 deletions
| @@ -30,7 +30,9 @@ typedef enum { | |||
| 30 | VFALSE, /* constant false */ | 30 | VFALSE, /* constant false */ |
| 31 | VK, /* constant in 'k'; info = index of constant in 'k' */ | 31 | VK, /* constant in 'k'; info = index of constant in 'k' */ |
| 32 | VKFLT, /* floating constant; nval = numerical float value */ | 32 | VKFLT, /* floating constant; nval = numerical float value */ |
| 33 | VKINT, /* integer constant; nval = numerical integer value */ | 33 | VKINT, /* integer constant; ival = numerical integer value */ |
| 34 | VKSTR, /* string constant; strval = TString address; | ||
| 35 | (string is fixed by the lexer) */ | ||
| 34 | VNONRELOC, /* expression has its value in a fixed register; | 36 | VNONRELOC, /* expression has its value in a fixed register; |
| 35 | info = result register */ | 37 | info = result register */ |
| 36 | VLOCAL, /* local variable; var.ridx = local register; | 38 | VLOCAL, /* local variable; var.ridx = local register; |
| @@ -67,6 +69,7 @@ typedef struct expdesc { | |||
| 67 | union { | 69 | union { |
| 68 | lua_Integer ival; /* for VKINT */ | 70 | lua_Integer ival; /* for VKINT */ |
| 69 | lua_Number nval; /* for VKFLT */ | 71 | lua_Number nval; /* for VKFLT */ |
| 72 | TString *strval; /* for VKSTR */ | ||
| 70 | int info; /* for generic use */ | 73 | int info; /* for generic use */ |
| 71 | struct { /* for indexed variables */ | 74 | struct { /* for indexed variables */ |
| 72 | short idx; /* index (R or "long" K) */ | 75 | short idx; /* index (R or "long" K) */ |
