Class: Code::Parser::SquareBracket
- Inherits:
-
Language
- Object
- Language
- Code::Parser::SquareBracket
- Defined in:
- lib/code/parser/square_bracket.rb
Instance Method Summary collapse
- #left_square_bracket ⇒ Object
- #right_square_bracket ⇒ Object
- #root ⇒ Object
- #square_bracket ⇒ Object
- #statement ⇒ Object
- #whitespace ⇒ Object
- #whitespace? ⇒ Boolean
Instance Method Details
#left_square_bracket ⇒ Object
22 23 24 |
# File 'lib/code/parser/square_bracket.rb', line 22 def left_square_bracket str("[") end |
#right_square_bracket ⇒ Object
26 27 28 |
# File 'lib/code/parser/square_bracket.rb', line 26 def right_square_bracket str("]") end |
#root ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/code/parser/square_bracket.rb', line 30 def root ( statement.aka(:left) << ( left_square_bracket << whitespace? << square_bracket << (whitespace? << right_square_bracket).maybe ).repeat(1).aka(:statements).maybe ) .aka(:square_bracket) .then do |output| if output[:square_bracket][:statements] output else output[:square_bracket][:left] end end end |
#square_bracket ⇒ Object
10 11 12 |
# File 'lib/code/parser/square_bracket.rb', line 10 def square_bracket SquareBracket end |
#statement ⇒ Object
6 7 8 |
# File 'lib/code/parser/square_bracket.rb', line 6 def statement UnaryMinus end |
#whitespace ⇒ Object
14 15 16 |
# File 'lib/code/parser/square_bracket.rb', line 14 def whitespace Whitespace end |
#whitespace? ⇒ Boolean
18 19 20 |
# File 'lib/code/parser/square_bracket.rb', line 18 def whitespace? whitespace.maybe end |