X-Git-Url: http://nitlanguage.org diff --git a/src/parser/lexer_work.nit b/src/parser/lexer_work.nit index 4fc9eda..d8c287a 100644 --- a/src/parser/lexer_work.nit +++ b/src/parser/lexer_work.nit @@ -19,34 +19,29 @@ intrude import parser_nodes private import tables redef class Token - var _text: nullable String + private var cached_text: nullable String redef fun text do - var res = _text + var res = _cached_text if res != null then return res res = location.text - _text = res + _cached_text = res return res end redef fun text=(text) do - _text = text + _cached_text = text end fun parser_index: Int is abstract end redef class EOF - redef fun parser_index: Int - do - return 97 - end - init init_tk(loc: Location) do - _text = "" + _cached_text = "" _location = loc end end @@ -86,25 +81,25 @@ end class Lexer super TablesCapable # Last peeked token - var _token: nullable Token + var token: nullable Token # Lexer current state - var _state: Int = 0 + private var state: Int = 0 # The source file var file: SourceFile # Current character in the stream - var _stream_pos: Int = 0 + var stream_pos: Int = 0 # Current line number in the input stream - var _line: Int = 0 + var line: Int = 0 # Current column in the input stream - var _pos: Int = 0 + var pos: Int = 0 - # Was the last character a cariage-return? - var _cr: Bool = false + # Was the last character a carriage-return? + var cr: Bool = false # Constante state values private fun state_initial: Int do return 0 end