mirror of
https://github.com/lua/lua
synced 2025-04-16 09:52:49 +03:00
field 'reserved' -> 'extra' (may be used for other purposes too)
This commit is contained in:
parent
9f1a8dbdd3
commit
291f564485
8
llex.c
8
llex.c
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
** $Id: llex.c,v 2.59 2011/11/30 12:43:51 roberto Exp roberto $
|
** $Id: llex.c,v 2.60 2012/01/20 18:35:36 roberto Exp roberto $
|
||||||
** Lexical Analyzer
|
** Lexical Analyzer
|
||||||
** See Copyright Notice in lua.h
|
** See Copyright Notice in lua.h
|
||||||
*/
|
*/
|
||||||
@ -67,7 +67,7 @@ void luaX_init (lua_State *L) {
|
|||||||
for (i=0; i<NUM_RESERVED; i++) {
|
for (i=0; i<NUM_RESERVED; i++) {
|
||||||
TString *ts = luaS_new(L, luaX_tokens[i]);
|
TString *ts = luaS_new(L, luaX_tokens[i]);
|
||||||
luaS_fix(ts); /* reserved words are never collected */
|
luaS_fix(ts); /* reserved words are never collected */
|
||||||
ts->tsv.reserved = cast_byte(i+1); /* reserved word */
|
ts->tsv.extra = cast_byte(i+1); /* reserved word */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -491,8 +491,8 @@ static int llex (LexState *ls, SemInfo *seminfo) {
|
|||||||
ts = luaX_newstring(ls, luaZ_buffer(ls->buff),
|
ts = luaX_newstring(ls, luaZ_buffer(ls->buff),
|
||||||
luaZ_bufflen(ls->buff));
|
luaZ_bufflen(ls->buff));
|
||||||
seminfo->ts = ts;
|
seminfo->ts = ts;
|
||||||
if (ts->tsv.reserved > 0) /* reserved word? */
|
if (isreserved(ts)) /* reserved word? */
|
||||||
return ts->tsv.reserved - 1 + FIRST_RESERVED;
|
return ts->tsv.extra - 1 + FIRST_RESERVED;
|
||||||
else {
|
else {
|
||||||
return TK_NAME;
|
return TK_NAME;
|
||||||
}
|
}
|
||||||
|
@ -409,7 +409,7 @@ typedef union TString {
|
|||||||
L_Umaxalign dummy; /* ensures maximum alignment for strings */
|
L_Umaxalign dummy; /* ensures maximum alignment for strings */
|
||||||
struct {
|
struct {
|
||||||
CommonHeader;
|
CommonHeader;
|
||||||
lu_byte reserved;
|
lu_byte extra; /* reserved words for strings */
|
||||||
unsigned int hash;
|
unsigned int hash;
|
||||||
size_t len; /* number of characters in string */
|
size_t len; /* number of characters in string */
|
||||||
} tsv;
|
} tsv;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
** $Id: lstring.c,v 2.18 2010/05/10 18:23:45 roberto Exp roberto $
|
** $Id: lstring.c,v 2.19 2011/05/03 16:01:57 roberto Exp roberto $
|
||||||
** String table (keeps all strings handled by Lua)
|
** String table (keeps all strings handled by Lua)
|
||||||
** See Copyright Notice in lua.h
|
** See Copyright Notice in lua.h
|
||||||
*/
|
*/
|
||||||
@ -65,7 +65,7 @@ static TString *newlstr (lua_State *L, const char *str, size_t l,
|
|||||||
ts = &luaC_newobj(L, LUA_TSTRING, totalsize, list, 0)->ts;
|
ts = &luaC_newobj(L, LUA_TSTRING, totalsize, list, 0)->ts;
|
||||||
ts->tsv.len = l;
|
ts->tsv.len = l;
|
||||||
ts->tsv.hash = h;
|
ts->tsv.hash = h;
|
||||||
ts->tsv.reserved = 0;
|
ts->tsv.extra = 0;
|
||||||
memcpy(ts+1, str, l*sizeof(char));
|
memcpy(ts+1, str, l*sizeof(char));
|
||||||
((char *)(ts+1))[l] = '\0'; /* ending 0 */
|
((char *)(ts+1))[l] = '\0'; /* ending 0 */
|
||||||
tb->nuse++;
|
tb->nuse++;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user