Class: Code::Parser::Dictionary
- Defined in:
- lib/code/parser/dictionary.rb
Instance Method Summary collapse
- #closing_curly_bracket ⇒ Object
- #code_present ⇒ Object
- #colon ⇒ Object
- #comma ⇒ Object
- #equal ⇒ Object
- #greater ⇒ Object
- #key_value ⇒ Object
- #label_name ⇒ Object
- #name ⇒ Object
- #opening_curly_bracket ⇒ Object
- #root ⇒ Object
- #statement ⇒ Object
- #whitespace ⇒ Object
- #whitespace? ⇒ Boolean
Instance Method Details
#closing_curly_bracket ⇒ Object
34 35 36 |
# File 'lib/code/parser/dictionary.rb', line 34 def closing_curly_bracket str("}") end |
#code_present ⇒ Object
6 7 8 |
# File 'lib/code/parser/dictionary.rb', line 6 def code_present Code.new.present end |
#colon ⇒ Object
42 43 44 |
# File 'lib/code/parser/dictionary.rb', line 42 def colon str(":") end |
#comma ⇒ Object
38 39 40 |
# File 'lib/code/parser/dictionary.rb', line 38 def comma str(",") end |
#equal ⇒ Object
46 47 48 |
# File 'lib/code/parser/dictionary.rb', line 46 def equal str("=") end |
#greater ⇒ Object
50 51 52 |
# File 'lib/code/parser/dictionary.rb', line 50 def greater str(">") end |
#key_value ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/code/parser/dictionary.rb', line 54 def key_value (label_name.aka(:name) << colon << code_present.aka(:code).maybe).aka( :name_code ) | ( statement.aka(:statement) << colon << code_present.aka(:code).maybe ).aka(:statement_code) | ( statement.aka(:statement) << whitespace? << equal << greater << code_present.aka(:code).maybe ).aka(:statement_code) | code_present.aka(:code) end |
#label_name ⇒ Object
18 19 20 |
# File 'lib/code/parser/dictionary.rb', line 18 def label_name LabelName end |
#name ⇒ Object
14 15 16 |
# File 'lib/code/parser/dictionary.rb', line 14 def name Name end |
#opening_curly_bracket ⇒ Object
30 31 32 |
# File 'lib/code/parser/dictionary.rb', line 30 def opening_curly_bracket str("{") end |
#root ⇒ Object
67 68 69 70 71 72 73 |
# File 'lib/code/parser/dictionary.rb', line 67 def root ( opening_curly_bracket.ignore << whitespace? << (whitespace? << key_value << (whitespace? << comma).maybe).repeat << (whitespace? << closing_curly_bracket.ignore).maybe ).aka(:dictionnary) | List end |
#statement ⇒ Object
10 11 12 |
# File 'lib/code/parser/dictionary.rb', line 10 def statement Statement end |
#whitespace ⇒ Object
22 23 24 |
# File 'lib/code/parser/dictionary.rb', line 22 def whitespace Whitespace end |
#whitespace? ⇒ Boolean
26 27 28 |
# File 'lib/code/parser/dictionary.rb', line 26 def whitespace? whitespace.maybe end |