Class: NodeQueryParser
- Inherits:
-
Racc::Parser
- Object
- Racc::Parser
- NodeQueryParser
- Defined in:
- lib/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", "tCOMMA", "tNODE_TYPE", "tGOTO_SCOPE", "tKEY", "tIDENTIFIER_VALUE", "tPSEUDO_CLASS", "tRELATIONSHIP", "tOPEN_ATTRIBUTE", "tCLOSE_ATTRIBUTE", "tOPEN_ARRAY", "tCLOSE_ARRAY", "tOPEN_SELECTOR", "tCLOSE_SELECTOR", "tPOSITION", "tOPERATOR", "tARRAY_VALUE", "tBOOLEAN", "tFLOAT", "tINTEGER", "tNIL", "tREGEXP", "tSTRING", "tSYMBOL", "$start", "expression_list", "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_16(val, _values) ⇒ Object
- #_reduce_17(val, _values) ⇒ Object
- #_reduce_18(val, _values) ⇒ Object
- #_reduce_2(val, _values) ⇒ Object
-
#_reduce_20(val, _values) ⇒ Object
reduce 19 omitted.
- #_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_26(val, _values) ⇒ Object
- #_reduce_27(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(adapter:) ⇒ NodeQueryParser
constructor
A new instance of NodeQueryParser.
- #next_token ⇒ Object
- #parse(string) ⇒ Object
Constructor Details
#initialize(adapter:) ⇒ NodeQueryParser
Returns a new instance of NodeQueryParser.
10 11 12 13 |
# File 'lib/node_query_parser.racc.rb', line 10 def initialize(adapter:) @lexer = NodeQueryLexer.new @adapter = adapter end |
Instance Method Details
#_reduce_1(val, _values) ⇒ Object
reduce 0 omitted
202 203 204 |
# File 'lib/node_query_parser.racc.rb', line 202 def _reduce_1(val, _values) NodeQuery::Compiler::ExpressionList.new(expression: val[0], rest: val[2]) end |
#_reduce_10(val, _values) ⇒ Object
238 239 240 |
# File 'lib/node_query_parser.racc.rb', line 238 def _reduce_10(val, _values) NodeQuery::Compiler::BasicSelector.new(node_type: val[0], adapter: @adapter) end |
#_reduce_11(val, _values) ⇒ Object
242 243 244 |
# File 'lib/node_query_parser.racc.rb', line 242 def _reduce_11(val, _values) NodeQuery::Compiler::BasicSelector.new(node_type: val[0], attribute_list: val[1], adapter: @adapter) end |
#_reduce_12(val, _values) ⇒ Object
246 247 248 |
# File 'lib/node_query_parser.racc.rb', line 246 def _reduce_12(val, _values) NodeQuery::Compiler::AttributeList.new(attribute: val[0], rest: val[1]) end |
#_reduce_13(val, _values) ⇒ Object
250 251 252 |
# File 'lib/node_query_parser.racc.rb', line 250 def _reduce_13(val, _values) NodeQuery::Compiler::AttributeList.new(attribute: val[0]) end |
#_reduce_14(val, _values) ⇒ Object
254 255 256 |
# File 'lib/node_query_parser.racc.rb', line 254 def _reduce_14(val, _values) NodeQuery::Compiler::Attribute.new(key: val[1], value: val[3], operator: val[2], adapter: @adapter) end |
#_reduce_15(val, _values) ⇒ Object
258 259 260 |
# File 'lib/node_query_parser.racc.rb', line 258 def _reduce_15(val, _values) NodeQuery::Compiler::Attribute.new(key: val[1], value: NodeQuery::Compiler::ArrayValue.new(adapter: @adapter), operator: val[2], adapter: @adapter) end |
#_reduce_16(val, _values) ⇒ Object
262 263 264 |
# File 'lib/node_query_parser.racc.rb', line 262 def _reduce_16(val, _values) NodeQuery::Compiler::Attribute.new(key: val[1], value: val[4], operator: val[2], adapter: @adapter) end |
#_reduce_17(val, _values) ⇒ Object
266 267 268 |
# File 'lib/node_query_parser.racc.rb', line 266 def _reduce_17(val, _values) NodeQuery::Compiler::ArrayValue.new(value: val[0], rest: val[1], adapter: @adapter) end |
#_reduce_18(val, _values) ⇒ Object
270 271 272 |
# File 'lib/node_query_parser.racc.rb', line 270 def _reduce_18(val, _values) NodeQuery::Compiler::ArrayValue.new(value: val[0], adapter: @adapter) end |
#_reduce_2(val, _values) ⇒ Object
206 207 208 |
# File 'lib/node_query_parser.racc.rb', line 206 def _reduce_2(val, _values) NodeQuery::Compiler::ExpressionList.new(expression: val[0]) end |
#_reduce_20(val, _values) ⇒ Object
reduce 19 omitted
276 277 278 |
# File 'lib/node_query_parser.racc.rb', line 276 def _reduce_20(val, _values) NodeQuery::Compiler::Boolean.new(value: val[0], adapter: @adapter) end |
#_reduce_21(val, _values) ⇒ Object
280 281 282 |
# File 'lib/node_query_parser.racc.rb', line 280 def _reduce_21(val, _values) NodeQuery::Compiler::Float.new(value: val[0], adapter: @adapter) end |
#_reduce_22(val, _values) ⇒ Object
284 285 286 |
# File 'lib/node_query_parser.racc.rb', line 284 def _reduce_22(val, _values) NodeQuery::Compiler::Integer.new(value: val[0], adapter: @adapter) end |
#_reduce_23(val, _values) ⇒ Object
288 289 290 |
# File 'lib/node_query_parser.racc.rb', line 288 def _reduce_23(val, _values) NodeQuery::Compiler::Nil.new(value: val[0], adapter: @adapter) end |
#_reduce_24(val, _values) ⇒ Object
292 293 294 |
# File 'lib/node_query_parser.racc.rb', line 292 def _reduce_24(val, _values) NodeQuery::Compiler::Regexp.new(value: val[0], adapter: @adapter) end |
#_reduce_25(val, _values) ⇒ Object
296 297 298 |
# File 'lib/node_query_parser.racc.rb', line 296 def _reduce_25(val, _values) NodeQuery::Compiler::String.new(value: val[0], adapter: @adapter) end |
#_reduce_26(val, _values) ⇒ Object
300 301 302 |
# File 'lib/node_query_parser.racc.rb', line 300 def _reduce_26(val, _values) NodeQuery::Compiler::Symbol.new(value: val[0], adapter: @adapter) end |
#_reduce_27(val, _values) ⇒ Object
304 305 306 |
# File 'lib/node_query_parser.racc.rb', line 304 def _reduce_27(val, _values) NodeQuery::Compiler::Identifier.new(value: val[0], adapter: @adapter) end |
#_reduce_3(val, _values) ⇒ Object
210 211 212 |
# File 'lib/node_query_parser.racc.rb', line 210 def _reduce_3(val, _values) NodeQuery::Compiler::Expression.new(selector: val[0], rest: val[1]) end |
#_reduce_4(val, _values) ⇒ Object
214 215 216 |
# File 'lib/node_query_parser.racc.rb', line 214 def _reduce_4(val, _values) NodeQuery::Compiler::Expression.new(selector: val[0]) end |
#_reduce_5(val, _values) ⇒ Object
218 219 220 |
# File 'lib/node_query_parser.racc.rb', line 218 def _reduce_5(val, _values) NodeQuery::Compiler::Selector.new(basic_selector: val[0], position: val[1], adapter: @adapter ) end |
#_reduce_6(val, _values) ⇒ Object
222 223 224 |
# File 'lib/node_query_parser.racc.rb', line 222 def _reduce_6(val, _values) NodeQuery::Compiler::Selector.new(basic_selector: val[0], adapter: @adapter) end |
#_reduce_7(val, _values) ⇒ Object
226 227 228 |
# File 'lib/node_query_parser.racc.rb', line 226 def _reduce_7(val, _values) NodeQuery::Compiler::Selector.new(pseudo_class: val[0], pseudo_selector: val[2], adapter: @adapter) end |
#_reduce_8(val, _values) ⇒ Object
230 231 232 |
# File 'lib/node_query_parser.racc.rb', line 230 def _reduce_8(val, _values) NodeQuery::Compiler::Selector.new(relationship: val[0], rest: val[1], adapter: @adapter) end |
#_reduce_9(val, _values) ⇒ Object
234 235 236 |
# File 'lib/node_query_parser.racc.rb', line 234 def _reduce_9(val, _values) NodeQuery::Compiler::Selector.new(goto_scope: val[0], rest: val[1], adapter: @adapter) end |
#_reduce_none(val, _values) ⇒ Object
308 309 310 |
# File 'lib/node_query_parser.racc.rb', line 308 def _reduce_none(val, _values) val[0] end |
#next_token ⇒ Object
20 21 22 |
# File 'lib/node_query_parser.racc.rb', line 20 def next_token @lexer.next_token end |
#parse(string) ⇒ Object
15 16 17 18 |
# File 'lib/node_query_parser.racc.rb', line 15 def parse string @lexer.parse string do_parse end |