Module: Dwarves::Parser::BasicRules
Overview
Shared rules common to many parsers.
These can be directly included in your parser class, like so
Instance Method Summary collapse
- #colon ⇒ Object
- #digit ⇒ Object
- #filename ⇒ Object
- #hexadecimal ⇒ Object
- #integer ⇒ Object
- #lparen ⇒ Object
- #newline ⇒ Object
- #newlines ⇒ Object
- #rparen ⇒ Object
- #semicolon ⇒ Object
- #separator ⇒ Object (also: #_)
- #space ⇒ Object
- #space? ⇒ Object
- #word ⇒ Object
- #words ⇒ Object
Instance Method Details
#colon ⇒ Object
22 |
# File 'lib/dwarves/parser/basic_rules.rb', line 22 rule(:colon) { str ":" } |
#digit ⇒ Object
42 |
# File 'lib/dwarves/parser/basic_rules.rb', line 42 rule(:digit) { match("[0-9]").repeat 1 } |
#filename ⇒ Object
68 69 70 |
# File 'lib/dwarves/parser/basic_rules.rb', line 68 rule :filename do match('[^\s]').repeat end |
#hexadecimal ⇒ Object
63 64 65 |
# File 'lib/dwarves/parser/basic_rules.rb', line 63 rule :hexadecimal do str("0x") >> (match("[a-f]") | match("[0-9]")).repeat end |
#integer ⇒ Object
45 |
# File 'lib/dwarves/parser/basic_rules.rb', line 45 rule(:integer) { digit.repeat } |
#lparen ⇒ Object
54 |
# File 'lib/dwarves/parser/basic_rules.rb', line 54 rule(:lparen) { str "(" } |
#newline ⇒ Object
31 |
# File 'lib/dwarves/parser/basic_rules.rb', line 31 rule(:newline) { match('\n').repeat 1 } |
#newlines ⇒ Object
34 |
# File 'lib/dwarves/parser/basic_rules.rb', line 34 rule(:newlines) { newline.repeat } |
#rparen ⇒ Object
57 |
# File 'lib/dwarves/parser/basic_rules.rb', line 57 rule(:rparen) { str ")" } |
#semicolon ⇒ Object
60 |
# File 'lib/dwarves/parser/basic_rules.rb', line 60 rule(:semicolon) { str ";" } |
#separator ⇒ Object Also known as: _
37 |
# File 'lib/dwarves/parser/basic_rules.rb', line 37 rule(:separator) { space? | space } |
#space ⇒ Object
25 |
# File 'lib/dwarves/parser/basic_rules.rb', line 25 rule(:space) { match('\s').repeat 1 } |
#space? ⇒ Object
28 |
# File 'lib/dwarves/parser/basic_rules.rb', line 28 rule(:space?) { space.maybe } |
#word ⇒ Object
48 |
# File 'lib/dwarves/parser/basic_rules.rb', line 48 rule(:word) { match('[a-zA-Z\._0-9]').repeat 1 } |
#words ⇒ Object
51 |
# File 'lib/dwarves/parser/basic_rules.rb', line 51 rule(:words) { word >> (separator >> word).repeat } |