@@ -231,10 +231,9 @@ export function createParser(options: ParserOptions = {}): Parser {
231
231
// empty modifier
232
232
emitError (
233
233
tokenizer ,
234
- CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
234
+ CompileErrorCodes . UNEXPECTED_EMPTY_LINKED_MODIFIER ,
235
235
context . lastStartLoc ,
236
- 0 ,
237
- token . type
236
+ 0
238
237
)
239
238
node . value = ''
240
239
endNode ( node , offset , loc )
@@ -250,7 +249,7 @@ export function createParser(options: ParserOptions = {}): Parser {
250
249
CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
251
250
context . lastStartLoc ,
252
251
0 ,
253
- token . type
252
+ getTokenCaption ( token )
254
253
)
255
254
}
256
255
node . value = token . value || ''
@@ -299,7 +298,7 @@ export function createParser(options: ParserOptions = {}): Parser {
299
298
CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
300
299
context . lastStartLoc ,
301
300
0 ,
302
- token . type
301
+ getTokenCaption ( token )
303
302
)
304
303
}
305
304
token = tokenizer . nextToken ( )
@@ -317,7 +316,7 @@ export function createParser(options: ParserOptions = {}): Parser {
317
316
CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
318
317
context . lastStartLoc ,
319
318
0 ,
320
- token . type
319
+ getTokenCaption ( token )
321
320
)
322
321
}
323
322
linkedNode . key = parseLinkedKey ( tokenizer , token . value || '' )
@@ -329,7 +328,7 @@ export function createParser(options: ParserOptions = {}): Parser {
329
328
CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
330
329
context . lastStartLoc ,
331
330
0 ,
332
- token . type
331
+ getTokenCaption ( token )
333
332
)
334
333
}
335
334
linkedNode . key = parseNamed ( tokenizer , token . value || '' )
@@ -341,7 +340,7 @@ export function createParser(options: ParserOptions = {}): Parser {
341
340
CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
342
341
context . lastStartLoc ,
343
342
0 ,
344
- token . type
343
+ getTokenCaption ( token )
345
344
)
346
345
}
347
346
linkedNode . key = parseList ( tokenizer , token . value || '' )
@@ -353,7 +352,7 @@ export function createParser(options: ParserOptions = {}): Parser {
353
352
CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
354
353
context . lastStartLoc ,
355
354
0 ,
356
- token . type
355
+ getTokenCaption ( token )
357
356
)
358
357
}
359
358
linkedNode . key = parseLiteral ( tokenizer , token . value || '' )
@@ -362,10 +361,9 @@ export function createParser(options: ParserOptions = {}): Parser {
362
361
// empty key
363
362
emitError (
364
363
tokenizer ,
365
- CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
364
+ CompileErrorCodes . UNEXPECTED_EMPTY_LINKED_KEY ,
366
365
context . lastStartLoc ,
367
- 0 ,
368
- token . type
366
+ 0
369
367
)
370
368
const nextContext = tokenizer . context ( )
371
369
const emptyLinkedKeyNode = startNode (
@@ -419,7 +417,7 @@ export function createParser(options: ParserOptions = {}): Parser {
419
417
CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
420
418
context . lastStartLoc ,
421
419
0 ,
422
- token . type
420
+ getTokenCaption ( token )
423
421
)
424
422
}
425
423
node . items . push ( parseText ( tokenizer , token . value || '' ) )
@@ -431,7 +429,7 @@ export function createParser(options: ParserOptions = {}): Parser {
431
429
CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
432
430
context . lastStartLoc ,
433
431
0 ,
434
- token . type
432
+ getTokenCaption ( token )
435
433
)
436
434
}
437
435
node . items . push ( parseList ( tokenizer , token . value || '' ) )
@@ -443,7 +441,7 @@ export function createParser(options: ParserOptions = {}): Parser {
443
441
CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
444
442
context . lastStartLoc ,
445
443
0 ,
446
- token . type
444
+ getTokenCaption ( token )
447
445
)
448
446
}
449
447
node . items . push ( parseNamed ( tokenizer , token . value || '' ) )
@@ -455,7 +453,7 @@ export function createParser(options: ParserOptions = {}): Parser {
455
453
CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
456
454
context . lastStartLoc ,
457
455
0 ,
458
- token . type
456
+ getTokenCaption ( token )
459
457
)
460
458
}
461
459
node . items . push ( parseLiteral ( tokenizer , token . value || '' ) )
@@ -552,7 +550,7 @@ export function createParser(options: ParserOptions = {}): Parser {
552
550
CompileErrorCodes . UNEXPECTED_LEXICAL_ANALYSIS ,
553
551
context . lastStartLoc ,
554
552
0 ,
555
- context . currentType
553
+ source [ context . offset ] || ''
556
554
)
557
555
}
558
556
@@ -562,3 +560,11 @@ export function createParser(options: ParserOptions = {}): Parser {
562
560
563
561
return { parse }
564
562
}
563
+
564
+ function getTokenCaption ( token : Token ) {
565
+ if ( token . type === TokenTypes . EOF ) {
566
+ return 'EOF'
567
+ }
568
+ const name = ( token . value || '' ) . replace ( / \r ? \n / gu, '\\n' )
569
+ return name . length > 10 ? name . slice ( 0 , 9 ) + '…' : name
570
+ }
0 commit comments