Class: Factbase::Syntax

Inherits:
Object
  • Object
show all
Defined in:
lib/factbase/syntax.rb

Overview

Syntax.

Author

Yegor Bugayenko ([email protected])

Copyright

Copyright © 2024 Yegor Bugayenko

License

MIT

Instance Method Summary collapse

Constructor Details

#initialize(query) ⇒ Syntax

Ctor.

Parameters:

  • query (String)

    The query, for example “(eq id 42)”



34
35
36
# File 'lib/factbase/syntax.rb', line 34

def initialize(query)
  @query = query
end

Instance Method Details

#to_termTerm

Convert it to a term.

Returns:

  • (Term)

    The term detected



40
41
42
43
44
45
46
# File 'lib/factbase/syntax.rb', line 40

def to_term
  @tokens ||= to_tokens
  @ast ||= to_ast(@tokens, 0)
  term = @ast[0]
  raise 'No terms found' if term.nil?
  term
end