examples/general/SRL/lib/tokenizer.rb in rley-0.5.14 vs examples/general/SRL/lib/tokenizer.rb in rley-0.6.00
- old
+ new
@@ -13,11 +13,10 @@
# Separators: comma (optional)
class Tokenizer
attr_reader(:scanner)
attr_reader(:lineno)
attr_reader(:line_start)
- attr_reader(:name2symbol)
@@lexeme2name = {
'(' => 'LPAREN',
')' => 'RPAREN',
',' => 'COMMA'
@@ -76,13 +75,12 @@
WITH
].map { |x| [x, x] } .to_h
class ScanError < StandardError; end
- def initialize(source, aGrammar)
+ def initialize(source)
@scanner = StringScanner.new(source)
- @name2symbol = aGrammar.name2symbol
@lineno = 1
end
def tokens()
tok_sequence = []
@@ -130,12 +128,11 @@
return token
end
def build_token(aSymbolName, aLexeme)
- token_type = name2symbol[aSymbolName]
begin
- token = Rley::Lexical::Token.new(aLexeme, token_type)
+ token = Rley::Lexical::Token.new(aLexeme, aSymbolName)
rescue Exception => ex
puts "Failing with '#{aSymbolName}' and '#{aLexeme}'"
raise ex
end