Module: Wongi::Engine::DSL

Defined in:
lib/wongi-engine/dsl.rb,
lib/wongi-engine/dsl.rb,
lib/wongi-engine/dsl/rule.rb,
lib/wongi-engine/dsl/query.rb,
lib/wongi-engine/dsl/builder.rb,
lib/wongi-engine/dsl/any_rule.rb,
lib/wongi-engine/dsl/generated.rb,
lib/wongi-engine/dsl/ncc_subrule.rb

Defined Under Namespace

Modules: Action, Clause, Generated Classes: AnyRule, Builder, NccSubrule, Query, Rule, VariantRule

Class Method Summary collapse

Class Method Details

.dsl(&definition) ⇒ Object



26
27
28
# File 'lib/wongi-engine/dsl.rb', line 26

module_function def dsl(&definition)
  Builder.new.build(&definition)
end

.query(name, &definition) ⇒ Object



20
21
22
23
24
# File 'lib/wongi-engine/dsl.rb', line 20

module_function def query(name, &definition)
  q = Query.new name
  q.instance_eval(&definition)
  q
end

.rule(name = nil, &definition) ⇒ Object



14
15
16
17
18
# File 'lib/wongi-engine/dsl.rb', line 14

module_function def rule(name = nil, &definition)
  r = Rule.new name
  r.instance_eval(&definition)
  r
end

.ruleset(name = nil, &definition) ⇒ Object



7
8
9
10
11
12
# File 'lib/wongi-engine/dsl.rb', line 7

module_function def ruleset(name = nil, &definition)
  rs = Ruleset.new
  rs.name name if name
  rs.instance_eval(&definition) if block_given?
  rs
end

.sectionsObject



3
4
5
# File 'lib/wongi-engine/dsl.rb', line 3

module_function def sections
  @sections ||= {}
end