Module: ABNF::Compiler::Controls::Rules
Instance Method Summary collapse
- #alternative ⇒ Object
- #concatenation ⇒ Object
- #optional ⇒ Object
- #reference ⇒ Object
- #repetition(range = nil) ⇒ Object
- #space ⇒ Object
- #terminal_value(case_sensitive = false) ⇒ Object
- #value_range ⇒ Object
Instance Method Details
#alternative ⇒ Object
7 8 9 |
# File 'lib/abnf/compiler/controls/rules.rb', line 7 def alternative Compiler::Rule::Alternative.new terminal_value, value_range end |
#concatenation ⇒ Object
11 12 13 |
# File 'lib/abnf/compiler/controls/rules.rb', line 11 def concatenation Compiler::Rule::Concatenation.new terminal_value, reference end |
#optional ⇒ Object
15 16 17 |
# File 'lib/abnf/compiler/controls/rules.rb', line 15 def optional Compiler::Rule::Optional.new terminal_value end |
#reference ⇒ Object
19 20 21 |
# File 'lib/abnf/compiler/controls/rules.rb', line 19 def reference Compiler::Rule::Reference.new 'some-rule' end |
#repetition(range = nil) ⇒ Object
23 24 25 26 27 28 |
# File 'lib/abnf/compiler/controls/rules.rb', line 23 def repetition range = nil range ||= (1..2) element = Rules.terminal_value Compiler::Rule::Repetition.new range, element end |
#space ⇒ Object
30 31 32 |
# File 'lib/abnf/compiler/controls/rules.rb', line 30 def space Compiler::Rule::TerminalValue.new ' ' end |
#terminal_value(case_sensitive = false) ⇒ Object
34 35 36 |
# File 'lib/abnf/compiler/controls/rules.rb', line 34 def terminal_value case_sensitive = false Compiler::Rule::TerminalValue.new 'some-string', case_sensitive end |
#value_range ⇒ Object
38 39 40 |
# File 'lib/abnf/compiler/controls/rules.rb', line 38 def value_range Compiler::Rule::ValueRange.new 'A', 'Z' end |