Class: Synvert::Core::NodeQuery::Parser
- Inherits:
-
Racc::Parser
- Object
- Racc::Parser
- Synvert::Core::NodeQuery::Parser
- Defined in:
- lib/synvert/core/node_query/parser.racc.rb
Constant Summary collapse
- Racc_arg =
[ racc_action_table, racc_action_check, racc_action_default, racc_action_pointer, racc_goto_table, racc_goto_check, racc_goto_default, racc_goto_pointer, racc_nt_base, racc_reduce_table, racc_token_table, racc_shift_n, racc_reduce_n, racc_use_result_var ]
- Racc_token_to_s_table =
[ "$end", "error", "tNODE_TYPE", "tGOTO_SCOPE", "tATTRIBUTE", "tKEY", "tIDENTIFIER", "tIDENTIFIER_VALUE", "tPSEUDO_CLASS", "tRELATIONSHIP", "tOPEN_ATTRIBUTE", "tCLOSE_ATTRIBUTE", "tOPEN_DYNAMIC_ATTRIBUTE", "tCLOSE_DYNAMIC_ATTRIBUTE", "tOPEN_ARRAY", "tCLOSE_ARRAY", "tOPEN_SELECTOR", "tCLOSE_SELECTOR", "tOPERATOR", "tARRAY_VALUE", "tDYNAMIC_ATTRIBUTE", "tBOOLEAN", "tFLOAT", "tINTEGER", "tNIL", "tREGEXP", "tSTRING", "tSYMBOL", "$start", "expression", "selector", "basic_selector", "attribute_list", "attribute", "value", "array_value" ]
- Racc_debug_parser =
false
Instance Method Summary collapse
-
#_reduce_1(val, _values) ⇒ Object
reduce 0 omitted.
- #_reduce_10(val, _values) ⇒ Object
- #_reduce_11(val, _values) ⇒ Object
- #_reduce_12(val, _values) ⇒ Object
- #_reduce_13(val, _values) ⇒ Object
- #_reduce_14(val, _values) ⇒ Object
- #_reduce_15(val, _values) ⇒ Object
-
#_reduce_17(val, _values) ⇒ Object
reduce 16 omitted.
- #_reduce_18(val, _values) ⇒ Object
- #_reduce_19(val, _values) ⇒ Object
- #_reduce_2(val, _values) ⇒ Object
- #_reduce_20(val, _values) ⇒ Object
- #_reduce_21(val, _values) ⇒ Object
- #_reduce_22(val, _values) ⇒ Object
- #_reduce_23(val, _values) ⇒ Object
- #_reduce_24(val, _values) ⇒ Object
- #_reduce_25(val, _values) ⇒ Object
- #_reduce_3(val, _values) ⇒ Object
- #_reduce_4(val, _values) ⇒ Object
- #_reduce_5(val, _values) ⇒ Object
- #_reduce_6(val, _values) ⇒ Object
- #_reduce_7(val, _values) ⇒ Object
- #_reduce_8(val, _values) ⇒ Object
- #_reduce_9(val, _values) ⇒ Object
- #_reduce_none(val, _values) ⇒ Object
-
#initialize ⇒ Parser
constructor
A new instance of Parser.
- #next_token ⇒ Object
- #parse(string) ⇒ Object
Constructor Details
Instance Method Details
#_reduce_1(val, _values) ⇒ Object
reduce 0 omitted
201 202 203 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 201 def _reduce_1(val, _values) Compiler::Expression.new(selector: val[0], rest: val[1]) end |
#_reduce_10(val, _values) ⇒ Object
237 238 239 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 237 def _reduce_10(val, _values) Compiler::AttributeList.new(attribute: val[1]) end |
#_reduce_11(val, _values) ⇒ Object
241 242 243 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 241 def _reduce_11(val, _values) Compiler::Attribute.new(key: val[0], value: val[2], operator: val[1]) end |
#_reduce_12(val, _values) ⇒ Object
245 246 247 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 245 def _reduce_12(val, _values) Compiler::Attribute.new(key: val[0], value: Compiler::Array.new, operator: val[1]) end |
#_reduce_13(val, _values) ⇒ Object
249 250 251 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 249 def _reduce_13(val, _values) Compiler::Attribute.new(key: val[0], value: val[3], operator: val[1]) end |
#_reduce_14(val, _values) ⇒ Object
253 254 255 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 253 def _reduce_14(val, _values) Compiler::Array.new(value: val[0], rest: val[1]) end |
#_reduce_15(val, _values) ⇒ Object
257 258 259 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 257 def _reduce_15(val, _values) Compiler::Array.new(value: val[0]) end |
#_reduce_17(val, _values) ⇒ Object
reduce 16 omitted
263 264 265 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 263 def _reduce_17(val, _values) Compiler::DynamicAttribute.new(value: val[1]) end |
#_reduce_18(val, _values) ⇒ Object
267 268 269 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 267 def _reduce_18(val, _values) Compiler::Boolean.new(value: val[0]) end |
#_reduce_19(val, _values) ⇒ Object
271 272 273 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 271 def _reduce_19(val, _values) Compiler::Float.new(value: val[0]) end |
#_reduce_2(val, _values) ⇒ Object
205 206 207 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 205 def _reduce_2(val, _values) Compiler::Expression.new(selector: val[0]) end |
#_reduce_20(val, _values) ⇒ Object
275 276 277 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 275 def _reduce_20(val, _values) Compiler::Integer.new(value: val[0]) end |
#_reduce_21(val, _values) ⇒ Object
279 280 281 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 279 def _reduce_21(val, _values) Compiler::Nil.new(value: val[0]) end |
#_reduce_22(val, _values) ⇒ Object
283 284 285 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 283 def _reduce_22(val, _values) Compiler::Regexp.new(value: val[0]) end |
#_reduce_23(val, _values) ⇒ Object
287 288 289 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 287 def _reduce_23(val, _values) Compiler::String.new(value: val[0]) end |
#_reduce_24(val, _values) ⇒ Object
291 292 293 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 291 def _reduce_24(val, _values) Compiler::Symbol.new(value: val[0]) end |
#_reduce_25(val, _values) ⇒ Object
295 296 297 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 295 def _reduce_25(val, _values) Compiler::Identifier.new(value: val[0]) end |
#_reduce_3(val, _values) ⇒ Object
209 210 211 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 209 def _reduce_3(val, _values) Compiler::Selector.new(basic_selector: val[0]) end |
#_reduce_4(val, _values) ⇒ Object
213 214 215 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 213 def _reduce_4(val, _values) Compiler::Selector.new(pseudo_class: val[0], pseudo_selector: val[2]) end |
#_reduce_5(val, _values) ⇒ Object
217 218 219 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 217 def _reduce_5(val, _values) Compiler::Selector.new(relationship: val[0], rest: val[1]) end |
#_reduce_6(val, _values) ⇒ Object
221 222 223 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 221 def _reduce_6(val, _values) Compiler::Selector.new(goto_scope: val[0], rest: val[1]) end |
#_reduce_7(val, _values) ⇒ Object
225 226 227 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 225 def _reduce_7(val, _values) Compiler::BasicSelector.new(node_type: val[0]) end |
#_reduce_8(val, _values) ⇒ Object
229 230 231 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 229 def _reduce_8(val, _values) Compiler::BasicSelector.new(node_type: val[0], attribute_list: val[1]) end |
#_reduce_9(val, _values) ⇒ Object
233 234 235 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 233 def _reduce_9(val, _values) Compiler::AttributeList.new(attribute: val[1], rest: val[3]) end |
#_reduce_none(val, _values) ⇒ Object
299 300 301 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 299 def _reduce_none(val, _values) val[0] end |
#next_token ⇒ Object
22 23 24 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 22 def next_token @lexer.next_token end |
#parse(string) ⇒ Object
17 18 19 20 |
# File 'lib/synvert/core/node_query/parser.racc.rb', line 17 def parse string @lexer.parse string do_parse end |