@@ -314,7 +314,7 @@ def self.run_lexer(query_string)
314
314
begin
315
315
te = p+1;
316
316
begin
317
- emit(:RCURLY, ts, te, meta)
317
+ emit(:RCURLY, ts, te, meta, "}" )
318
318
end
319
319
320
320
end
@@ -328,7 +328,7 @@ def self.run_lexer(query_string)
328
328
begin
329
329
te = p+1;
330
330
begin
331
- emit(:LCURLY, ts, te, meta)
331
+ emit(:LCURLY, ts, te, meta, "{" )
332
332
end
333
333
334
334
end
@@ -342,7 +342,7 @@ def self.run_lexer(query_string)
342
342
begin
343
343
te = p+1;
344
344
begin
345
- emit(:RPAREN, ts, te, meta)
345
+ emit(:RPAREN, ts, te, meta, ")" )
346
346
end
347
347
348
348
end
@@ -356,7 +356,7 @@ def self.run_lexer(query_string)
356
356
begin
357
357
te = p+1;
358
358
begin
359
- emit(:LPAREN, ts, te, meta)
359
+ emit(:LPAREN, ts, te, meta, "(")
360
360
end
361
361
362
362
end
@@ -370,7 +370,7 @@ def self.run_lexer(query_string)
370
370
begin
371
371
te = p+1;
372
372
begin
373
- emit(:RBRACKET, ts, te, meta)
373
+ emit(:RBRACKET, ts, te, meta, "]" )
374
374
end
375
375
376
376
end
@@ -384,7 +384,7 @@ def self.run_lexer(query_string)
384
384
begin
385
385
te = p+1;
386
386
begin
387
- emit(:LBRACKET, ts, te, meta)
387
+ emit(:LBRACKET, ts, te, meta, "[" )
388
388
end
389
389
390
390
end
@@ -398,7 +398,7 @@ def self.run_lexer(query_string)
398
398
begin
399
399
te = p+1;
400
400
begin
401
- emit(:COLON, ts, te, meta)
401
+ emit(:COLON, ts, te, meta, ":" )
402
402
end
403
403
404
404
end
@@ -440,7 +440,7 @@ def self.run_lexer(query_string)
440
440
begin
441
441
te = p+1;
442
442
begin
443
- emit(:VAR_SIGN, ts, te, meta)
443
+ emit(:VAR_SIGN, ts, te, meta, "$" )
444
444
end
445
445
446
446
end
@@ -454,7 +454,7 @@ def self.run_lexer(query_string)
454
454
begin
455
455
te = p+1;
456
456
begin
457
- emit(:DIR_SIGN, ts, te, meta)
457
+ emit(:DIR_SIGN, ts, te, meta, "@" )
458
458
end
459
459
460
460
end
@@ -468,7 +468,7 @@ def self.run_lexer(query_string)
468
468
begin
469
469
te = p+1;
470
470
begin
471
- emit(:ELLIPSIS, ts, te, meta)
471
+ emit(:ELLIPSIS, ts, te, meta, "..." )
472
472
end
473
473
474
474
end
@@ -482,7 +482,7 @@ def self.run_lexer(query_string)
482
482
begin
483
483
te = p+1;
484
484
begin
485
- emit(:EQUALS, ts, te, meta)
485
+ emit(:EQUALS, ts, te, meta, "=" )
486
486
end
487
487
488
488
end
@@ -496,7 +496,7 @@ def self.run_lexer(query_string)
496
496
begin
497
497
te = p+1;
498
498
begin
499
- emit(:BANG, ts, te, meta)
499
+ emit(:BANG, ts, te, meta, "!" )
500
500
end
501
501
502
502
end
@@ -510,7 +510,7 @@ def self.run_lexer(query_string)
510
510
begin
511
511
te = p+1;
512
512
begin
513
- emit(:PIPE, ts, te, meta)
513
+ emit(:PIPE, ts, te, meta, "|" )
514
514
end
515
515
516
516
end
@@ -524,7 +524,7 @@ def self.run_lexer(query_string)
524
524
begin
525
525
te = p+1;
526
526
begin
527
- emit(:AMP, ts, te, meta)
527
+ emit(:AMP, ts, te, meta, "&" )
528
528
end
529
529
530
530
end
@@ -738,63 +738,63 @@ def self.run_lexer(query_string)
738
738
begin
739
739
p = ((te))-1;
740
740
begin
741
- emit(:ON, ts, te, meta)
741
+ emit(:ON, ts, te, meta, "on" )
742
742
end
743
743
744
744
end
745
745
when 5 then
746
746
begin
747
747
p = ((te))-1;
748
748
begin
749
- emit(:FRAGMENT, ts, te, meta)
749
+ emit(:FRAGMENT, ts, te, meta, "fragment" )
750
750
end
751
751
752
752
end
753
753
when 6 then
754
754
begin
755
755
p = ((te))-1;
756
756
begin
757
- emit(:TRUE, ts, te, meta)
757
+ emit(:TRUE, ts, te, meta, "true" )
758
758
end
759
759
760
760
end
761
761
when 7 then
762
762
begin
763
763
p = ((te))-1;
764
764
begin
765
- emit(:FALSE, ts, te, meta)
765
+ emit(:FALSE, ts, te, meta, "false" )
766
766
end
767
767
768
768
end
769
769
when 8 then
770
770
begin
771
771
p = ((te))-1;
772
772
begin
773
- emit(:NULL, ts, te, meta)
773
+ emit(:NULL, ts, te, meta, "null" )
774
774
end
775
775
776
776
end
777
777
when 9 then
778
778
begin
779
779
p = ((te))-1;
780
780
begin
781
- emit(:QUERY, ts, te, meta)
781
+ emit(:QUERY, ts, te, meta, "query" )
782
782
end
783
783
784
784
end
785
785
when 10 then
786
786
begin
787
787
p = ((te))-1;
788
788
begin
789
- emit(:MUTATION, ts, te, meta)
789
+ emit(:MUTATION, ts, te, meta, "mutation" )
790
790
end
791
791
792
792
end
793
793
when 11 then
794
794
begin
795
795
p = ((te))-1;
796
796
begin
797
- emit(:SUBSCRIPTION, ts, te, meta)
797
+ emit(:SUBSCRIPTION, ts, te, meta, "subscription" )
798
798
end
799
799
800
800
end
@@ -1371,25 +1371,26 @@ def self.run_lexer(query_string)
1371
1371
1372
1372
def self.record_comment(ts, te, meta)
1373
1373
token = GraphQL::Language::Token.new(
1374
- name: :COMMENT,
1375
- value: meta[:data][ts, te - ts].pack(PACK_DIRECTIVE).force_encoding(UTF_8_ENCODING),
1376
- line: meta[:line],
1377
- col: meta[:col],
1378
- prev_token: meta[:previous_token],
1374
+ :COMMENT,
1375
+ meta[:data][ts, te - ts].pack(PACK_DIRECTIVE).force_encoding(UTF_8_ENCODING),
1376
+ meta[:line],
1377
+ meta[:col],
1378
+ meta[:previous_token],
1379
1379
)
1380
1380
1381
1381
meta[:previous_token] = token
1382
1382
1383
1383
meta[:col] += te - ts
1384
1384
end
1385
1385
1386
- def self.emit(token_name, ts, te, meta)
1386
+ def self.emit(token_name, ts, te, meta, token_value = nil)
1387
+ token_value ||= meta[:data][ts, te - ts].pack(PACK_DIRECTIVE).force_encoding(UTF_8_ENCODING)
1387
1388
meta[:tokens] << token = GraphQL::Language::Token.new(
1388
- name: token_name,
1389
- value: meta[:data][ts, te - ts].pack(PACK_DIRECTIVE).force_encoding(UTF_8_ENCODING) ,
1390
- line: meta[:line],
1391
- col: meta[:col],
1392
- prev_token: meta[:previous_token],
1389
+ token_name,
1390
+ token_value ,
1391
+ meta[:line],
1392
+ meta[:col],
1393
+ meta[:previous_token],
1393
1394
)
1394
1395
meta[:previous_token] = token
1395
1396
# Bump the column counter for the next token
@@ -1428,30 +1429,30 @@ def self.emit_string(ts, te, meta, block:)
1428
1429
# (It's faster: https://bugs.ruby-lang.org/issues/8110)
1429
1430
if !value.valid_encoding? || value !~ VALID_STRING
1430
1431
meta[:tokens] << token = GraphQL::Language::Token.new(
1431
- name: :BAD_UNICODE_ESCAPE,
1432
- value: value ,
1433
- line: meta[:line],
1434
- col: meta[:col],
1435
- prev_token: meta[:previous_token],
1432
+ :BAD_UNICODE_ESCAPE,
1433
+ value,
1434
+ meta[:line],
1435
+ meta[:col],
1436
+ meta[:previous_token],
1436
1437
)
1437
1438
else
1438
1439
replace_escaped_characters_in_place(value)
1439
1440
1440
1441
if !value.valid_encoding?
1441
1442
meta[:tokens] << token = GraphQL::Language::Token.new(
1442
- name: :BAD_UNICODE_ESCAPE,
1443
- value: value ,
1444
- line: meta[:line],
1445
- col: meta[:col],
1446
- prev_token: meta[:previous_token],
1443
+ :BAD_UNICODE_ESCAPE,
1444
+ value,
1445
+ meta[:line],
1446
+ meta[:col],
1447
+ meta[:previous_token],
1447
1448
)
1448
1449
else
1449
1450
meta[:tokens] << token = GraphQL::Language::Token.new(
1450
- name: :STRING,
1451
- value: value ,
1452
- line: meta[:line],
1453
- col: meta[:col],
1454
- prev_token: meta[:previous_token],
1451
+ :STRING,
1452
+ value,
1453
+ meta[:line],
1454
+ meta[:col],
1455
+ meta[:previous_token],
1455
1456
)
1456
1457
end
1457
1458
end
0 commit comments