Module: OpenEHR::AQL

Defined in:
lib/openehr/aql.rb,
lib/openehr/aql/lexer.rb,
lib/openehr/aql/engine.rb,
lib/openehr/aql/errors.rb,
lib/openehr/aql/parser.rb,
lib/openehr/aql/result_set.rb,
lib/openehr/aql/model/query.rb,
lib/openehr/aql/model/literal.rb,
lib/openehr/aql/engine/binding.rb,
lib/openehr/aql/engine/dataset.rb,
lib/openehr/aql/model/predicate.rb,
lib/openehr/aql/model/containment.rb,
lib/openehr/aql/model/from_clause.rb,
lib/openehr/aql/model/object_path.rb,
lib/openehr/aql/model/where_clause.rb,
lib/openehr/aql/model/function_call.rb,
lib/openehr/aql/model/select_clause.rb,
lib/openehr/aql/engine/path_evaluator.rb,
lib/openehr/aql/model/identified_path.rb,
lib/openehr/aql/engine/contains_resolver.rb,
lib/openehr/aql/model/order_by_and_limit.rb,
lib/openehr/aql/engine/predicate_evaluator.rb

Defined Under Namespace

Modules: Model, PathEvaluator, PredicateEvaluator Classes: Binding, ContainsResolver, Dataset, DatasetError, Engine, Error, ExecutionError, Lexer, ParseError, Parser, ResultSet, SemanticError, Token, UnboundParameterError

Class Method Summary collapse

Class Method Details

.execute(source, dataset, params: {}) ⇒ Object



24
25
26
# File 'lib/openehr/aql.rb', line 24

def self.execute(source, dataset, params: {})
  parse(source).execute(dataset, params: params)
end

.parse(source) ⇒ Object



20
21
22
# File 'lib/openehr/aql.rb', line 20

def self.parse(source)
  Parser.new(Lexer.new(source).tokenize).parse_select_query
end