/[suikacvs]/markup/html/whatpm/t/css-token-1.test
Suika

Contents of /markup/html/whatpm/t/css-token-1.test

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.10 - (hide annotations) (download)
Sat Sep 8 17:43:41 2007 UTC (17 years, 10 months ago) by wakaba
Branch: MAIN
Changes since 1.9: +380 -56 lines
++ whatpm/t/ChangeLog	8 Sep 2007 17:43:26 -0000
	* css-token-1.test: Test cases for remaining CSS tokens
	are added.

2007-09-09  Wakaba  <wakaba@suika.fam.cx>

++ whatpm/Whatpm/CSS/ChangeLog	8 Sep 2007 17:43:04 -0000
	* Tokenizer.pm: Delimiters frequently used in CSS
	now have different |type|s than |DELIM_TOKEN|.

2007-09-09  Wakaba  <wakaba@suika.fam.cx>

1 wakaba 1.1 {"tests": [
2     {"description": "empty",
3     "input": "",
4     "output": []},
5    
6     {"description": "length=1 IDENT (lowercase)",
7     "input": "a",
8     "output": [["IDENT", "a"]]},
9    
10     {"description": "length=1 IDENT (uppercase)",
11     "input": "A",
12     "output": [["IDENT", "A"]]},
13    
14     {"description": "length=2 IDENT (uppercase)",
15     "input": "AB",
16     "output": [["IDENT", "AB"]]},
17    
18     {"description": "length=2 IDENT (lowercase)",
19     "input": "ab",
20     "output": [["IDENT", "ab"]]},
21    
22 wakaba 1.2 {"description": "\\",
23     "input": "\\",
24     "output": [["DELIM", "\\"]]},
25    
26 wakaba 1.1 {"description": "IDENT started by escape 1",
27     "input": "\\41",
28     "output": [["IDENT", "A"]]},
29    
30     {"description": "IDENT started by escape 2",
31     "input": "\\041",
32     "output": [["IDENT", "A"]]},
33    
34     {"description": "IDENT started by escape 3",
35     "input": "\\0041",
36     "output": [["IDENT", "A"]]},
37    
38     {"description": "IDENT started by escape 4",
39     "input": "\\00041",
40     "output": [["IDENT", "A"]]},
41    
42     {"description": "IDENT started by escape 5",
43     "input": "\\000041",
44     "output": [["IDENT", "A"]]},
45    
46     {"description": "IDENT started by escape 6",
47     "input": "\\0000041",
48     "output": [["IDENT", "\u00041"]]},
49    
50     {"description": "IDENT started by escape 7",
51     "input": "\\00000041",
52     "output": [["IDENT", "\u000041"]]},
53    
54     {"description": "IDENT started by escape followed by a space 1",
55     "input": "\\41 ",
56     "output": [["IDENT", "A"]]},
57    
58     {"description": "IDENT started by escape followed by a space 2",
59     "input": "\\41 a",
60     "output": [["IDENT", "Aa"]]},
61    
62     {"description": "IDENT started by escape followed by a space 3",
63     "input": "\\41\u0009a",
64     "output": [["IDENT", "Aa"]]},
65    
66     {"description": "IDENT started by escape followed by a space 4",
67     "input": "\\000041 ",
68     "output": [["IDENT", "A"]]},
69    
70     {"description": "IDENT started by escape followed by a space 5",
71     "input": "\\000041\u000D\u000A",
72 wakaba 1.2 "output": [["IDENT", "A"]]},
73    
74     {"description": "\\\u000D",
75     "input": "\\\u000D",
76     "output": [["DELIM", "\\"], ["S"]]},
77    
78     {"description": "\\\u000D\u000A",
79     "input": "\\\u000D\u000A",
80     "output": [["DELIM", "\\"], ["S"]]},
81    
82     {"description": "\\\u000D\\\u000A",
83     "input": "\\\u000D\\\u000A",
84     "output": [["DELIM", "\\"], ["S"], ["DELIM", "\\"], ["S"]]},
85    
86     {"description": "\\\u000C",
87     "input": "\\\u000C",
88     "output": [["DELIM", "\\"], ["S"]]},
89    
90     {"description": "\\\u000A",
91     "input": "\\\u000A",
92     "output": [["DELIM", "\\"], ["S"]]},
93    
94     {"description": "\\ ",
95     "input": "\\ ",
96     "output": [["IDENT", " "]]},
97    
98     {"description": "\\\\",
99     "input": "\\\\",
100     "output": [["IDENT", "\\"]]},
101    
102     {"description": "\\\\\\",
103     "input": "\\\\\\",
104     "output": [["IDENT", "\\"], ["DELIM", "\\"]]},
105    
106     {"description": "\\\u0009",
107     "input": "\\\u0009",
108     "output": [["IDENT", "\u0009"]]},
109    
110     {"description": "\\X",
111     "input": "\\X",
112     "output": [["IDENT", "X"]]},
113    
114     {"description": "a\\",
115     "input": "a\\",
116     "output": [["IDENT", "a"], ["DELIM", "\\"]]},
117    
118     {"description": "a\\f1",
119     "input": "a\\f1",
120     "output": [["IDENT", "a\u00f1"]]},
121    
122     {"description": "a\\F1",
123     "input": "a\\F1",
124     "output": [["IDENT", "a\u00f1"]]},
125    
126     {"description": "a\\0f1",
127     "input": "a\\0f1",
128     "output": [["IDENT", "a\u00f1"]]},
129    
130     {"description": "a\\0F1",
131     "input": "a\\0F1",
132     "output": [["IDENT", "a\u00f1"]]},
133    
134     {"description": "a\\41",
135     "input": "a\\41",
136     "output": [["IDENT", "aA"]]},
137    
138     {"description": "a\\41 b",
139     "input": "a\\41 b",
140     "output": [["IDENT", "aAb"]]},
141    
142     {"description": "a\\41\u0009X",
143     "input": "a\\41\u0009X",
144     "output": [["IDENT", "aAX"]]},
145    
146     {"description": "a\\4e00",
147     "input": "a\\4e00",
148     "output": [["IDENT", "a\u4e00"]]},
149    
150     {"description": "a\\41 X",
151     "input": "a\\41 X",
152     "output": [["IDENT", "aA"], ["S"], ["IDENT", "X"]]},
153    
154     {"description": "a\\ ",
155     "input": "a\\ ",
156     "output": [["IDENT", "a "]]},
157    
158     {"description": "a\\ b",
159     "input": "a\\ b",
160     "output": [["IDENT", "a b"]]},
161    
162     {"description": "a\\\\b",
163     "input": "a\\\\b",
164     "output": [["IDENT", "a\\b"]]},
165    
166     {"description": "a\\\u0009b",
167     "input": "a\\\u0009b",
168     "output": [["IDENT", "a\u0009b"]]},
169    
170     {"description": "a\\GB",
171     "input": "a\\GB",
172     "output": [["IDENT", "aGB"]]},
173    
174     {"description": "a\\\u000D",
175     "input": "a\\\u000D",
176     "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"]]},
177    
178     {"description": "a\\\u000A",
179     "input": "a\\\u000A",
180     "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"]]},
181    
182     {"description": "a\\\u000D\u000A",
183     "input": "a\\\u000D\u000A",
184     "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"]]},
185    
186     {"description": "a\\\u000D\\\u000A",
187     "input": "a\\\u000D\\\u000A",
188     "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"], ["DELIM", "\\"], ["S"]]},
189    
190     {"description": "a\\\u000C",
191     "input": "a\\\u000C",
192     "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"]]},
193    
194     {"description": "\\-",
195     "input": "\\-",
196     "output": [["IDENT", "-"]]},
197    
198     {"description": "-i",
199     "input": "-i",
200     "output": [["IDENT", "-i"]]},
201    
202     {"description": "\\-i",
203     "input": "\\-i",
204     "output": [["IDENT", "-i"]]},
205    
206     {"description": "-ident",
207     "input": "-ident",
208     "output": [["IDENT", "-ident"]]},
209    
210     {"description": "\\-ident",
211     "input": "\\-ident",
212     "output": [["IDENT", "-ident"]]},
213    
214     {"description": "-ident-ident",
215     "input": "-ident-ident",
216     "output": [["IDENT", "-ident-ident"]]},
217    
218     {"description": "\\-ident-ident",
219     "input": "\\-ident-ident",
220     "output": [["IDENT", "-ident-ident"]]},
221    
222     {"description": "-1",
223     "input": "-1",
224 wakaba 1.10 "output": [["MINUS"], ["NUMBER", "1"]]},
225 wakaba 1.2
226     {"description": "\\-1",
227     "input": "\\-1",
228     "output": [["IDENT", "-1"]]},
229    
230     {"description": "-1a",
231     "input": "-1a",
232 wakaba 1.10 "output": [["MINUS"], ["DIMENSION", "1", "a"]]},
233 wakaba 1.2
234     {"description": "\\-1a",
235     "input": "\\-1a",
236     "output": [["IDENT", "-1a"]]},
237    
238     {"description": "-\\31",
239     "input": "-\\31",
240     "output": [["IDENT", "-1"]]},
241    
242     {"description": "\\-\\31",
243     "input": "\\-\\31",
244     "output": [["IDENT", "-1"]]},
245    
246     {"description": "-\\41",
247     "input": "-\\41",
248     "output": [["IDENT", "-A"]]},
249    
250     {"description": "\\-\\41",
251     "input": "\\-\\41",
252     "output": [["IDENT", "-A"]]},
253    
254     {"description": "-\\\u000D",
255     "input": "-\\\u000D",
256 wakaba 1.10 "output": [["MINUS"], ["DELIM", "\\"], ["S"]]},
257 wakaba 1.2
258     {"description": "\\-\\\u000D",
259     "input": "\\-\\\u000D",
260     "output": [["IDENT", "-"], ["DELIM", "\\"], ["S"]]},
261    
262     {"description": "\u4e00",
263     "input": "\u4e00",
264     "output": [["IDENT", "\u4e00"]]},
265    
266     {"description": "a\u4e00b",
267     "input": "a\u4e00b",
268     "output": [["IDENT", "a\u4e00b"]]},
269    
270     {"description": "@",
271     "input": "@",
272     "output": [["DELIM", "@"]]},
273    
274     {"description": "@a",
275     "input": "@a",
276     "output": [["ATKEYWORD", "a"]]},
277    
278     {"description": "@A",
279     "input": "@A",
280     "output": [["ATKEYWORD", "A"]]},
281    
282     {"description": "@abc",
283     "input": "@abc",
284     "output": [["ATKEYWORD", "abc"]]},
285    
286     {"description": "@-",
287     "input": "@-",
288 wakaba 1.10 "output": [["DELIM", "@"], ["MINUS"]]},
289 wakaba 1.2
290 wakaba 1.6 {"description": "@\\-",
291     "input": "@\\-",
292     "output": [["ATKEYWORD", "-"]]},
293    
294 wakaba 1.2 {"description": "@-a",
295     "input": "@-a",
296     "output": [["ATKEYWORD", "-a"]]},
297    
298 wakaba 1.6 {"description": "@\\-a",
299     "input": "@\\-a",
300     "output": [["ATKEYWORD", "-a"]]},
301    
302 wakaba 1.2 {"description": "@1",
303     "input": "@1",
304     "output": [["DELIM", "@"], ["NUMBER", "1"]]},
305    
306 wakaba 1.6 {"description": "@\\1",
307     "input": "@\\1",
308     "output": [["ATKEYWORD", "\u0001"]]},
309    
310 wakaba 1.2 {"description": "@-1",
311     "input": "@-1",
312 wakaba 1.10 "output": [["DELIM", "@"], ["MINUS"], ["NUMBER", "1"]]},
313 wakaba 1.2
314 wakaba 1.6 {"description": "@--",
315     "input": "@--",
316 wakaba 1.10 "output": [["DELIM", "@"], ["MINUS"], ["MINUS"]]},
317 wakaba 1.6
318     {"description": "@--1",
319     "input": "@--1",
320 wakaba 1.10 "output": [["DELIM", "@"], ["MINUS"], ["MINUS"], ["NUMBER", "1"]]},
321 wakaba 1.6
322     {"description": "@--a",
323     "input": "@--a",
324 wakaba 1.10 "output": [["DELIM", "@"], ["MINUS"], ["IDENT", "-a"]]},
325 wakaba 1.6
326     {"description": "@-\\-a",
327     "input": "@-\\-a",
328     "output": [["ATKEYWORD", "--a"]]},
329    
330     {"description": "@-->",
331     "input": "@-->",
332     "output": [["DELIM", "@"], ["CDC"]]},
333    
334     {"description": "@--->",
335     "input": "@--->",
336 wakaba 1.10 "output": [["DELIM", "@"], ["MINUS"], ["CDC"]]},
337 wakaba 1.6
338 wakaba 1.2 {"description": "@\\41",
339     "input": "@\\41",
340     "output": [["ATKEYWORD", "A"]]},
341    
342     {"description": "@\\61 b",
343     "input": "@\\61 b",
344     "output": [["ATKEYWORD", "ab"]]},
345    
346     {"description": "@\\61 b",
347     "input": "@\\61 b",
348     "output": [["ATKEYWORD", "a"], ["S"], ["IDENT", "b"]]},
349    
350     {"description": "@a\\41",
351     "input": "@aA",
352     "output": [["ATKEYWORD", "aA"]]},
353    
354     {"description": "@a\\4e00X",
355     "input": "@a\\4e00X",
356 wakaba 1.3 "output": [["ATKEYWORD", "a\u4e00X"]]},
357    
358     {"description": "\"",
359     "input": "\"",
360     "output": [["INVALID", ""]]},
361    
362     {"description": "'",
363     "input": "'",
364     "output": [["INVALID", ""]]},
365    
366     {"description": "\"\"",
367     "input": "\"\"",
368     "output": [["STRING", ""]]},
369    
370     {"description": "''",
371     "input": "''",
372     "output": [["STRING", ""]]},
373    
374     {"description": "\"a",
375     "input": "\"a",
376     "output": [["INVALID", "a"]]},
377    
378     {"description": "'a",
379     "input": "'a",
380     "output": [["INVALID", "a"]]},
381    
382     {"description": "'a'",
383     "input": "'a'",
384     "output": [["STRING", "a"]]},
385    
386     {"description": "\"a\"",
387     "input": "\"a\"",
388     "output": [["STRING", "a"]]},
389    
390     {"description": "'a'",
391     "input": "'a'",
392     "output": [["STRING", "a"]]},
393    
394     {"description": "\"a'",
395     "input": "\"a'",
396     "output": [["INVALID", "a'"]]},
397    
398     {"description": "'a\"",
399     "input": "'a\"",
400     "output": [["INVALID", "a\""]]},
401    
402     {"description": "\"A",
403     "input": "\"A",
404     "output": [["INVALID", "A"]]},
405    
406     {"description": "'A",
407     "input": "'A",
408     "output": [["INVALID", "A"]]},
409    
410     {"description": "\"A\"",
411     "input": "\"A\"",
412     "output": [["STRING", "A"]]},
413    
414     {"description": "'A'",
415     "input": "'A'",
416     "output": [["STRING", "A"]]},
417    
418     {"description": "\"A'",
419     "input": "\"A'",
420     "output": [["INVALID", "A'"]]},
421    
422     {"description": "'A\"",
423     "input": "'A\"",
424     "output": [["INVALID", "A\""]]},
425    
426     {"description": "\"abc",
427     "input": "\"abc",
428     "output": [["INVALID", "abc"]]},
429    
430     {"description": "'abc",
431     "input": "'abc",
432     "output": [["INVALID", "abc"]]},
433    
434     {"description": "\"abc\"",
435     "input": "\"abc\"",
436     "output": [["STRING", "abc"]]},
437    
438     {"description": "'abc'",
439     "input": "'abc'",
440     "output": [["STRING", "abc"]]},
441    
442     {"description": "\"a\\",
443     "input": "\"a\\",
444     "output": [["INVALID", "a"], ["DELIM", "\\"]]},
445    
446     {"description": "'a\\",
447     "input": "'a\\",
448     "output": [["INVALID", "a"], ["DELIM", "\\"]]},
449    
450     {"description": "\"\\",
451     "input": "\"\\",
452     "output": [["INVALID", ""], ["DELIM", "\\"]]},
453    
454     {"description": "'\\",
455     "input": "'\\",
456     "output": [["INVALID", ""], ["DELIM", "\\"]]},
457    
458     {"description": "\"a\\\"",
459     "input": "\"a\\\"",
460     "output": [["INVALID", "a\""]]},
461    
462     {"description": "'a\\\"",
463     "input": "'a\\\"",
464     "output": [["INVALID", "a\""]]},
465    
466     {"description": "'a\\'",
467     "input": "'a\\'",
468     "output": [["INVALID", "a'"]]},
469    
470     {"description": "\"\\\"",
471     "input": "\"\\\"",
472     "output": [["INVALID", "\""]]},
473    
474     {"description": "'\\\"",
475     "input": "'\\\"",
476     "output": [["INVALID", "\""]]},
477    
478     {"description": "'\\'",
479     "input": "'\\'",
480     "output": [["INVALID", "'"]]},
481    
482     {"description": "'\\\\\"",
483     "input": "'\\\\\"",
484     "output": [["INVALID", "\\\""]]},
485    
486     {"description": "\"a\\'",
487     "input": "\"a\\'",
488     "output": [["INVALID", "a'"]]},
489    
490     {"description": "\"a\\x",
491     "input": "\"a\\x",
492     "output": [["INVALID", "ax"]]},
493    
494     {"description": "\"\\x",
495     "input": "\"\\x",
496     "output": [["INVALID", "x"]]},
497    
498     {"description": "'\\x",
499     "input": "'\\x",
500     "output": [["INVALID", "x"]]},
501    
502     {"description": "\"a\\x\"",
503     "input": "\"a\\x\"",
504     "output": [["STRING", "ax"]]},
505    
506     {"description": "\"\\x \"",
507     "input": "\"\\x \"",
508     "output": [["STRING", "x "]]},
509    
510     {"description": "\"a\\x \"",
511     "input": "\"a\\x \"",
512     "output": [["STRING", "ax "]]},
513    
514     {"description": "\"\\31",
515     "input": "\"\\31",
516     "output": [["INVALID", "1"]]},
517    
518     {"description": "\"a\\31",
519     "input": "\"a\\31",
520     "output": [["INVALID", "a1"]]},
521    
522     {"description": "'a\\31",
523     "input": "'a\\31",
524     "output": [["INVALID", "a1"]]},
525    
526     {"description": "\"\\31\"",
527     "input": "\"\\31\"",
528     "output": [["STRING", "1"]]},
529    
530     {"description": "'\\31'",
531     "input": "'\\31'",
532     "output": [["STRING", "1"]]},
533    
534     {"description": "\"a\\31\"",
535     "input": "\"a\\31\"",
536     "output": [["STRING", "a1"]]},
537    
538     {"description": "\"\\31 ",
539     "input": "\"\\31 ",
540     "output": [["INVALID", "1"]]},
541    
542     {"description": "\"a\\31 ",
543     "input": "\"a\\31 ",
544     "output": [["INVALID", "a1"]]},
545    
546     {"description": "\"a\\31 \"",
547     "input": "\"a\\31 \"",
548     "output": [["STRING", "a1"]]},
549    
550     {"description": "\"\\\u000D",
551     "input": "\"\\\u000D",
552     "output": [["INVALID", "\u000D"]]},
553    
554     {"description": "'\\\u000D",
555     "input": "'\\\u000D",
556     "output": [["INVALID", "\u000D"]]},
557    
558     {"description": "\"a\\\u000D",
559     "input": "\"a\\\u000D",
560     "output": [["INVALID", "a\u000D"]]},
561    
562     {"description": "\"a\\\u000D\"",
563     "input": "\"a\\\u000D\"",
564     "output": [["STRING", "a\u000D"]]},
565    
566     {"description": "'a\\\u000D'",
567     "input": "'a\\\u000D'",
568     "output": [["STRING", "a\u000D"]]},
569    
570     {"description": "\"a\\\u000D\u000A",
571     "input": "\"a\\\u000D\u000A",
572     "output": [["INVALID", "a\u000D\u000A"]]},
573    
574     {"description": "\"a\\\u000D\u000A\"",
575     "input": "\"a\\\u000D\u000A\"",
576     "output": [["STRING", "a\u000D\u000A"]]},
577    
578     {"description": "\"a\\\u000D\\\u000A",
579     "input": "\"a\\\u000D\\\u000A",
580     "output": [["INVALID", "a\u000D\u000A"]]},
581    
582     {"description": "'a\\\u000D\\\u000A",
583     "input": "'a\\\u000D\\\u000A",
584     "output": [["INVALID", "a\u000D\u000A"]]},
585    
586     {"description": "\"a\\\u000D\\\u000A\"",
587     "input": "\"a\\\u000D\\\u000A\"",
588     "output": [["STRING", "a\u000D\u000A"]]},
589    
590     {"description": "\"a\\\u000A",
591     "input": "\"a\\\u000A",
592     "output": [["INVALID", "a\u000A"]]},
593    
594     {"description": "\"a\\\u000A\"",
595     "input": "\"a\\\u000A\"",
596     "output": [["STRING", "a\u000A"]]},
597    
598     {"description": "'a\\\u000A'",
599     "input": "'a\\\u000A'",
600     "output": [["STRING", "a\u000A"]]},
601    
602     {"description": "\"a\\\u000C",
603     "input": "\"a\\\u000C",
604     "output": [["INVALID", "a\u000C"]]},
605    
606     {"description": "\"a\\\u000C\"",
607     "input": "\"a\\\u000C\"",
608     "output": [["STRING", "a\u000C"]]},
609    
610     {"description": "'a\\\u000C'",
611     "input": "'a\\\u000C'",
612     "output": [["STRING", "a\u000C"]]},
613    
614     {"description": "\"a\\\u000Daa",
615     "input": "\"a\\\u000Daa",
616     "output": [["INVALID", "a\u000Daa"]]},
617    
618     {"description": "\"a\\\u000D\u000Ab",
619     "input": "\"a\\\u000D\u000Ab",
620     "output": [["INVALID", "a\u000D\u000Ab"]]},
621    
622     {"description": "'a\\\u000D\u000Ab",
623     "input": "'a\\\u000D\u000Ab",
624 wakaba 1.4 "output": [["INVALID", "a\u000D\u000Ab"]]},
625    
626 wakaba 1.7 {"description": "'\u000d'",
627     "input": "'\u000d'",
628     "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
629    
630     {"description": "\"\u000d\"",
631     "input": "\"\u000d\"",
632     "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
633    
634     {"description": "'\u000d\u000a'",
635     "input": "'\u000d\u000a'",
636     "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
637    
638     {"description": "\"\u000d\u000a\"",
639     "input": "\"\u000d\u000a\"",
640     "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
641    
642     {"description": "'\u000a'",
643     "input": "'\u000a'",
644     "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
645    
646     {"description": "\"\u000a\"",
647     "input": "\"\u000a\"",
648     "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
649    
650     {"description": "'\u000c'",
651     "input": "'\u000c'",
652     "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
653    
654     {"description": "\"\u000c\"",
655     "input": "\"\u000c\"",
656     "output": [["INVALID", ""], ["S"], ["INVALID", ""]]},
657    
658 wakaba 1.4 {"description": "#",
659     "input": "#",
660     "output": [["DELIM", "#"]]},
661    
662     {"description": "\\#",
663     "input": "\\#",
664     "output": [["IDENT", "#"]]},
665    
666     {"description": "#a",
667     "input": "#a",
668     "output": [["HASH", "a"]]},
669    
670     {"description": "#A",
671     "input": "#A",
672     "output": [["HASH", "A"]]},
673    
674     {"description": "##",
675     "input": "##",
676     "output": [["DELIM", "#"], ["DELIM", "#"]]},
677    
678     {"description": "#\\#",
679     "input": "#\\#",
680     "output": [["HASH", "#"]]},
681    
682     {"description": "#\\X",
683     "input": "#\\X",
684     "output": [["HASH", "X"]]},
685    
686     {"description": "#\\a",
687     "input": "#\\a",
688     "output": [["HASH", "\u000a"]]},
689    
690     {"description": "#\\-",
691     "input": "#\\-",
692     "output": [["HASH", "-"]]},
693    
694     {"description": "#_",
695     "input": "#_",
696     "output": [["HASH", "_"]]},
697    
698     {"description": "#0",
699     "input": "#0",
700     "output": [["HASH", "0"]]},
701    
702     {"description": "#123456",
703     "input": "#123456",
704     "output": [["HASH", "123456"]]},
705    
706     {"description": "#abc",
707     "input": "#abc",
708     "output": [["HASH", "abc"]]},
709    
710     {"description": "#\\4e00XYZ",
711     "input": "#\\4e00XYZ",
712     "output": [["HASH", "\u4e00XYZ"]]},
713    
714     {"description": "#\u4e00",
715     "input": "#\u4e00",
716     "output": [["HASH", "\u4e00"]]},
717    
718     {"description": "#a\\100",
719     "input": "#a\\100",
720     "output": [["HASH", "a\u0100"]]},
721    
722     {"description": "#1234567890",
723     "input": "#1234567890",
724     "output": [["HASH", "1234567890"]]},
725    
726     {"description": "#1a",
727     "input": "#1a",
728     "output": [["HASH", "1a"]]},
729    
730     {"description": "#\\a b",
731     "input": "#\\a b",
732 wakaba 1.5 "output": [["HASH", "\u000ab"]]},
733    
734     {"description": "#!",
735     "input": "#!",
736 wakaba 1.10 "output": [["DELIM", "#"], ["EXCLAMATION"]]},
737 wakaba 1.5
738     {"description": "#-",
739     "input": "#-",
740     "output": [["HASH", "-"]]},
741    
742     {"description": "#--",
743     "input": "#--",
744     "output": [["HASH", "--"]]},
745    
746     {"description": "#-->",
747     "input": "#-->",
748     "output": [["HASH", "--"], ["GREATER"]]},
749    
750     {"description": "0",
751     "input": "0",
752     "output": [["NUMBER", "0"]]},
753    
754     {"description": "1",
755     "input": "1",
756     "output": [["NUMBER", "1"]]},
757    
758     {"description": "111",
759     "input": "111",
760     "output": [["NUMBER", "111"]]},
761    
762     {"description": "0001",
763     "input": "0001",
764     "output": [["NUMBER", "0001"]]},
765    
766     {"description": "1e",
767     "input": "1e",
768     "output": [["DIMENSION", "1", "e"]]},
769    
770     {"description": "1e4",
771     "input": "1e4",
772     "output": [["DIMENSION", "1", "e4"]]},
773    
774     {"description": "1n+2",
775     "input": "1n+2",
776     "output": [["DIMENSION", "1", "n"], ["PLUS"], ["NUMBER", "2"]]},
777    
778     {"description": "0.",
779     "input": "0.",
780 wakaba 1.10 "output": [["NUMBER", "0"], ["DOT"]]},
781 wakaba 1.5
782     {"description": "1.",
783     "input": "1.",
784 wakaba 1.10 "output": [["NUMBER", "1"], ["DOT"]]},
785 wakaba 1.5
786     {"description": "144.",
787     "input": "144.",
788 wakaba 1.10 "output": [["NUMBER", "144"], ["DOT"]]},
789 wakaba 1.5
790     {"description": "0.1",
791     "input": "0.1",
792     "output": [["NUMBER", "0.1"]]},
793    
794     {"description": "1.1",
795     "input": "1.1",
796     "output": [["NUMBER", "1.1"]]},
797    
798     {"description": "0.1000",
799     "input": "0.1000",
800     "output": [["NUMBER", "0.1000"]]},
801    
802     {"description": "0.0001",
803     "input": "0.0001",
804     "output": [["NUMBER", "0.0001"]]},
805    
806     {"description": ".",
807     "input": ".",
808 wakaba 1.10 "output": [["DOT"]]},
809 wakaba 1.5
810     {"description": ".1",
811     "input": ".1",
812     "output": [["NUMBER", "0.1"]]},
813    
814     {"description": ".0",
815     "input": ".0",
816     "output": [["NUMBER", "0.0"]]},
817    
818     {"description": ".1234",
819     "input": ".1234",
820     "output": [["NUMBER", "0.1234"]]},
821    
822     {"description": ".1ab",
823     "input": ".1ab",
824     "output": [["DIMENSION", "0.1", "ab"]]},
825    
826     {"description": ".1.2",
827     "input": ".1.2",
828     "output": [["NUMBER", "0.1"], ["NUMBER", "0.2"]]},
829    
830     {"description": ".a",
831     "input": ".a",
832 wakaba 1.10 "output": [["DOT"], ["IDENT", "a"]]},
833 wakaba 1.5
834     {"description": "3.11.66",
835     "input": "3.11.66",
836     "output": [["NUMBER", "3.11"], ["NUMBER", "0.66"]]},
837    
838     {"description": "..",
839     "input": "..",
840 wakaba 1.10 "output": [["DOT"], ["DOT"]]},
841 wakaba 1.5
842     {"description": "...",
843     "input": "...",
844 wakaba 1.10 "output": [["DOT"], ["DOT"], ["DOT"]]},
845 wakaba 1.5
846     {"description": "...1",
847     "input": "...1",
848 wakaba 1.10 "output": [["DOT"], ["DOT"], ["NUMBER", "0.1"]]},
849 wakaba 1.5
850     {"description": "...a",
851     "input": "...a",
852 wakaba 1.10 "output": [["DOT"], ["DOT"], ["DOT"], ["IDENT", "a"]]},
853 wakaba 1.5
854     {"description": "+0",
855     "input": "+0",
856     "output": [["PLUS"], ["NUMBER", "0"]]},
857    
858     {"description": "+1",
859     "input": "+1",
860     "output": [["PLUS"], ["NUMBER", "1"]]},
861    
862     {"description": "+1.15",
863     "input": "+1.15",
864     "output": [["PLUS"], ["NUMBER", "1.15"]]},
865    
866     {"description": "-.55",
867     "input": "-.55",
868 wakaba 1.10 "output": [["MINUS"], ["NUMBER", "0.55"]]},
869 wakaba 1.5
870     {"description": "-0",
871     "input": "-0",
872 wakaba 1.10 "output": [["MINUS"], ["NUMBER", "0"]]},
873 wakaba 1.5
874     {"description": "-0.2",
875     "input": "-0.2",
876 wakaba 1.10 "output": [["MINUS"], ["NUMBER", "0.2"]]},
877 wakaba 1.5
878     {"description": "-.1",
879     "input": "-.1",
880 wakaba 1.10 "output": [["MINUS"], ["NUMBER", "0.1"]]},
881 wakaba 1.5
882     {"description": "+-0",
883     "input": "+-0",
884 wakaba 1.10 "output": [["PLUS"], ["MINUS"], ["NUMBER", "0"]]},
885 wakaba 1.5
886     {"description": "a-0",
887     "input": "a-0",
888     "output": [["IDENT", "a-0"]]},
889    
890     {"description": "@a-0",
891     "input": "@a-0",
892     "output": [["ATKEYWORD", "a-0"]]},
893    
894     {"description": "#a-0",
895     "input": "#a-0",
896     "output": [["HASH", "a-0"]]},
897    
898     {"description": "<!-0",
899     "input": "<!-0",
900 wakaba 1.10 "output": [["DELIM", "<"], ["EXCLAMATION"], ["MINUS"], ["NUMBER", "0"]]},
901 wakaba 1.5
902     {"description": "<!--0",
903     "input": "<!--0",
904     "output": [["CDO"], ["NUMBER", "0"]]},
905    
906     {"description": "<!---0",
907     "input": "<!---0",
908 wakaba 1.10 "output": [["CDO"], ["MINUS"], ["NUMBER", "0"]]},
909 wakaba 1.6
910     {"description": "0a",
911     "input": "0a",
912     "output": [["DIMENSION", "0", "a"]]},
913    
914     {"description": "1a",
915     "input": "1a",
916     "output": [["DIMENSION", "1", "a"]]},
917    
918     {"description": "0A",
919     "input": "0A",
920     "output": [["DIMENSION", "0", "A"]]},
921    
922     {"description": "00a",
923     "input": "00a",
924     "output": [["DIMENSION", "00", "a"]]},
925    
926     {"description": "11a",
927     "input": "11a",
928     "output": [["DIMENSION", "11", "a"]]},
929    
930     {"description": "0ab",
931     "input": "0ab",
932     "output": [["DIMENSION", "0", "ab"]]},
933    
934     {"description": "0aB",
935     "input": "0aB",
936     "output": [["DIMENSION", "0", "aB"]]},
937    
938     {"description": "0.1a",
939     "input": "0.1a",
940     "output": [["DIMENSION", "0.1", "a"]]},
941    
942     {"description": "0.a",
943     "input": "0.a",
944 wakaba 1.10 "output": [["NUMBER", "0"], ["DOT"], ["IDENT", "a"]]},
945 wakaba 1.6
946     {"description": ".0a",
947     "input": ".0a",
948     "output": [["DIMENSION", "0.0", "a"]]},
949    
950     {"description": "0\\X",
951     "input": "0\\X",
952     "output": [["DIMENSION", "0", "X"]]},
953    
954     {"description": "0\\Xa",
955     "input": "0\\Xa",
956     "output": [["DIMENSION", "0", "Xa"]]},
957    
958     {"description": "0\\.1",
959     "input": "0\\.1",
960     "output": [["DIMENSION", "0", ".1"]]},
961    
962     {"description": "0.\\1",
963     "input": "0.\\1",
964 wakaba 1.10 "output": [["NUMBER", "0"], ["DOT"], ["IDENT", "\u0001"]]},
965 wakaba 1.6
966     {"description": "0a\\X",
967     "input": "0a\\X",
968     "output": [["DIMENSION", "0", "aX"]]},
969    
970     {"description": "0a\\Xa",
971     "input": "0a\\Xa",
972     "output": [["DIMENSION", "0", "aXa"]]},
973    
974     {"description": "0\\a",
975     "input": "0\\a",
976     "output": [["DIMENSION", "0", "\u000a"]]},
977    
978     {"description": "0\\4e00",
979     "input": "0\\4e00",
980     "output": [["DIMENSION", "0", "\u4e00"]]},
981    
982     {"description": "0a\\a",
983     "input": "0a\\a",
984     "output": [["DIMENSION", "0", "a\u000a"]]},
985    
986     {"description": "0a\\100 b",
987     "input": "0a\\100 b",
988     "output": [["DIMENSION", "0", "a\u0100b"]]},
989    
990     {"description": "0\\\u000d",
991     "input": "0\\\u000d",
992     "output": [["NUMBER", "0"], ["DELIM", "\\"], ["S"]]},
993    
994     {"description": "0\\\u000a",
995     "input": "0\\\u000a",
996     "output": [["NUMBER", "0"], ["DELIM", "\\"], ["S"]]},
997    
998     {"description": "0\\\u000d\u000a",
999     "input": "0\\\u000d\u000a",
1000     "output": [["NUMBER", "0"], ["DELIM", "\\"], ["S"]]},
1001    
1002     {"description": "0\\\u000c",
1003     "input": "0\\\u000c",
1004     "output": [["NUMBER", "0"], ["DELIM", "\\"], ["S"]]},
1005    
1006     {"description": "0a\\\u000d",
1007     "input": "0a\\\u000d",
1008     "output": [["DIMENSION", "0", "a"], ["DELIM", "\\"], ["S"]]},
1009    
1010     {"description": "0a\\\u000a",
1011     "input": "0a\\\u000a",
1012     "output": [["DIMENSION", "0", "a"], ["DELIM", "\\"], ["S"]]},
1013    
1014     {"description": "0a\\\u000d\u000a",
1015     "input": "0a\\\u000d\u000a",
1016     "output": [["DIMENSION", "0", "a"], ["DELIM", "\\"], ["S"]]},
1017    
1018     {"description": "0a\\\u000c",
1019     "input": "0a\\\u000c",
1020     "output": [["DIMENSION", "0", "a"], ["DELIM", "\\"], ["S"]]},
1021    
1022     {"description": "0a12",
1023     "input": "0a12",
1024     "output": [["DIMENSION", "0", "a12"]]},
1025    
1026     {"description": "0a_b-c",
1027     "input": "0a_b-c",
1028     "output": [["DIMENSION", "0", "a_b-c"]]},
1029    
1030     {"description": "0a---",
1031     "input": "0a---",
1032     "output": [["DIMENSION", "0", "a---"]]},
1033    
1034     {"description": "0a-->",
1035     "input": "0a-->",
1036     "output": [["DIMENSION", "0", "a--"], ["GREATER"]]},
1037    
1038     {"description": "0a/**/-->",
1039     "input": "0a/**/-->",
1040     "output": [["DIMENSION", "0", "a"], ["CDC"]]},
1041    
1042     {"description": "0/**/a",
1043     "input": "0/**/a",
1044     "output": [["NUMBER", "0"], ["IDENT", "a"]]},
1045    
1046     {"description": "0-",
1047     "input": "0-",
1048 wakaba 1.10 "output": [["NUMBER", "0"], ["MINUS"]]},
1049 wakaba 1.6
1050     {"description": "0.0-",
1051     "input": "0.0-",
1052 wakaba 1.10 "output": [["NUMBER", "0.0"], ["MINUS"]]},
1053 wakaba 1.6
1054     {"description": "0\\-",
1055     "input": "0\\-",
1056     "output": [["DIMENSION", "0", "-"]]},
1057    
1058     {"description": "0-a",
1059     "input": "0-a",
1060     "output": [["DIMENSION", "0", "-a"]]},
1061    
1062     {"description": "0.0-a",
1063     "input": "0.0-a",
1064     "output": [["DIMENSION", "0.0", "-a"]]},
1065    
1066     {"description": "0-abc",
1067     "input": "0-abc",
1068     "output": [["DIMENSION", "0", "-abc"]]},
1069    
1070     {"description": "0-\\",
1071     "input": "0-\\",
1072 wakaba 1.10 "output": [["NUMBER", "0"], ["MINUS"], ["DELIM", "\\"]]},
1073 wakaba 1.6
1074     {"description": "0-\\9",
1075     "input": "0-\\9",
1076     "output": [["DIMENSION", "0", "-\u0009"]]},
1077    
1078     {"description": "0-\\9x",
1079     "input": "0-\\9x",
1080     "output": [["DIMENSION", "0", "-\u0009x"]]},
1081    
1082     {"description": "0-\\9 b",
1083     "input": "0-\\9 b",
1084     "output": [["DIMENSION", "0", "-\u0009b"]]},
1085    
1086     {"description": "0-a\\9",
1087     "input": "0-a\\9",
1088     "output": [["DIMENSION", "0", "-a\u0009"]]},
1089    
1090     {"description": "0-a\\9 b",
1091     "input": "0-a\\9 b",
1092     "output": [["DIMENSION", "0", "-a\u0009b"]]},
1093    
1094     {"description": "0-\\x",
1095     "input": "0-\\x",
1096     "output": [["DIMENSION", "0", "-x"]]},
1097    
1098     {"description": "0-\\\u000d",
1099     "input": "0-\\\u000d",
1100 wakaba 1.10 "output": [["NUMBER", "0"], ["MINUS"], ["DELIM", "\\"], ["S"]]},
1101 wakaba 1.6
1102     {"description": "0-\\\u000d\u000a",
1103     "input": "0-\\\u000d\u000a",
1104 wakaba 1.10 "output": [["NUMBER", "0"], ["MINUS"], ["DELIM", "\\"], ["S"]]},
1105 wakaba 1.6
1106     {"description": "0-\\\u000a",
1107     "input": "0-\\\u000a",
1108 wakaba 1.10 "output": [["NUMBER", "0"], ["MINUS"], ["DELIM", "\\"], ["S"]]},
1109 wakaba 1.6
1110     {"description": "0-\\\u000c",
1111     "input": "0-\\\u000c",
1112 wakaba 1.10 "output": [["NUMBER", "0"], ["MINUS"], ["DELIM", "\\"], ["S"]]},
1113 wakaba 1.6
1114     {"description": "0--",
1115     "input": "0--",
1116 wakaba 1.10 "output": [["NUMBER", "0"], ["MINUS"], ["MINUS"]]},
1117 wakaba 1.6
1118     {"description": "0-->",
1119     "input": "0-->",
1120     "output": [["NUMBER", "0"], ["CDC"]]},
1121    
1122     {"description": "0-a--",
1123     "input": "0-a--",
1124     "output": [["DIMENSION", "0", "-a--"]]},
1125    
1126     {"description": "0-a-->",
1127     "input": "0-a-->",
1128 wakaba 1.7 "output": [["DIMENSION", "0", "-a--"], ["GREATER"]]},
1129    
1130     {"description": "0%",
1131     "input": "0%",
1132     "output": [["PERCENTAGE", "0"]]},
1133    
1134     {"description": "0\\%",
1135     "input": "0\\%",
1136     "output": [["DIMENSION", "0", "%"]]},
1137    
1138     {"description": "0.0%",
1139     "input": "0.0%",
1140     "output": [["PERCENTAGE", "0.0"]]},
1141    
1142     {"description": "0.0\\%",
1143     "input": "0.0\\%",
1144     "output": [["DIMENSION", "0.0", "%"]]},
1145    
1146     {"description": ".0%",
1147     "input": ".0%",
1148     "output": [["PERCENTAGE", "0.0"]]},
1149    
1150     {"description": ".0\\%",
1151     "input": ".0\\%",
1152     "output": [["DIMENSION", "0.0", "%"]]},
1153    
1154     {"description": "0%a",
1155     "input": "0%a",
1156     "output": [["PERCENTAGE", "0"], ["IDENT", "a"]]},
1157    
1158     {"description": "0\\%a",
1159     "input": "0\\%a",
1160     "output": [["DIMENSION", "0", "%a"]]},
1161    
1162     {"description": "120%",
1163     "input": "120%",
1164     "output": [["PERCENTAGE", "120"]]},
1165    
1166     {"description": "120\\%",
1167     "input": "120\\%",
1168     "output": [["DIMENSION", "120", "%"]]},
1169    
1170     {"description": "0.%",
1171     "input": "0.%",
1172 wakaba 1.10 "output": [["NUMBER", "0"], ["DOT"], ["DELIM", "%"]]},
1173 wakaba 1.7
1174     {"description": "0.\\%",
1175     "input": "0.\\%",
1176 wakaba 1.10 "output": [["NUMBER", "0"], ["DOT"], ["IDENT", "%"]]},
1177 wakaba 1.7
1178     {"description": "u",
1179     "input": "u",
1180     "output": [["IDENT", "u"]]},
1181    
1182     {"description": "U",
1183     "input": "U",
1184     "output": [["IDENT", "U"]]},
1185    
1186     {"description": "\\u",
1187     "input": "\\u",
1188     "output": [["IDENT", "u"]]},
1189    
1190     {"description": "ur",
1191     "input": "ur",
1192     "output": [["IDENT", "ur"]]},
1193    
1194     {"description": "url",
1195     "input": "url",
1196     "output": [["IDENT", "url"]]},
1197    
1198     {"description": "url(",
1199     "input": "url(",
1200     "output": [["URI_INVALID"]]},
1201    
1202     {"description": "uRl(",
1203     "input": "uRl(",
1204     "output": [["URI_INVALID"]]},
1205    
1206     {"description": "ur\\l(",
1207     "input": "ur\\l(",
1208     "output": [["URI_INVALID"]]},
1209    
1210     {"description": "url\\(",
1211     "input": "url\\(",
1212     "output": [["IDENT", "url("]]},
1213    
1214     {"description": "url()",
1215     "input": "url()",
1216     "output": [["URI", ""]]},
1217    
1218     {"description": "url( )",
1219     "input": "url( )",
1220     "output": [["URI", ""]]},
1221    
1222     {"description": "url( )",
1223     "input": "url( )",
1224     "output": [["URI", ""]]},
1225    
1226     {"description": "url(\u0009)",
1227     "input": "url(\u0009)",
1228     "output": [["URI", ""]]},
1229    
1230     {"description": "url(a)",
1231     "input": "url(a)",
1232     "output": [["URI", "a"]]},
1233    
1234     {"description": "url(abcde)",
1235     "input": "url(abcde)",
1236     "output": [["URI", "abcde"]]},
1237    
1238     {"description": "url( a)",
1239     "input": "url( a)",
1240     "output": [["URI", "a"]]},
1241    
1242     {"description": "url(a )",
1243     "input": "url(a )",
1244     "output": [["URI", "a"]]},
1245    
1246     {"description": "url( a )",
1247     "input": "url( a )",
1248     "output": [["URI", "a"]]},
1249    
1250     {"description": "url( /**/a)",
1251     "input": "url( /**/a)",
1252     "output": [["URI", "/**/a"]]},
1253    
1254     {"description": "url( /**/ a)",
1255     "input": "url( /**/ a)",
1256     "output": [["URI_INVALID"]]},
1257    
1258     {"description": "url(a b)",
1259     "input": "url(a b)",
1260     "output": [["URI_INVALID"]]},
1261    
1262     {"description": "url())",
1263     "input": "url())",
1264     "output": [["URI", ""], ["RPAREN"]]},
1265    
1266     {"description": "url(()",
1267     "input": "url(()",
1268     "output": [["URI_INVALID"]]},
1269    
1270     {"description": "url(\u0001)",
1271     "input": "url(\u0001)",
1272     "output": [["URI_INVALID"]]},
1273    
1274     {"description": "url(\u4e00)",
1275     "input": "url(\u4e00)",
1276     "output": [["URI", "\u4e00"]]},
1277    
1278     {"description": "url(\u000d)",
1279     "input": "url(\u000d)",
1280     "output": [["URI", ""]]},
1281    
1282     {"description": "url(\u000a)",
1283     "input": "url(\u000a)",
1284     "output": [["URI", ""]]},
1285    
1286     {"description": "url(\u000d\u000a)",
1287     "input": "url(\u000d\u000a)",
1288     "output": [["URI", ""]]},
1289    
1290     {"description": "url(\u000c)",
1291     "input": "url(\u000c)",
1292     "output": [["URI", ""]]},
1293    
1294     {"description": "url(\u000b)",
1295     "input": "url(\u000b)",
1296     "output": [["URI_INVALID"]]},
1297    
1298     {"description": "url(ad)",
1299     "input": "url(ad)",
1300     "output": [["URI", "ad"]]},
1301    
1302     {"description": "url(a )",
1303     "input": "url(a )",
1304     "output": [["URI", "a"]]},
1305    
1306     {"description": "url(a\u000d)",
1307     "input": "url(a\u000d)",
1308     "output": [["URI", "a"]]},
1309    
1310     {"description": "url(a\u000a)",
1311     "input": "url(a\u000a)",
1312     "output": [["URI", "a"]]},
1313    
1314     {"description": "url(a()",
1315     "input": "url(a()",
1316     "output": [["URI_INVALID"]]},
1317    
1318     {"description": "url(a))",
1319     "input": "url(a))",
1320     "output": [["URI", "a"], ["RPAREN"]]},
1321    
1322     {"description": "url(a\u4e00)",
1323     "input": "url(a\u4e00)",
1324     "output": [["URI", "a\u4e00"]]},
1325    
1326     {"description": "url(\\)",
1327     "input": "url(\\)",
1328     "output": [["URI_INVALID"]]},
1329    
1330     {"description": "url(a\\)",
1331     "input": "url(a\\)",
1332     "output": [["URI_INVALID"]]},
1333    
1334     {"description": "url(\\x)",
1335     "input": "url(\\x)",
1336     "output": [["URI", "x"]]},
1337    
1338     {"description": "url(a\\x)",
1339     "input": "url(a\\x)",
1340     "output": [["URI", "ax"]]},
1341    
1342     {"description": "url(\\xyz)",
1343     "input": "url(\\xyz)",
1344     "output": [["URI", "xyz"]]},
1345    
1346     {"description": "url(a\\xyz)",
1347     "input": "url(a\\xyz)",
1348     "output": [["URI", "axyz"]]},
1349    
1350     {"description": "url(\\x yz)",
1351     "input": "url(\\x yz)",
1352     "output": [["URI_INVALID"]]},
1353    
1354     {"description": "url(a\\x yz)",
1355     "input": "url(a\\x yz)",
1356     "output": [["URI_INVALID"]]},
1357    
1358     {"description": "url(\\a)",
1359     "input": "url(\\a)",
1360     "output": [["URI", "\u000a"]]},
1361    
1362     {"description": "url(\\a )",
1363     "input": "url(\\a )",
1364     "output": [["URI", "\u000a"]]},
1365    
1366     {"description": "url(a\\a )",
1367     "input": "url(a\\a )",
1368     "output": [["URI", "a\u000a"]]},
1369    
1370     {"description": "url(\\a b)",
1371     "input": "url(\\a b)",
1372     "output": [["URI", "\u000ab"]]},
1373    
1374     {"description": "url(\\a b)",
1375     "input": "url(\\a b)",
1376     "output": [["URI_INVALID"]]},
1377    
1378     {"description": "url(a\\a b)",
1379     "input": "url(a\\a b)",
1380     "output": [["URI_INVALID"]]},
1381    
1382     {"description": "url(\\\u000d)",
1383     "input": "url(\\\u000d)",
1384     "output": [["URI_INVALID"]]},
1385    
1386     {"description": "url(a\\\u000d)",
1387     "input": "url(a\\\u000d)",
1388     "output": [["URI_INVALID"]]},
1389    
1390     {"description": "url(\\\u000a)",
1391     "input": "url(\\\u000a)",
1392     "output": [["URI_INVALID"]]},
1393    
1394     {"description": "url(a\\\u000a)",
1395     "input": "url(a\\\u000a)",
1396     "output": [["URI_INVALID"]]},
1397    
1398     {"description": "url(\\\u000d\u000a)",
1399     "input": "url(\\\u000d\u000a)",
1400     "output": [["URI_INVALID"]]},
1401    
1402     {"description": "url(a\\\u000d\u000a)",
1403     "input": "url(a\\\u000d\u000a)",
1404     "output": [["URI_INVALID"]]},
1405    
1406     {"description": "url(\\\u000c)",
1407     "input": "url(\\\u000c)",
1408     "output": [["URI_INVALID"]]},
1409    
1410     {"description": "url(a\\\u000c)",
1411     "input": "url(a\\\u000c)",
1412     "output": [["URI_INVALID"]]},
1413    
1414     {"description": "url(\\\u0001)",
1415     "input": "url(\\\u0001)",
1416     "output": [["URI", "\u0001"]]},
1417    
1418     {"description": "url(a\\\u0001)",
1419     "input": "url(a\\\u0001)",
1420     "output": [["URI", "a\u0001"]]},
1421    
1422     {"description": "url(\\4e00)",
1423     "input": "url(\\4e00)",
1424     "output": [["URI", "\u4e00"]]},
1425    
1426     {"description": "url(a\\4e00)",
1427     "input": "url(a\\4e00)",
1428     "output": [["URI", "a\u4e00"]]},
1429    
1430     {"description": "url(\\\u0028)",
1431     "input": "url(\\\u0028)",
1432     "output": [["URI", "("]]},
1433    
1434     {"description": "url(a\\\u0028)",
1435     "input": "url(a\\\u0028)",
1436     "output": [["URI", "a("]]},
1437    
1438     {"description": "url(\\\u0029)",
1439     "input": "url(\\\u0029)",
1440     "output": [["URI", ")"]]},
1441    
1442     {"description": "url(a\\\u0029)",
1443     "input": "url(a\\\u0029)",
1444     "output": [["URI", "a)"]]},
1445    
1446     {"description": "url(a\\(b\\)c)",
1447     "input": "url(a\\(b\\)c)",
1448     "output": [["URI", "a(b)c"]]},
1449    
1450     {"description": "url(\\\\)",
1451     "input": "url(\\\\)",
1452     "output": [["URI", "\\"]]},
1453    
1454     {"description": "url(a\\\\)",
1455     "input": "url(a\\\\)",
1456     "output": [["URI", "a\\"]]},
1457    
1458     {"description": "url(a\\\\b)",
1459     "input": "url(a\\\\b)",
1460     "output": [["URI", "a\\b"]]},
1461    
1462     {"description": "url(a b\\)c)",
1463     "input": "url(a b\\c)",
1464     "output": [["URI_INVALID"]]},
1465    
1466     {"description": "url(a \"b)c\")",
1467     "input": "url(a \"b)c\")",
1468     "output": [["URI_INVALID"], ["IDENT", "c"], ["INVALID", ")"]]},
1469    
1470     {"description": "url(\"",
1471     "input": "url(\"",
1472     "output": [["URI_INVALID"]]},
1473    
1474     {"description": "url('",
1475     "input": "url('",
1476     "output": [["URI_INVALID"]]},
1477    
1478     {"description": "url(\")",
1479     "input": "url(\")",
1480     "output": [["URI_INVALID"]]},
1481    
1482     {"description": "url(')",
1483     "input": "url(')",
1484     "output": [["URI_INVALID"]]},
1485    
1486     {"description": "url(\"\"",
1487     "input": "url(\"\"",
1488     "output": [["URI_INVALID"]]},
1489    
1490     {"description": "url(\"'",
1491     "input": "url(\"'",
1492     "output": [["URI_INVALID"]]},
1493    
1494     {"description": "url(''",
1495     "input": "url(''",
1496     "output": [["URI_INVALID"]]},
1497    
1498     {"description": "url('\"",
1499     "input": "url('\"",
1500     "output": [["URI_INVALID"]]},
1501    
1502     {"description": "url(\"\")",
1503     "input": "url(\"\")",
1504     "output": [["URI", ""]]},
1505    
1506     {"description": "url(\"')",
1507     "input": "url(\"')",
1508     "output": [["URI_INVALID"]]},
1509    
1510     {"description": "url('\")",
1511     "input": "url('\")",
1512     "output": [["URI_INVALID"]]},
1513    
1514     {"description": "url('a')",
1515     "input": "url('a')",
1516     "output": [["URI", "a"]]},
1517    
1518     {"description": "url(\"a\")",
1519     "input": "url(\"a\")",
1520     "output": [["URI", "a"]]},
1521    
1522     {"description": "url('abcde')",
1523     "input": "url('abcde')",
1524     "output": [["URI", "abcde"]]},
1525    
1526     {"description": "url(\"abcde\")",
1527     "input": "url(\"abcde\")",
1528     "output": [["URI", "abcde"]]},
1529    
1530     {"description": "url( 'abcde')",
1531     "input": "url( 'abcde')",
1532     "output": [["URI", "abcde"]]},
1533    
1534     {"description": "url( \"abcde\")",
1535     "input": "url( \"abcde\")",
1536     "output": [["URI", "abcde"]]},
1537    
1538     {"description": "url('abcde' )",
1539     "input": "url('abcde' )",
1540     "output": [["URI", "abcde"]]},
1541    
1542     {"description": "url(\"abcde\" )",
1543     "input": "url(\"abcde\" )",
1544     "output": [["URI", "abcde"]]},
1545    
1546     {"description": "url( '\\'abcde')",
1547     "input": "url( '\\'abcde')",
1548     "output": [["URI", "'abcde"]]},
1549    
1550     {"description": "url( \"\\'abcde\")",
1551     "input": "url( \"\\'abcde\")",
1552     "output": [["URI", "'abcde"]]},
1553    
1554     {"description": "url( '\\\"abcde')",
1555     "input": "url( '\\\"abcde')",
1556     "output": [["URI", "\"abcde"]]},
1557    
1558     {"description": "url( \"\\\"abcde\")",
1559     "input": "url( \"\\\"abcde\")",
1560     "output": [["URI", "\"abcde"]]},
1561    
1562     {"description": "url( 'x\\'abcde')",
1563     "input": "url( 'x\\'abcde')",
1564     "output": [["URI", "x'abcde"]]},
1565    
1566     {"description": "url( \"x\\'abcde\")",
1567     "input": "url( \"x\\'abcde\")",
1568     "output": [["URI", "x'abcde"]]},
1569    
1570     {"description": "url( 'x\\\"abcde')",
1571     "input": "url( 'x\\\"abcde')",
1572     "output": [["URI", "x\"abcde"]]},
1573    
1574     {"description": "url( \"x\\\"abcde\")",
1575     "input": "url( \"x\\\"abcde\")",
1576     "output": [["URI", "x\"abcde"]]},
1577    
1578     {"description": "url( 'a(bcd)e')",
1579     "input": "url( 'a(bcd)e')",
1580     "output": [["URI", "a(bcd)e"]]},
1581    
1582     {"description": "url( \"a(bcd)e\")",
1583     "input": "url( \"a(bcd)e\")",
1584     "output": [["URI", "a(bcd)e"]]},
1585    
1586     {"description": "url( 'a(bcde')",
1587     "input": "url( 'a(bcde')",
1588     "output": [["URI", "a(bcde"]]},
1589    
1590     {"description": "url( \"a(bcde\")",
1591     "input": "url( \"a(bcde\")",
1592     "output": [["URI", "a(bcde"]]},
1593    
1594     {"description": "url( 'abcd)e')",
1595     "input": "url( 'abcd)e')",
1596     "output": [["URI", "abcd)e"]]},
1597    
1598     {"description": "url( \"abcd)e\")",
1599     "input": "url( \"abcd)e\")",
1600     "output": [["URI", "abcd)e"]]},
1601    
1602     {"description": "url( '\\a(bcd)e')",
1603     "input": "url( '\\a(bcd)e')",
1604     "output": [["URI", "\u000a(bcd)e"]]},
1605    
1606     {"description": "url( \"\\a(bcd)e\")",
1607     "input": "url( \"\\a(bcd)e\")",
1608     "output": [["URI", "\u000a(bcd)e"]]},
1609    
1610     {"description": "url( '\\a (bcd)e')",
1611     "input": "url( '\\a (bcd)e')",
1612     "output": [["URI", "\u000a(bcd)e"]]},
1613    
1614     {"description": "url( \"\\a (bcd)e\")",
1615     "input": "url( \"\\a (bcd)e\")",
1616     "output": [["URI", "\u000a(bcd)e"]]},
1617    
1618     {"description": "url( '\\Xa(bcd)e')",
1619     "input": "url( '\\Xa(bcd)e')",
1620     "output": [["URI", "Xa(bcd)e"]]},
1621    
1622     {"description": "url( \"\\Xa(bcd)e\")",
1623     "input": "url( \"\\Xa(bcd)e\")",
1624     "output": [["URI", "Xa(bcd)e"]]},
1625    
1626     {"description": "url( 'a b')",
1627     "input": "url( 'a b')",
1628     "output": [["URI", "a b"]]},
1629    
1630     {"description": "url( \"a b\")",
1631     "input": "url( \"a b\")",
1632     "output": [["URI", "a b"]]},
1633    
1634     {"description": "url( ' a b ')",
1635     "input": "url( ' a b ')",
1636     "output": [["URI", " a b "]]},
1637    
1638     {"description": "url( \" a b \")",
1639     "input": "url( \" a b \")",
1640     "output": [["URI", " a b "]]},
1641    
1642     {"description": "url( 'a b'c)",
1643     "input": "url( 'a b'c)",
1644     "output": [["URI_INVALID"]]},
1645    
1646     {"description": "url( \"a b\"c)",
1647     "input": "url( \"a b\"c)",
1648     "output": [["URI_INVALID"]]},
1649    
1650     {"description": "url( 'a b''c')",
1651     "input": "url( 'a b''c')",
1652     "output": [["URI_INVALID"]]},
1653    
1654     {"description": "url( \"a b\"\"c\")",
1655     "input": "url( \"a b\"\"c\")",
1656     "output": [["URI_INVALID"]]},
1657    
1658     {"description": "url( 'a b' c)",
1659     "input": "url( 'a b' c)",
1660     "output": [["URI_INVALID"]]},
1661    
1662     {"description": "url( \"a b\" c)",
1663     "input": "url( \"a b\" c)",
1664     "output": [["URI_INVALID"]]},
1665    
1666     {"description": "url( '\\",
1667     "input": "url( '\\",
1668     "output": [["URI_INVALID"], ["DELIM", "\\"]]},
1669    
1670     {"description": "url( \"\\)",
1671     "input": "url( \"\\",
1672     "output": [["URI_INVALID"], ["DELIM", "\\"]]},
1673    
1674     {"description": "url( 'x\\",
1675     "input": "url( 'x\\",
1676     "output": [["URI_INVALID"], ["DELIM", "\\"]]},
1677    
1678     {"description": "url( \"x\\)",
1679     "input": "url( \"x\\",
1680     "output": [["URI_INVALID"], ["DELIM", "\\"]]},
1681    
1682     {"description": "url('\u000a')",
1683     "input": "url('\u000a')",
1684     "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1685    
1686     {"description": "url(\"\u000a\")",
1687     "input": "url(\"\u000a\")",
1688     "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1689    
1690     {"description": "url('\u000d')",
1691     "input": "url('\u000d')",
1692     "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1693    
1694     {"description": "url(\"\u000d\")",
1695     "input": "url(\"\u000d\")",
1696     "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1697    
1698     {"description": "url('\u000d\u000a')",
1699     "input": "url('\u000d\u000a')",
1700     "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1701    
1702     {"description": "url(\"\u000d\u000a\")",
1703     "input": "url(\"\u000d\u000a\")",
1704     "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1705    
1706     {"description": "url('\u000c')",
1707     "input": "url('\u000c')",
1708     "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1709    
1710     {"description": "url(\"\u000c\")",
1711     "input": "url(\"\u000c\")",
1712 wakaba 1.8 "output": [["URI_INVALID"], ["S"], ["INVALID", ")"]]},
1713    
1714     {"description": "url-prefix()",
1715     "input": "url-prefix()",
1716     "output": [["URI_PREFIX", ""]]},
1717    
1718     {"description": "url-prefix(\"\")",
1719     "input": "url-prefix(\"\")",
1720     "output": [["URI_PREFIX", ""]]},
1721    
1722     {"description": "url-prefix('')",
1723     "input": "url-prefix('')",
1724     "output": [["URI_PREFIX", ""]]},
1725    
1726     {"description": "url-prefix(aaa)",
1727     "input": "url-prefix(aaa)",
1728     "output": [["URI_PREFIX", "aaa"]]},
1729    
1730     {"description": "url-prefix(\"abc\")",
1731     "input": "url-prefix(\"abc\")",
1732     "output": [["URI_PREFIX", "abc"]]},
1733    
1734     {"description": "url-prefix('abc')",
1735     "input": "url-prefix('abc')",
1736     "output": [["URI_PREFIX", "abc"]]},
1737    
1738     {"description": "url-prefix(\\4e00)",
1739     "input": "url-prefix(\\4e00)",
1740     "output": [["URI_PREFIX", "\u4e00"]]},
1741    
1742     {"description": "url-prefix(aa\"bb)",
1743     "input": "url-prefix(aa\"bb)",
1744     "output": [["URI_PREFIX_INVALID"]]},
1745    
1746     {"description": "url-prefix(aa'bb)",
1747     "input": "url-prefix(aa'bb)",
1748     "output": [["URI_PREFIX_INVALID"]]},
1749    
1750     {"description": "url-prefix(\"aa)",
1751     "input": "url-prefix(\"aa)",
1752     "output": [["URI_PREFIX_INVALID"]]},
1753    
1754     {"description": "url-prefix('aaa)",
1755     "input": "url-prefix('aaa)",
1756     "output": [["URI_PREFIX_INVALID"]]},
1757    
1758     {"description": "url-prefi\\x( a )",
1759     "input": "url-prefi\\x( a )",
1760     "output": [["URI_PREFIX", "a"]]},
1761    
1762     {"description": "u+",
1763     "input": "u+",
1764     "output": [["IDENT", "u"], ["PLUS"]]},
1765    
1766     {"description": "U+",
1767     "input": "U+",
1768     "output": [["IDENT", "U"], ["PLUS"]]},
1769    
1770     {"description": "u\\+",
1771     "input": "u\\+",
1772     "output": [["IDENT", "u+"]]},
1773    
1774     {"description": "u+4",
1775     "input": "u+4",
1776     "output": [["UNICODE_RANGE", "4"]]},
1777    
1778     {"description": "u+a",
1779     "input": "u+a",
1780     "output": [["UNICODE_RANGE", "a"]]},
1781    
1782     {"description": "u+B",
1783     "input": "u+B",
1784     "output": [["UNICODE_RANGE", "B"]]},
1785    
1786     {"description": "u+?",
1787     "input": "u+?",
1788     "output": [["UNICODE_RANGE", "?"]]},
1789    
1790     {"description": "u+X",
1791     "input": "u+X",
1792     "output": [["IDENT", "u"], ["PLUS"], ["IDENT", "X"]]},
1793    
1794     {"description": "u+/**/4",
1795     "input": "u+/**/4",
1796     "output": [["IDENT", "u"], ["PLUS"], ["NUMBER", "4"]]},
1797    
1798     {"description": "u+\\34",
1799     "input": "u+\\34",
1800     "output": [["IDENT", "u"], ["PLUS"], ["IDENT", "4"]]},
1801    
1802     {"description": "u+42",
1803     "input": "u+42",
1804     "output": [["UNICODE_RANGE", "42"]]},
1805    
1806     {"description": "u+4E0",
1807     "input": "u+4E0",
1808     "output": [["UNICODE_RANGE", "4E0"]]},
1809    
1810     {"description": "u+4e00",
1811     "input": "u+4e00",
1812     "output": [["UNICODE_RANGE", "4e00"]]},
1813    
1814     {"description": "u+4?2?",
1815     "input": "u+4?2?",
1816     "output": [["UNICODE_RANGE", "4?2?"]]},
1817    
1818     {"description": "u+4???",
1819     "input": "u+4???",
1820     "output": [["UNICODE_RANGE", "4???"]]},
1821    
1822     {"description": "u+4???12",
1823     "input": "u+4???12",
1824     "output": [["UNICODE_RANGE", "4???12"]]},
1825    
1826     {"description": "u+4123456",
1827     "input": "u+4123456",
1828     "output": [["UNICODE_RANGE", "412345"], ["NUMBER", "6"]]},
1829    
1830     {"description": "u+4123456em",
1831     "input": "u+4123456em",
1832     "output": [["UNICODE_RANGE", "412345"], ["DIMENSION", "6", "em"]]},
1833    
1834     {"description": "u+4-",
1835     "input": "u+4-",
1836 wakaba 1.10 "output": [["UNICODE_RANGE", "4"], ["MINUS"]]},
1837 wakaba 1.8
1838     {"description": "u+4-?",
1839     "input": "u+4-?",
1840 wakaba 1.10 "output": [["UNICODE_RANGE", "4"], ["MINUS"], ["DELIM", "?"]]},
1841 wakaba 1.8
1842     {"description": "u+4-1",
1843     "input": "u+4-1",
1844     "output": [["UNICODE_RANGE", "4-1"]]},
1845    
1846     {"description": "u+4-x",
1847     "input": "u+4-x",
1848     "output": [["UNICODE_RANGE", "4"], ["IDENT", "-x"]]},
1849    
1850     {"description": "u+4/**/-1",
1851     "input": "u+4/**/-1",
1852 wakaba 1.10 "output": [["UNICODE_RANGE", "4"], ["MINUS"], ["NUMBER", "1"]]},
1853 wakaba 1.8
1854     {"description": "u+4-12",
1855     "input": "u+4-12",
1856     "output": [["UNICODE_RANGE", "4-12"]]},
1857    
1858     {"description": "u+4-eef",
1859     "input": "u+4-eef",
1860     "output": [["UNICODE_RANGE", "4-eef"]]},
1861    
1862     {"description": "u+4-ffff",
1863     "input": "u+4-ffff",
1864     "output": [["UNICODE_RANGE", "4-ffff"]]},
1865    
1866     {"description": "u+4-10000",
1867     "input": "u+4-10000",
1868     "output": [["UNICODE_RANGE", "4-10000"]]},
1869    
1870     {"description": "u+4-ffffff",
1871     "input": "u+4-ffffff",
1872     "output": [["UNICODE_RANGE", "4-ffffff"]]},
1873    
1874     {"description": "u+4-1234567",
1875     "input": "u+4-1234567",
1876     "output": [["UNICODE_RANGE", "4-123456"], ["NUMBER", "7"]]},
1877    
1878     {"description": "u+4-123?56",
1879     "input": "u+4-123?56",
1880     "output": [["UNICODE_RANGE", "4-123"], ["DELIM", "?"], ["NUMBER", "56"]]},
1881    
1882     {"description": "u+4--",
1883     "input": "u+4--",
1884 wakaba 1.10 "output": [["UNICODE_RANGE", "4"], ["MINUS"], ["MINUS"]]},
1885 wakaba 1.8
1886     {"description": "u+4-->",
1887     "input": "u+4-->",
1888     "output": [["UNICODE_RANGE", "4"], ["CDC"]]},
1889    
1890     {"description": "u+4-/**/->",
1891     "input": "u+4-/**/->",
1892 wakaba 1.10 "output": [["UNICODE_RANGE", "4"], ["MINUS"], ["MINUS"],
1893 wakaba 1.8 ["GREATER"]]},
1894    
1895     {"description": "u+4--/**/>",
1896     "input": "u+4--/**/>",
1897 wakaba 1.10 "output": [["UNICODE_RANGE", "4"], ["MINUS"], ["MINUS"],
1898 wakaba 1.8 ["GREATER"]]},
1899    
1900     {"description": "\\u+4",
1901     "input": "\\u+4",
1902     "output": [["IDENT", "u"], ["PLUS"], ["NUMBER", "4"]]},
1903    
1904     {"description": "<",
1905     "input": "<",
1906     "output": [["DELIM", "<"]]},
1907    
1908     {"description": "<!",
1909     "input": "<!",
1910 wakaba 1.10 "output": [["DELIM", "<"], ["EXCLAMATION"]]},
1911 wakaba 1.8
1912     {"description": "<!-",
1913     "input": "<!-",
1914 wakaba 1.10 "output": [["DELIM", "<"], ["EXCLAMATION"], ["MINUS"]]},
1915 wakaba 1.8
1916     {"description": "<!--",
1917     "input": "<!--",
1918     "output": [["CDO"]]},
1919    
1920     {"description": "\\<!--",
1921     "input": "\\<!--",
1922 wakaba 1.10 "output": [["IDENT", "<"], ["EXCLAMATION"], ["MINUS"], ["MINUS"]]},
1923 wakaba 1.8
1924     {"description": "<!--a",
1925     "input": "<!--a",
1926     "output": [["CDO"], ["IDENT", "a"]]},
1927    
1928     {"description": "<!-->",
1929     "input": "<!-->",
1930     "output": [["CDO"], ["GREATER"]]},
1931    
1932     {"description": "<!--->",
1933     "input": "<!--->",
1934 wakaba 1.10 "output": [["CDO"], ["MINUS"], ["GREATER"]]},
1935 wakaba 1.8
1936     {"description": "<!---->",
1937     "input": "<!---->",
1938     "output": [["CDO"], ["CDC"]]},
1939    
1940     {"description": "<!>",
1941     "input": "<!>",
1942 wakaba 1.10 "output": [["DELIM", "<"], ["EXCLAMATION"], ["GREATER"]]},
1943 wakaba 1.8
1944     {"description": "-",
1945     "input": "-",
1946 wakaba 1.10 "output": [["MINUS"]]},
1947 wakaba 1.8
1948     {"description": "--",
1949     "input": "--",
1950 wakaba 1.10 "output": [["MINUS"], ["MINUS"]]},
1951 wakaba 1.8
1952     {"description": "-->",
1953     "input": "-->",
1954 wakaba 1.9 "output": [["CDC"]]},
1955    
1956     {"description": ";",
1957     "input": ";",
1958     "output": [["SEMICOLON"]]},
1959    
1960     {"description": ";;",
1961     "input": ";;",
1962     "output": [["SEMICOLON"], ["SEMICOLON"]]},
1963    
1964     {"description": "\\;",
1965     "input": "\\;",
1966     "output": [["IDENT", ";"]]},
1967    
1968     {"description": "{",
1969     "input": "{",
1970     "output": [["LBRACE"]]},
1971    
1972     {"description": "}",
1973     "input": "}",
1974     "output": [["RBRACE"]]},
1975    
1976     {"description": "[",
1977     "input": "[",
1978     "output": [["LBRACKET"]]},
1979    
1980     {"description": "]",
1981     "input": "]",
1982     "output": [["RBRACKET"]]},
1983    
1984     {"description": "(",
1985     "input": "(",
1986     "output": [["LPAREN"]]},
1987    
1988     {"description": ")",
1989     "input": ")",
1990     "output": [["RPAREN"]]},
1991    
1992     {"description": "((",
1993     "input": "((",
1994     "output": [["LPAREN"], ["LPAREN"]]},
1995    
1996     {"description": "()",
1997     "input": "()",
1998     "output": [["LPAREN"], ["RPAREN"]]},
1999    
2000     {"description": "\u0000",
2001     "input": "\u0000",
2002     "output": [["DELIM", "\u0000"]]},
2003    
2004     {"description": "\u0009",
2005     "input": "\u0009",
2006     "output": [["S"]]},
2007    
2008     {"description": "\u0009\u0009",
2009     "input": "\u0009\u0009",
2010     "output": [["S"]]},
2011    
2012     {"description": "\u0009 ",
2013     "input": "\u0009 ",
2014     "output": [["S"]]},
2015    
2016     {"description": "\u000a",
2017     "input": "\u000a",
2018     "output": [["S"]]},
2019    
2020     {"description": "\u000a\u000a",
2021     "input": "\u000a\u000a",
2022     "output": [["S"]]},
2023    
2024     {"description": "\u000d",
2025     "input": "\u000d",
2026     "output": [["S"]]},
2027    
2028     {"description": "\u000d\u000a",
2029     "input": "\u000d\u000a",
2030     "output": [["S"]]},
2031    
2032     {"description": "\u0009\u000a",
2033     "input": "\u0009\u000a",
2034     "output": [["S"]]},
2035    
2036     {"description": "\u000b",
2037     "input": "\u000b",
2038     "output": [["DELIM", "\u000b"]]},
2039    
2040     {"description": "\u000c",
2041     "input": "\u000c",
2042     "output": [["S"]]},
2043    
2044     {"description": "\u000f",
2045     "input": "\u000f",
2046     "output": [["DELIM", "\u000f"]]},
2047    
2048     {"description": " ",
2049     "input": " ",
2050     "output": [["S"]]},
2051    
2052     {"description": " ",
2053     "input": " ",
2054     "output": [["S"]]},
2055    
2056     {"description": "\u0009 ",
2057     "input": "\u0009 ",
2058     "output": [["S"]]},
2059    
2060     {"description": " \u0009",
2061     "input": " \u0009",
2062     "output": [["S"]]},
2063    
2064     {"description": "X\u0009",
2065     "input": "X\u0009",
2066     "output": [["IDENT", "X"], ["S"]]},
2067    
2068     {"description": "/",
2069     "input": "/",
2070     "output": [["DELIM", "/"]]},
2071    
2072     {"description": "/*",
2073     "input": "/*",
2074     "output": [["COMMENT_INVALID"]]},
2075    
2076     {"description": "/**",
2077     "input": "/**",
2078     "output": [["COMMENT_INVALID"]]},
2079    
2080     {"description": "/***",
2081     "input": "/***",
2082     "output": [["COMMENT_INVALID"]]},
2083    
2084     {"description": "/**/",
2085     "input": "/**/",
2086     "output": []},
2087    
2088     {"description": "/***/",
2089     "input": "/***/",
2090     "output": []},
2091    
2092     {"description": "/****/",
2093     "input": "/****/",
2094     "output": []},
2095    
2096     {"description": "/* */",
2097     "input": "/* */",
2098     "output": []},
2099    
2100     {"description": "/*\u000a*/",
2101     "input": "/*\u000a*/",
2102     "output": []},
2103    
2104     {"description": "/**/ ",
2105     "input": "/**/ ",
2106     "output": [["S"]]},
2107    
2108     {"description": " /**/ ",
2109     "input": " /**/ ",
2110     "output": [["S"], ["S"]]},
2111    
2112     {"description": "/*/**/",
2113     "input": "/*/**/",
2114     "output": []},
2115    
2116     {"description": "/*/**/*/",
2117     "input": "/*/**/*/",
2118 wakaba 1.10 "output": [["STAR"], ["DELIM", "/"]]},
2119    
2120     {"description": "a(",
2121     "input": "a(",
2122     "output": [["FUNCTION", "a"]]},
2123    
2124     {"description": "A(",
2125     "input": "A(",
2126     "output": [["FUNCTION", "A"]]},
2127    
2128     {"description": "abc(",
2129     "input": "abc(",
2130     "output": [["FUNCTION", "abc"]]},
2131    
2132     {"description": "\\x(",
2133     "input": "\\x(",
2134     "output": [["FUNCTION", "x"]]},
2135    
2136     {"description": "\\a(",
2137     "input": "\\a(",
2138     "output": [["FUNCTION", "\u000a"]]},
2139    
2140     {"description": "a\\b(",
2141     "input": "a\\b(",
2142     "output": [["FUNCTION", "a\u000b"]]},
2143    
2144     {"description": "a\\a(",
2145     "input": "a\\a(",
2146     "output": [["FUNCTION", "a\u000a"]]},
2147    
2148     {"description": "a\\a b(",
2149     "input": "a\\a b(",
2150     "output": [["FUNCTION", "a\u000ab"]]},
2151    
2152     {"description": "a\\\u000d(",
2153     "input": "a\\\u000d(",
2154     "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"], ["LPAREN"]]},
2155    
2156     {"description": "a\\\u000a(",
2157     "input": "a\\\u000a(",
2158     "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"], ["LPAREN"]]},
2159    
2160     {"description": "a\\\u000d\u000a(",
2161     "input": "a\\\u000d\u000a(",
2162     "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"], ["LPAREN"]]},
2163    
2164     {"description": "a\\\u000c(",
2165     "input": "a\\\u000c(",
2166     "output": [["IDENT", "a"], ["DELIM", "\\"], ["S"], ["LPAREN"]]},
2167    
2168     {"description": "a (",
2169     "input": "a (",
2170     "output": [["IDENT", "a"], ["S"], ["LPAREN"]]},
2171    
2172     {"description": "a\\ (",
2173     "input": "a\\ (",
2174     "output": [["FUNCTION", "a "]]},
2175    
2176     {"description": "a\\ (",
2177     "input": "a\\ (",
2178     "output": [["IDENT", "a "], ["S"], ["LPAREN"]]},
2179    
2180     {"description": "-(",
2181     "input": "-(",
2182     "output": [["MINUS"], ["LPAREN"]]},
2183    
2184     {"description": "\\-(",
2185     "input": "\\-(",
2186     "output": [["FUNCTION", "-"]]},
2187    
2188     {"description": "-a(",
2189     "input": "-a(",
2190     "output": [["FUNCTION", "-a"]]},
2191    
2192     {"description": "-1(",
2193     "input": "-1(",
2194     "output": [["MINUS"], ["NUMBER", "1"], ["LPAREN"]]},
2195    
2196     {"description": "-a_b(",
2197     "input": "-a_b(",
2198     "output": [["FUNCTION", "-a_b"]]},
2199    
2200     {"description": "--(",
2201     "input": "--(",
2202     "output": [["MINUS"], ["MINUS"], ["LPAREN"]]},
2203    
2204     {"description": "-->(",
2205     "input": "-->(",
2206     "output": [["CDC"], ["LPAREN"]]},
2207    
2208     {"description": "~",
2209     "input": "~",
2210     "output": [["TILDE"]]},
2211    
2212     {"description": " ~",
2213     "input": " ~",
2214     "output": [["TILDE"]]},
2215    
2216     {"description": " ~",
2217     "input": " ~",
2218     "output": [["TILDE"]]},
2219    
2220     {"description": "~a",
2221     "input": "~a",
2222     "output": [["TILDE"], ["IDENT", "a"]]},
2223    
2224     {"description": "~=",
2225     "input": "~=",
2226     "output": [["INCLUDES"]]},
2227    
2228     {"description": "~~=",
2229     "input": "~~=",
2230     "output": [["TILDE"], ["INCLUDES"]]},
2231    
2232     {"description": "|",
2233     "input": "|",
2234     "output": [["VBAR"]]},
2235    
2236     {"description": "||",
2237     "input": "||",
2238     "output": [["VBAR"], ["VBAR"]]},
2239    
2240     {"description": "|=",
2241     "input": "|=",
2242     "output": [["DASHMATCH"]]},
2243    
2244     {"description": "|= ",
2245     "input": "|= ",
2246     "output": [["DASHMATCH"], ["S"]]},
2247    
2248     {"description": "|= ",
2249     "input": "|= ",
2250     "output": [["DASHMATCH"], ["S"]]},
2251    
2252     {"description": "||=",
2253     "input": "||=",
2254     "output": [["VBAR"], ["DASHMATCH"]]},
2255    
2256     {"description": "^",
2257     "input": "^",
2258     "output": [["DELIM", "^"]]},
2259    
2260     {"description": "^^",
2261     "input": "^^",
2262     "output": [["DELIM", "^"], ["DELIM", "^"]]},
2263    
2264     {"description": "^=",
2265     "input": "^=",
2266     "output": [["PREFIXMATCH"]]},
2267    
2268     {"description": "^=\u0009",
2269     "input": "^=\u0009",
2270     "output": [["PREFIXMATCH"], ["S"]]},
2271    
2272     {"description": "^= ",
2273     "input": "^= ",
2274     "output": [["PREFIXMATCH"], ["S"]]},
2275    
2276     {"description": "^^=",
2277     "input": "^^=",
2278     "output": [["DELIM", "^"], ["PREFIXMATCH"]]},
2279    
2280     {"description": "$",
2281     "input": "$",
2282     "output": [["DELIM", "$"]]},
2283    
2284     {"description": "$$",
2285     "input": "$$",
2286     "output": [["DELIM", "$"], ["DELIM", "$"]]},
2287    
2288     {"description": "$a",
2289     "input": "$a",
2290     "output": [["DELIM", "$"], ["IDENT", "a"]]},
2291    
2292     {"description": "$=",
2293     "input": "$=",
2294     "output": [["SUFFIXMATCH"]]},
2295    
2296     {"description": "$= ",
2297     "input": "$= ",
2298     "output": [["SUFFIXMATCH"], ["S"]]},
2299    
2300     {"description": "$= ",
2301     "input": "$= ",
2302     "output": [["SUFFIXMATCH"], ["S"]]},
2303    
2304     {"description": "$==",
2305     "input": "$==",
2306     "output": [["SUFFIXMATCH"], ["MATCH"]]},
2307    
2308     {"description": "*",
2309     "input": "*",
2310     "output": [["STAR"]]},
2311    
2312     {"description": "**",
2313     "input": "**",
2314     "output": [["STAR"], ["STAR"]]},
2315    
2316     {"description": "*=",
2317     "input": "*=",
2318     "output": [["SUBSTRINGMATCH"]]},
2319    
2320     {"description": "*/**/=",
2321     "input": "*/**/=",
2322     "output": [["STAR"], ["MATCH"]]},
2323    
2324     {"description": "*= ",
2325     "input": "*= ",
2326     "output": [["SUBSTRINGMATCH"], ["S"]]},
2327    
2328     {"description": "*= ",
2329     "input": "*= ",
2330     "output": [["SUBSTRINGMATCH"], ["S"]]},
2331    
2332     {"description": "=",
2333     "input": "=",
2334     "output": [["MATCH"]]},
2335    
2336     {"description": "!",
2337     "input": "!",
2338     "output": [["EXCLAMATION"]]},
2339    
2340     {"description": "%",
2341     "input": "%",
2342     "output": [["DELIM", "%"]]},
2343    
2344     {"description": "&",
2345     "input": "&",
2346     "output": [["DELIM", "&"]]},
2347    
2348     {"description": ",",
2349     "input": ",",
2350     "output": [["COMMA"]]},
2351    
2352     {"description": " ,",
2353     "input": " ,",
2354     "output": [["COMMA"]]},
2355    
2356     {"description": " ,",
2357     "input": " ,",
2358     "output": [["COMMA"]]},
2359    
2360     {"description": " /**/,",
2361     "input": " /**/,",
2362     "output": [["S"], ["COMMA"]]},
2363    
2364     {"description": "+",
2365     "input": "+",
2366     "output": [["PLUS"]]},
2367    
2368     {"description": "+ ",
2369     "input": "+ ",
2370     "output": [["PLUS"], ["S"]]},
2371    
2372     {"description": " +",
2373     "input": " +",
2374     "output": [["PLUS"]]},
2375    
2376     {"description": "\u0009+",
2377     "input": "\u0009+",
2378     "output": [["PLUS"]]},
2379    
2380     {"description": " +",
2381     "input": " +",
2382     "output": [["PLUS"]]},
2383    
2384     {"description": "/",
2385     "input": "/",
2386     "output": [["DELIM", "/"]]},
2387    
2388     {"description": "<",
2389     "input": "<",
2390     "output": [["DELIM", "<"]]},
2391    
2392     {"description": ">",
2393     "input": ">",
2394     "output": [["GREATER"]]},
2395    
2396     {"description": " >",
2397     "input": " >",
2398     "output": [["GREATER"]]},
2399    
2400     {"description": " >",
2401     "input": " >",
2402     "output": [["GREATER"]]},
2403    
2404     {"description": ":",
2405     "input": ":",
2406     "output": [["COLON"]]},
2407    
2408     {"description": "::",
2409     "input": "::",
2410     "output": [["COLON"], ["COLON"]]},
2411    
2412     {"description": ":/**/:",
2413     "input": ":/**/:",
2414     "output": [["COLON"], ["COLON"]]},
2415    
2416     {"description": "?",
2417     "input": "?",
2418     "output": [["DELIM", "?"]]},
2419    
2420     {"description": "_",
2421     "input": "_",
2422     "output": [["IDENT", "_"]]},
2423    
2424     {"description": "`",
2425     "input": "`",
2426     "output": [["DELIM", "`"]]},
2427    
2428     {"description": "\u007f",
2429     "input": "\u007f",
2430     "output": [["DELIM", "\u007f"]]},
2431    
2432     {"description": "\u0080",
2433     "input": "\u0080",
2434     "output": [["IDENT", "\u0080"]]},
2435    
2436     {"description": ":not(",
2437     "input": ":not(",
2438     "output": [["COLON"], ["FUNCTION", "not"]]},
2439    
2440     {"description": ":no\\t(",
2441     "input": ":no\\t(",
2442     "output": [["COLON"], ["FUNCTION", "not"]]},
2443    
2444     {"description": ":/**/not(",
2445     "input": ":/**/not(",
2446     "output": [["COLON"], ["FUNCTION", "not"]]}
2447 wakaba 1.7 ]}

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24