diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2011-02-07 15:14:50 -0200 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2011-02-07 15:14:50 -0200 |
commit | f0797492875dec5bf7a23b9172809bc92c0c04cd (patch) | |
tree | 712c44cd08fc8ee3a12c11029dc50f1988f8628f /llex.h | |
parent | f8d677f94c3b4309be94698d33aeb0590a51eabc (diff) | |
download | lua-f0797492875dec5bf7a23b9172809bc92c0c04cd.tar.gz lua-f0797492875dec5bf7a23b9172809bc92c0c04cd.tar.bz2 lua-f0797492875dec5bf7a23b9172809bc92c0c04cd.zip |
some reorganization of dynamic data structures used by the parser
Diffstat (limited to 'llex.h')
-rw-r--r-- | llex.h | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: llex.h,v 1.66 2011/02/02 14:55:17 roberto Exp roberto $ | 2 | ** $Id: llex.h,v 1.67 2011/02/04 17:34:43 roberto Exp roberto $ |
3 | ** Lexical Analyzer | 3 | ** Lexical Analyzer |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -48,19 +48,19 @@ typedef struct Token { | |||
48 | } Token; | 48 | } Token; |
49 | 49 | ||
50 | 50 | ||
51 | /* state of the lexer plus state of the parser when shared by all | ||
52 | functions */ | ||
51 | typedef struct LexState { | 53 | typedef struct LexState { |
52 | int current; /* current character (charint) */ | 54 | int current; /* current character (charint) */ |
53 | int linenumber; /* input line counter */ | 55 | int linenumber; /* input line counter */ |
54 | int lastline; /* line of last token `consumed' */ | 56 | int lastline; /* line of last token `consumed' */ |
55 | Token t; /* current token */ | 57 | Token t; /* current token */ |
56 | Token lookahead; /* look ahead token */ | 58 | Token lookahead; /* look ahead token */ |
57 | struct FuncState *fs; /* `FuncState' is private to the parser */ | 59 | struct FuncState *fs; /* current function (parser) */ |
58 | struct lua_State *L; | 60 | struct lua_State *L; |
59 | ZIO *z; /* input stream */ | 61 | ZIO *z; /* input stream */ |
60 | Mbuffer *buff; /* buffer for tokens */ | 62 | Mbuffer *buff; /* buffer for tokens */ |
61 | struct Varlist *varl; /* list of all active local variables */ | 63 | struct Dyndata *dyd; /* dynamic structures used by the parser */ |
62 | struct Gotolist *gtl; /* list of pending gotos */ | ||
63 | struct Labellist *labell; /* list of active labels */ | ||
64 | TString *source; /* current source name */ | 64 | TString *source; /* current source name */ |
65 | TString *envn; /* environment variable name */ | 65 | TString *envn; /* environment variable name */ |
66 | char decpoint; /* locale decimal point */ | 66 | char decpoint; /* locale decimal point */ |