Module: Fbtxt

Defined in:
lib/sportdb/parser.rb

Class Method Summary collapse

Class Method Details

.lex(txt, flatten: true) ⇒ Object

returns SportDb::LexerResult (ok?/tokens/errors)



119
120
121
122
123
124
# File 'lib/sportdb/parser.rb', line 119

def self.lex( txt, flatten: true )      ## returns SportDb::LexerResult (ok?/tokens/errors)
  lexer = SportDb::Lexer.new( txt )
  ## move "wrapping" into result obj inside lexer - why? why not?
  tokens, errors = lexer.tokenize_with_errors( flatten: flatten )
  SportDb::LexerResult.new( tokens, errors )
end

.parse(txt) ⇒ Object

returns SportDb::ParserResult (ok?/tree/errors)



126
127
128
129
130
131
# File 'lib/sportdb/parser.rb', line 126

def self.parse( txt )   ## returns SportDb::ParserResult (ok?/tree/errors)
  parser = SportDb::Parser.new( txt )
  ## move "wrapping" into result obj inside parser - why? why not?
  tree, errors = parser.parse_with_errors
  SportDb::ParserResult.new( tree, errors )
end