synvert-core 1.2.1 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/Gemfile +9 -0
- data/lib/synvert/core/node_query/compiler/attribute.rb +6 -18
- data/lib/synvert/core/node_query/compiler/comparable.rb +26 -19
- data/lib/synvert/core/node_query/compiler/expression.rb +8 -76
- data/lib/synvert/core/node_query/compiler/identifier.rb +1 -1
- data/lib/synvert/core/node_query/compiler/regexp.rb +2 -2
- data/lib/synvert/core/node_query/compiler/selector.rb +102 -20
- data/lib/synvert/core/node_query/compiler/simple_selector.rb +29 -0
- data/lib/synvert/core/node_query/compiler/string.rb +1 -1
- data/lib/synvert/core/node_query/compiler.rb +1 -0
- data/lib/synvert/core/node_query/lexer.rex +19 -16
- data/lib/synvert/core/node_query/lexer.rex.rb +33 -27
- data/lib/synvert/core/node_query/parser.racc.rb +117 -279
- data/lib/synvert/core/node_query/parser.y +17 -34
- data/lib/synvert/core/version.rb +1 -1
- data/spec/synvert/core/node_query/lexer_spec.rb +48 -48
- data/spec/synvert/core/node_query/parser_spec.rb +138 -106
- data/spec/synvert/core/rewriter/instance_spec.rb +3 -3
- data/spec/synvert/core/rewriter/scope/query_scope_spec.rb +3 -3
- data/synvert-core-ruby.gemspec +0 -10
- metadata +3 -128
@@ -29,7 +29,7 @@ module Synvert::Core::NodeQuery
|
|
29
29
|
[:tNODE_TYPE, "send"],
|
30
30
|
[:tOPEN_ATTRIBUTE, "["],
|
31
31
|
[:tKEY, "message"],
|
32
|
-
[:
|
32
|
+
[:tOPERATOR, "=="],
|
33
33
|
[:tIDENTIFIER_VALUE, "create"],
|
34
34
|
[:tCLOSE_ATTRIBUTE, "]"]
|
35
35
|
]
|
@@ -42,7 +42,7 @@ module Synvert::Core::NodeQuery
|
|
42
42
|
[:tNODE_TYPE, "send"],
|
43
43
|
[:tOPEN_ATTRIBUTE, "["],
|
44
44
|
[:tKEY, "receiver"],
|
45
|
-
[:
|
45
|
+
[:tOPERATOR, "=="],
|
46
46
|
[:tNIL, nil],
|
47
47
|
[:tCLOSE_ATTRIBUTE, "]"]
|
48
48
|
]
|
@@ -55,7 +55,7 @@ module Synvert::Core::NodeQuery
|
|
55
55
|
[:tNODE_TYPE, "send"],
|
56
56
|
[:tOPEN_ATTRIBUTE, "["],
|
57
57
|
[:tKEY, "message"],
|
58
|
-
[:
|
58
|
+
[:tOPERATOR, "=="],
|
59
59
|
[:tSTRING, "create"],
|
60
60
|
[:tCLOSE_ATTRIBUTE, "]"]
|
61
61
|
]
|
@@ -68,7 +68,7 @@ module Synvert::Core::NodeQuery
|
|
68
68
|
[:tNODE_TYPE, "send"],
|
69
69
|
[:tOPEN_ATTRIBUTE, "["],
|
70
70
|
[:tKEY, "message"],
|
71
|
-
[:
|
71
|
+
[:tOPERATOR, "=="],
|
72
72
|
[:tSTRING, "[]"],
|
73
73
|
[:tCLOSE_ATTRIBUTE, "]"]
|
74
74
|
]
|
@@ -81,7 +81,7 @@ module Synvert::Core::NodeQuery
|
|
81
81
|
[:tNODE_TYPE, "send"],
|
82
82
|
[:tOPEN_ATTRIBUTE, "["],
|
83
83
|
[:tKEY, "message"],
|
84
|
-
[:
|
84
|
+
[:tOPERATOR, "=="],
|
85
85
|
[:tSYMBOL, :create],
|
86
86
|
[:tCLOSE_ATTRIBUTE, "]"]
|
87
87
|
]
|
@@ -93,7 +93,7 @@ module Synvert::Core::NodeQuery
|
|
93
93
|
expected_tokens = [
|
94
94
|
[:tOPEN_ATTRIBUTE, "["],
|
95
95
|
[:tKEY, "value"],
|
96
|
-
[:
|
96
|
+
[:tOPERATOR, "=="],
|
97
97
|
[:tINTEGER, 1],
|
98
98
|
[:tCLOSE_ATTRIBUTE, "]"]
|
99
99
|
]
|
@@ -106,7 +106,7 @@ module Synvert::Core::NodeQuery
|
|
106
106
|
[:tNODE_TYPE, "send"],
|
107
107
|
[:tOPEN_ATTRIBUTE, "["],
|
108
108
|
[:tKEY, "value"],
|
109
|
-
[:
|
109
|
+
[:tOPERATOR, "=="],
|
110
110
|
[:tFLOAT, 1.1],
|
111
111
|
[:tCLOSE_ATTRIBUTE, "]"]
|
112
112
|
]
|
@@ -119,7 +119,7 @@ module Synvert::Core::NodeQuery
|
|
119
119
|
[:tNODE_TYPE, "send"],
|
120
120
|
[:tOPEN_ATTRIBUTE, "["],
|
121
121
|
[:tKEY, "value"],
|
122
|
-
[:
|
122
|
+
[:tOPERATOR, "=="],
|
123
123
|
[:tBOOLEAN, true],
|
124
124
|
[:tCLOSE_ATTRIBUTE, "]"]
|
125
125
|
]
|
@@ -132,7 +132,7 @@ module Synvert::Core::NodeQuery
|
|
132
132
|
[:tNODE_TYPE, "send"],
|
133
133
|
[:tOPEN_ATTRIBUTE, "["],
|
134
134
|
[:tKEY, "message"],
|
135
|
-
[:
|
135
|
+
[:tOPERATOR, "=="],
|
136
136
|
[:tIDENTIFIER_VALUE, "create!"],
|
137
137
|
[:tCLOSE_ATTRIBUTE, "]"]
|
138
138
|
]
|
@@ -145,7 +145,7 @@ module Synvert::Core::NodeQuery
|
|
145
145
|
[:tNODE_TYPE, "send"],
|
146
146
|
[:tOPEN_ATTRIBUTE, "["],
|
147
147
|
[:tKEY, "message"],
|
148
|
-
[:
|
148
|
+
[:tOPERATOR, "=="],
|
149
149
|
[:tIDENTIFIER_VALUE, "empty?"],
|
150
150
|
[:tCLOSE_ATTRIBUTE, "]"]
|
151
151
|
]
|
@@ -158,7 +158,7 @@ module Synvert::Core::NodeQuery
|
|
158
158
|
[:tNODE_TYPE, "send"],
|
159
159
|
[:tOPEN_ATTRIBUTE, "["],
|
160
160
|
[:tKEY, "message"],
|
161
|
-
[:
|
161
|
+
[:tOPERATOR, "=="],
|
162
162
|
[:tIDENTIFIER_VALUE, "<"],
|
163
163
|
[:tCLOSE_ATTRIBUTE, "]"]
|
164
164
|
]
|
@@ -169,7 +169,7 @@ module Synvert::Core::NodeQuery
|
|
169
169
|
[:tNODE_TYPE, "send"],
|
170
170
|
[:tOPEN_ATTRIBUTE, "["],
|
171
171
|
[:tKEY, "message"],
|
172
|
-
[:
|
172
|
+
[:tOPERATOR, "=="],
|
173
173
|
[:tIDENTIFIER_VALUE, "="],
|
174
174
|
[:tCLOSE_ATTRIBUTE, "]"]
|
175
175
|
]
|
@@ -180,7 +180,7 @@ module Synvert::Core::NodeQuery
|
|
180
180
|
[:tNODE_TYPE, "send"],
|
181
181
|
[:tOPEN_ATTRIBUTE, "["],
|
182
182
|
[:tKEY, "message"],
|
183
|
-
[:
|
183
|
+
[:tOPERATOR, "=="],
|
184
184
|
[:tIDENTIFIER_VALUE, ">"],
|
185
185
|
[:tCLOSE_ATTRIBUTE, "]"]
|
186
186
|
]
|
@@ -193,7 +193,7 @@ module Synvert::Core::NodeQuery
|
|
193
193
|
[:tNODE_TYPE, "send"],
|
194
194
|
[:tOPEN_ATTRIBUTE, "["],
|
195
195
|
[:tKEY, "arguments.first"],
|
196
|
-
[:
|
196
|
+
[:tOPERATOR, "=="],
|
197
197
|
[:tSTRING, ""],
|
198
198
|
[:tCLOSE_ATTRIBUTE, "]"]
|
199
199
|
]
|
@@ -206,7 +206,7 @@ module Synvert::Core::NodeQuery
|
|
206
206
|
[:tNODE_TYPE, "send"],
|
207
207
|
[:tOPEN_ATTRIBUTE, "["],
|
208
208
|
[:tKEY, "message"],
|
209
|
-
[:
|
209
|
+
[:tOPERATOR, "=="],
|
210
210
|
[:tIDENTIFIER_VALUE, "[]"],
|
211
211
|
[:tCLOSE_ATTRIBUTE, "]"]
|
212
212
|
]
|
@@ -219,7 +219,7 @@ module Synvert::Core::NodeQuery
|
|
219
219
|
[:tNODE_TYPE, "send"],
|
220
220
|
[:tOPEN_ATTRIBUTE, "["],
|
221
221
|
[:tKEY, "message"],
|
222
|
-
[:
|
222
|
+
[:tOPERATOR, "=="],
|
223
223
|
[:tSYMBOL, :[]=],
|
224
224
|
[:tCLOSE_ATTRIBUTE, "]"]
|
225
225
|
]
|
@@ -232,7 +232,7 @@ module Synvert::Core::NodeQuery
|
|
232
232
|
[:tNODE_TYPE, "send"],
|
233
233
|
[:tOPEN_ATTRIBUTE, "["],
|
234
234
|
[:tKEY, "message"],
|
235
|
-
[:
|
235
|
+
[:tOPERATOR, "=="],
|
236
236
|
[:tIDENTIFIER_VALUE, "nil?"],
|
237
237
|
[:tCLOSE_ATTRIBUTE, "]"]
|
238
238
|
]
|
@@ -245,7 +245,7 @@ module Synvert::Core::NodeQuery
|
|
245
245
|
[:tNODE_TYPE, "pair"],
|
246
246
|
[:tOPEN_ATTRIBUTE, "["],
|
247
247
|
[:tKEY, "key"],
|
248
|
-
[:
|
248
|
+
[:tOPERATOR, "=="],
|
249
249
|
[:tOPEN_DYNAMIC_ATTRIBUTE, "{{"],
|
250
250
|
[:tDYNAMIC_ATTRIBUTE, "value"],
|
251
251
|
[:tCLOSE_DYNAMIC_ATTRIBUTE, "}}"],
|
@@ -265,11 +265,11 @@ module Synvert::Core::NodeQuery
|
|
265
265
|
[:tNODE_TYPE, "send"],
|
266
266
|
[:tOPEN_ATTRIBUTE, "["],
|
267
267
|
[:tKEY, "receiver"],
|
268
|
-
[:
|
268
|
+
[:tOPERATOR, "=="],
|
269
269
|
[:tNODE_TYPE, "send"],
|
270
270
|
[:tOPEN_ATTRIBUTE, "["],
|
271
271
|
[:tKEY, "message"],
|
272
|
-
[:
|
272
|
+
[:tOPERATOR, "=="],
|
273
273
|
[:tSYMBOL, :create],
|
274
274
|
[:tCLOSE_ATTRIBUTE, "]"],
|
275
275
|
[:tCLOSE_ATTRIBUTE, "]"]
|
@@ -287,20 +287,20 @@ module Synvert::Core::NodeQuery
|
|
287
287
|
[:tNODE_TYPE, "send"],
|
288
288
|
[:tOPEN_ATTRIBUTE, "["],
|
289
289
|
[:tKEY, "arguments"],
|
290
|
-
[:
|
290
|
+
[:tOPERATOR, "=="],
|
291
291
|
[:tOPEN_ATTRIBUTE, "["],
|
292
292
|
[:tKEY, "size"],
|
293
|
-
[:
|
293
|
+
[:tOPERATOR, "=="],
|
294
294
|
[:tINTEGER, 2],
|
295
295
|
[:tCLOSE_ATTRIBUTE, "]"],
|
296
296
|
[:tOPEN_ATTRIBUTE, "["],
|
297
297
|
[:tKEY, "first"],
|
298
|
-
[:
|
298
|
+
[:tOPERATOR, "=="],
|
299
299
|
[:tNODE_TYPE, "str"],
|
300
300
|
[:tCLOSE_ATTRIBUTE, "]"],
|
301
301
|
[:tOPEN_ATTRIBUTE, "["],
|
302
302
|
[:tKEY, "last"],
|
303
|
-
[:
|
303
|
+
[:tOPERATOR, "=="],
|
304
304
|
[:tNODE_TYPE, "str"],
|
305
305
|
[:tCLOSE_ATTRIBUTE, "]"],
|
306
306
|
[:tCLOSE_ATTRIBUTE, "]"]
|
@@ -316,7 +316,7 @@ module Synvert::Core::NodeQuery
|
|
316
316
|
[:tNODE_TYPE, "send"],
|
317
317
|
[:tOPEN_ATTRIBUTE, "["],
|
318
318
|
[:tKEY, "message"],
|
319
|
-
[:
|
319
|
+
[:tOPERATOR, "!="],
|
320
320
|
[:tIDENTIFIER_VALUE, "create"],
|
321
321
|
[:tCLOSE_ATTRIBUTE, "]"]
|
322
322
|
]
|
@@ -328,7 +328,7 @@ module Synvert::Core::NodeQuery
|
|
328
328
|
expected_tokens = [
|
329
329
|
[:tOPEN_ATTRIBUTE, "["],
|
330
330
|
[:tKEY, "value"],
|
331
|
-
[:
|
331
|
+
[:tOPERATOR, ">"],
|
332
332
|
[:tINTEGER, 1],
|
333
333
|
[:tCLOSE_ATTRIBUTE, "]"]
|
334
334
|
]
|
@@ -340,7 +340,7 @@ module Synvert::Core::NodeQuery
|
|
340
340
|
expected_tokens = [
|
341
341
|
[:tOPEN_ATTRIBUTE, "["],
|
342
342
|
[:tKEY, "value"],
|
343
|
-
[:
|
343
|
+
[:tOPERATOR, "<"],
|
344
344
|
[:tINTEGER, 1],
|
345
345
|
[:tCLOSE_ATTRIBUTE, "]"]
|
346
346
|
]
|
@@ -352,7 +352,7 @@ module Synvert::Core::NodeQuery
|
|
352
352
|
expected_tokens = [
|
353
353
|
[:tOPEN_ATTRIBUTE, "["],
|
354
354
|
[:tKEY, "value"],
|
355
|
-
[:
|
355
|
+
[:tOPERATOR, ">="],
|
356
356
|
[:tINTEGER, 1],
|
357
357
|
[:tCLOSE_ATTRIBUTE, "]"]
|
358
358
|
]
|
@@ -364,7 +364,7 @@ module Synvert::Core::NodeQuery
|
|
364
364
|
expected_tokens = [
|
365
365
|
[:tOPEN_ATTRIBUTE, "["],
|
366
366
|
[:tKEY, "value"],
|
367
|
-
[:
|
367
|
+
[:tOPERATOR, "<="],
|
368
368
|
[:tINTEGER, 1],
|
369
369
|
[:tCLOSE_ATTRIBUTE, "]"]
|
370
370
|
]
|
@@ -377,7 +377,7 @@ module Synvert::Core::NodeQuery
|
|
377
377
|
[:tNODE_TYPE, "send"],
|
378
378
|
[:tOPEN_ATTRIBUTE, "["],
|
379
379
|
[:tKEY, "message"],
|
380
|
-
[:
|
380
|
+
[:tOPERATOR, "=~"],
|
381
381
|
[:tREGEXP, /create/i],
|
382
382
|
[:tCLOSE_ATTRIBUTE, "]"]
|
383
383
|
]
|
@@ -390,7 +390,7 @@ module Synvert::Core::NodeQuery
|
|
390
390
|
[:tNODE_TYPE, "send"],
|
391
391
|
[:tOPEN_ATTRIBUTE, "["],
|
392
392
|
[:tKEY, "message"],
|
393
|
-
[:
|
393
|
+
[:tOPERATOR, "!~"],
|
394
394
|
[:tREGEXP, /create/i],
|
395
395
|
[:tCLOSE_ATTRIBUTE, "]"]
|
396
396
|
]
|
@@ -403,7 +403,7 @@ module Synvert::Core::NodeQuery
|
|
403
403
|
[:tNODE_TYPE, "send"],
|
404
404
|
[:tOPEN_ATTRIBUTE, "["],
|
405
405
|
[:tKEY, "arguments"],
|
406
|
-
[:
|
406
|
+
[:tOPERATOR, "=="],
|
407
407
|
[:tOPEN_ARRAY, "("],
|
408
408
|
[:tCLOSE_ARRAY, ")"],
|
409
409
|
[:tCLOSE_ATTRIBUTE, "]"]
|
@@ -417,7 +417,7 @@ module Synvert::Core::NodeQuery
|
|
417
417
|
[:tNODE_TYPE, "send"],
|
418
418
|
[:tOPEN_ATTRIBUTE, "["],
|
419
419
|
[:tKEY, "arguments"],
|
420
|
-
[:
|
420
|
+
[:tOPERATOR, "=="],
|
421
421
|
[:tOPEN_ARRAY, "("],
|
422
422
|
[:tSYMBOL, :create],
|
423
423
|
[:tCLOSE_ARRAY, ")"],
|
@@ -432,7 +432,7 @@ module Synvert::Core::NodeQuery
|
|
432
432
|
[:tNODE_TYPE, "send"],
|
433
433
|
[:tOPEN_ATTRIBUTE, "["],
|
434
434
|
[:tKEY, "arguments"],
|
435
|
-
[:
|
435
|
+
[:tOPERATOR, "!="],
|
436
436
|
[:tOPEN_ARRAY, "("],
|
437
437
|
[:tSYMBOL, :create],
|
438
438
|
[:tCLOSE_ARRAY, ")"],
|
@@ -447,7 +447,7 @@ module Synvert::Core::NodeQuery
|
|
447
447
|
[:tNODE_TYPE, "send"],
|
448
448
|
[:tOPEN_ATTRIBUTE, "["],
|
449
449
|
[:tKEY, "message"],
|
450
|
-
[:
|
450
|
+
[:tOPERATOR, "in"],
|
451
451
|
[:tOPEN_ARRAY, "("],
|
452
452
|
[:tIDENTIFIER_VALUE, "create"],
|
453
453
|
[:tIDENTIFIER_VALUE, "build"],
|
@@ -463,7 +463,7 @@ module Synvert::Core::NodeQuery
|
|
463
463
|
[:tNODE_TYPE, "send"],
|
464
464
|
[:tOPEN_ATTRIBUTE, "["],
|
465
465
|
[:tKEY, "message"],
|
466
|
-
[:
|
466
|
+
[:tOPERATOR, "not_in"],
|
467
467
|
[:tOPEN_ARRAY, "("],
|
468
468
|
[:tIDENTIFIER_VALUE, "create"],
|
469
469
|
[:tIDENTIFIER_VALUE, "build"],
|
@@ -479,7 +479,7 @@ module Synvert::Core::NodeQuery
|
|
479
479
|
[:tNODE_TYPE, "send"],
|
480
480
|
[:tOPEN_ATTRIBUTE, "["],
|
481
481
|
[:tKEY, "arguments"],
|
482
|
-
[:
|
482
|
+
[:tOPERATOR, "includes"],
|
483
483
|
[:tIDENTIFIER_VALUE, "&block"],
|
484
484
|
[:tCLOSE_ATTRIBUTE, "]"]
|
485
485
|
]
|
@@ -494,7 +494,7 @@ module Synvert::Core::NodeQuery
|
|
494
494
|
[:tNODE_TYPE, "send"],
|
495
495
|
[:tOPEN_ATTRIBUTE, "["],
|
496
496
|
[:tKEY, "receiver.message"],
|
497
|
-
[:
|
497
|
+
[:tOPERATOR, "=="],
|
498
498
|
[:tSYMBOL, :create],
|
499
499
|
[:tCLOSE_ATTRIBUTE, "]"]
|
500
500
|
]
|
@@ -509,7 +509,7 @@ module Synvert::Core::NodeQuery
|
|
509
509
|
[:tNODE_TYPE, "send"],
|
510
510
|
[:tOPEN_ATTRIBUTE, "["],
|
511
511
|
[:tKEY, "arguments"],
|
512
|
-
[:
|
512
|
+
[:tOPERATOR, "=="],
|
513
513
|
[:tSYMBOL, :create],
|
514
514
|
[:tCLOSE_ATTRIBUTE, "]"],
|
515
515
|
[:tINDEX, 0]
|
@@ -523,7 +523,7 @@ module Synvert::Core::NodeQuery
|
|
523
523
|
[:tNODE_TYPE, "send"],
|
524
524
|
[:tOPEN_ATTRIBUTE, "["],
|
525
525
|
[:tKEY, "arguments"],
|
526
|
-
[:
|
526
|
+
[:tOPERATOR, "=="],
|
527
527
|
[:tSYMBOL, :create],
|
528
528
|
[:tCLOSE_ATTRIBUTE, "]"],
|
529
529
|
[:tINDEX, -1]
|
@@ -537,7 +537,7 @@ module Synvert::Core::NodeQuery
|
|
537
537
|
[:tNODE_TYPE, "send"],
|
538
538
|
[:tOPEN_ATTRIBUTE, "["],
|
539
539
|
[:tKEY, "arguments"],
|
540
|
-
[:
|
540
|
+
[:tOPERATOR, "=="],
|
541
541
|
[:tSYMBOL, :create],
|
542
542
|
[:tCLOSE_ATTRIBUTE, "]"],
|
543
543
|
[:tINDEX, 0]
|
@@ -551,7 +551,7 @@ module Synvert::Core::NodeQuery
|
|
551
551
|
[:tNODE_TYPE, "send"],
|
552
552
|
[:tOPEN_ATTRIBUTE, "["],
|
553
553
|
[:tKEY, "arguments"],
|
554
|
-
[:
|
554
|
+
[:tOPERATOR, "=="],
|
555
555
|
[:tSYMBOL, :create],
|
556
556
|
[:tCLOSE_ATTRIBUTE, "]"],
|
557
557
|
[:tINDEX, -1]
|
@@ -571,7 +571,7 @@ module Synvert::Core::NodeQuery
|
|
571
571
|
context 'child' do
|
572
572
|
it 'matches' do
|
573
573
|
source = '.def > .send'
|
574
|
-
expected_tokens = [[:tNODE_TYPE, "def"], [:
|
574
|
+
expected_tokens = [[:tNODE_TYPE, "def"], [:tRELATIONSHIP, ">"], [:tNODE_TYPE, "send"]]
|
575
575
|
assert_tokens source, expected_tokens
|
576
576
|
end
|
577
577
|
end
|
@@ -579,7 +579,7 @@ module Synvert::Core::NodeQuery
|
|
579
579
|
context 'subsequent sibling' do
|
580
580
|
it 'matches' do
|
581
581
|
source = '.send ~ .send'
|
582
|
-
expected_tokens = [[:tNODE_TYPE, "send"], [:
|
582
|
+
expected_tokens = [[:tNODE_TYPE, "send"], [:tRELATIONSHIP, "~"], [:tNODE_TYPE, "send"]]
|
583
583
|
assert_tokens source, expected_tokens
|
584
584
|
end
|
585
585
|
end
|
@@ -587,7 +587,7 @@ module Synvert::Core::NodeQuery
|
|
587
587
|
context 'next sibling' do
|
588
588
|
it 'matches' do
|
589
589
|
source = '.send + .send'
|
590
|
-
expected_tokens = [[:tNODE_TYPE, "send"], [:
|
590
|
+
expected_tokens = [[:tNODE_TYPE, "send"], [:tRELATIONSHIP, "+"], [:tNODE_TYPE, "send"]]
|
591
591
|
assert_tokens source, expected_tokens
|
592
592
|
end
|
593
593
|
end
|
@@ -599,7 +599,7 @@ module Synvert::Core::NodeQuery
|
|
599
599
|
[:tNODE_TYPE, "class"],
|
600
600
|
[:tPSEUDO_CLASS, "has"],
|
601
601
|
[:tOPEN_SELECTOR, "("],
|
602
|
-
[:
|
602
|
+
[:tRELATIONSHIP, ">"],
|
603
603
|
[:tNODE_TYPE, "def"],
|
604
604
|
[:tCLOSE_SELECTOR, ")"]
|
605
605
|
]
|
@@ -614,7 +614,7 @@ module Synvert::Core::NodeQuery
|
|
614
614
|
[:tNODE_TYPE, "class"],
|
615
615
|
[:tPSEUDO_CLASS, "not_has"],
|
616
616
|
[:tOPEN_SELECTOR, "("],
|
617
|
-
[:
|
617
|
+
[:tRELATIONSHIP, ">"],
|
618
618
|
[:tNODE_TYPE, "def"],
|
619
619
|
[:tCLOSE_SELECTOR, ")"]
|
620
620
|
]
|
@@ -630,7 +630,7 @@ module Synvert::Core::NodeQuery
|
|
630
630
|
[:tOPEN_GOTO_SCOPE, "<"],
|
631
631
|
[:tIDENTIFIER, "body"],
|
632
632
|
[:tCLOSE_GOTO_SCOPE, ">"],
|
633
|
-
[:
|
633
|
+
[:tRELATIONSHIP, ">"],
|
634
634
|
[:tNODE_TYPE, "def"]
|
635
635
|
]
|
636
636
|
assert_tokens source, expected_tokens
|