Class: Query
- Inherits:
-
Object
show all
- Defined in:
- lib/query.rb,
lib/query/node.rb,
lib/query/parser.rb,
lib/query/combiner.rb,
lib/query/node/key.rb,
lib/query/decompiler.rb,
lib/query/node/query.rb,
lib/query/node/range.rb,
lib/query/node/value.rb,
lib/query/parser/key.rb,
lib/query/node/base_2.rb,
lib/query/node/base_8.rb,
lib/query/node/number.rb,
lib/query/node/string.rb,
lib/query/parser/part.rb,
lib/query/node/base_10.rb,
lib/query/node/base_16.rb,
lib/query/node/boolean.rb,
lib/query/node/decimal.rb,
lib/query/parser/group.rb,
lib/query/parser/query.rb,
lib/query/parser/range.rb,
lib/query/parser/value.rb,
lib/query/node/operator.rb,
lib/query/parser/number.rb,
lib/query/parser/string.rb,
lib/query/node/key_value.rb,
lib/query/parser/boolean.rb,
lib/query/parser/special.rb,
lib/query/parser/operator.rb,
lib/query/parser/key_value.rb,
lib/query/parser/statement.rb,
lib/query/parser/whitespace.rb,
lib/query/parser/not_operator.rb,
lib/query/parser/logic_operator.rb
Defined Under Namespace
Classes: Combiner, Decompiler, Node, Parser
Constant Summary
collapse
- Version =
Gem::Version.new(File.read(File.expand_path("../../VERSION", __dir__)))
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(source) ⇒ Query
Returns a new instance of Query.
6
7
8
|
# File 'lib/query.rb', line 6
def initialize(source)
self.source = source
end
|
Instance Attribute Details
Returns the value of attribute source.
4
5
6
|
# File 'lib/query.rb', line 4
def source
@source
end
|
Class Method Details
.combine(*sources) ⇒ Object
18
19
20
|
# File 'lib/query.rb', line 18
def self.combine(*sources)
Combiner.combine(*sources)
end
|
.decompile(parsed) ⇒ Object
14
15
16
|
# File 'lib/query.rb', line 14
def self.decompile(parsed)
Decompiler.decompile(parsed)
end
|
22
23
24
|
# File 'lib/query.rb', line 22
def self.evaluate(...)
new(...).evaluate
end
|
.parse(source) ⇒ Object
10
11
12
|
# File 'lib/query.rb', line 10
def self.parse(source)
Parser.parse(source).to_raw
end
|
Instance Method Details
26
27
28
|
# File 'lib/query.rb', line 26
def evaluate
Node::Query.new(Query.parse(source)).evaluate
end
|