end
end
-redef class TKwuniversal
+redef class TKwenum
redef fun parser_index: Int
do
return 7
end
- init init_tk(loc: Location)
+ init init_tk(text: String, loc: Location)
do
- _text = once "universal"
+ _text = text
_location = loc
end
end
end
end
-redef class TGt
+redef class TLl
redef fun parser_index: Int
do
return 73
init init_tk(loc: Location)
do
+ _text = once "<<"
+ _location = loc
+ end
+end
+
+redef class TGt
+ redef fun parser_index: Int
+ do
+ return 74
+ end
+
+ init init_tk(loc: Location)
+ do
_text = once ">"
_location = loc
end
redef class TGe
redef fun parser_index: Int
do
- return 74
+ return 75
end
init init_tk(loc: Location)
end
end
+redef class TGg
+ redef fun parser_index: Int
+ do
+ return 76
+ end
+
+ init init_tk(loc: Location)
+ do
+ _text = once ">>"
+ _location = loc
+ end
+end
+
redef class TStarship
redef fun parser_index: Int
do
- return 75
+ return 77
end
init init_tk(loc: Location)
redef class TBang
redef fun parser_index: Int
do
- return 76
+ return 78
end
init init_tk(loc: Location)
redef class TClassid
redef fun parser_index: Int
do
- return 77
+ return 79
end
init init_tk(text: String, loc: Location)
redef class TId
redef fun parser_index: Int
do
- return 78
+ return 80
end
init init_tk(text: String, loc: Location)
redef class TAttrid
redef fun parser_index: Int
do
- return 79
+ return 81
end
init init_tk(text: String, loc: Location)
redef class TNumber
redef fun parser_index: Int
do
- return 80
+ return 82
end
init init_tk(text: String, loc: Location)
redef class TFloat
redef fun parser_index: Int
do
- return 81
+ return 83
end
init init_tk(text: String, loc: Location)
redef class TChar
redef fun parser_index: Int
do
- return 82
+ return 84
end
init init_tk(text: String, loc: Location)
redef class TString
redef fun parser_index: Int
do
- return 83
+ return 85
end
init init_tk(text: String, loc: Location)
redef class TStartString
redef fun parser_index: Int
do
- return 84
+ return 86
end
init init_tk(text: String, loc: Location)
redef class TMidString
redef fun parser_index: Int
do
- return 85
+ return 87
end
init init_tk(text: String, loc: Location)
redef class TEndString
redef fun parser_index: Int
do
- return 86
+ return 88
end
init init_tk(text: String, loc: Location)
redef class EOF
redef fun parser_index: Int
do
- return 87
+ return 89
end
init(loc: Location)
# The lexer extract NIT tokens from an input stream.
# It is better user with the Parser
class Lexer
-special TablesCapable
+ super TablesCapable
# Last peeked token
var _token: nullable Token
result = get_token
end
_token = null
- return result.as(not null)
+ return result
end
# Get a token, or null if it is discarded
return new TKwinterface.init_tk(location)
end
if accept_token == 8 then
- return new TKwuniversal.init_tk(location)
+ var token_text = text.substring(0, accept_length)
+ return new TKwenum.init_tk(token_text, location)
end
if accept_token == 9 then
return new TKwspecial.init_tk(location)
return new TLe.init_tk(location)
end
if accept_token == 74 then
- return new TGt.init_tk(location)
+ return new TLl.init_tk(location)
end
if accept_token == 75 then
- return new TGe.init_tk(location)
+ return new TGt.init_tk(location)
end
if accept_token == 76 then
- return new TStarship.init_tk(location)
+ return new TGe.init_tk(location)
end
if accept_token == 77 then
- return new TBang.init_tk(location)
+ return new TGg.init_tk(location)
end
if accept_token == 78 then
+ return new TStarship.init_tk(location)
+ end
+ if accept_token == 79 then
+ return new TBang.init_tk(location)
+ end
+ if accept_token == 80 then
var token_text = text.substring(0, accept_length)
return new TClassid.init_tk(token_text, location)
end
- if accept_token == 79 then
+ if accept_token == 81 then
var token_text = text.substring(0, accept_length)
return new TId.init_tk(token_text, location)
end
- if accept_token == 80 then
+ if accept_token == 82 then
var token_text = text.substring(0, accept_length)
return new TAttrid.init_tk(token_text, location)
end
- if accept_token == 81 then
+ if accept_token == 83 then
var token_text = text.substring(0, accept_length)
return new TNumber.init_tk(token_text, location)
end
- if accept_token == 82 then
+ if accept_token == 84 then
var token_text = text.substring(0, accept_length)
return new TFloat.init_tk(token_text, location)
end
- if accept_token == 83 then
+ if accept_token == 85 then
var token_text = text.substring(0, accept_length)
return new TChar.init_tk(token_text, location)
end
- if accept_token == 84 then
+ if accept_token == 86 then
var token_text = text.substring(0, accept_length)
return new TString.init_tk(token_text, location)
end
- if accept_token == 85 then
+ if accept_token == 87 then
var token_text = text.substring(0, accept_length)
return new TStartString.init_tk(token_text, location)
end
- if accept_token == 86 then
+ if accept_token == 88 then
var token_text = text.substring(0, accept_length)
return new TMidString.init_tk(token_text, location)
end
- if accept_token == 87 then
+ if accept_token == 89 then
var token_text = text.substring(0, accept_length)
return new TEndString.init_tk(token_text, location)
end
end
end
end
- if false then break # FIXME remove once unreach loop exits are in c_src
end
- return null # FIXME remove once unreach loop exits are in c_src
end
# Read the next character.