commonmarker 0.14.15 → 0.15.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of commonmarker might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/ext/commonmarker/cmark/Makefile +4 -3
- data/ext/commonmarker/cmark/README.md +18 -11
- data/ext/commonmarker/cmark/extensions/ext_scanners.c +562 -3
- data/ext/commonmarker/cmark/extensions/ext_scanners.h +6 -0
- data/ext/commonmarker/cmark/extensions/ext_scanners.re +32 -0
- data/ext/commonmarker/cmark/extensions/table.c +87 -215
- data/ext/commonmarker/cmark/man/CMakeLists.txt +2 -2
- data/ext/commonmarker/cmark/man/make_man_page.py +1 -1
- data/ext/commonmarker/cmark/man/man1/{cmark.1 → cmark-gfm.1} +10 -4
- data/ext/commonmarker/cmark/man/man3/cmark-gfm.3 +2 -2
- data/ext/commonmarker/cmark/src/buffer.c +5 -1
- data/ext/commonmarker/cmark/src/cmark.c +6 -2
- data/ext/commonmarker/cmark/src/cmark.h +1 -1
- data/ext/commonmarker/cmark/src/cmark_extension_api.h +0 -2
- data/ext/commonmarker/cmark/src/commonmark.c +1 -2
- data/ext/commonmarker/cmark/src/inlines.c +1 -1
- data/ext/commonmarker/cmark/src/libcmark-gfm.pc.in +1 -1
- data/ext/commonmarker/cmark/src/main.c +1 -1
- data/ext/commonmarker/cmark/src/render.c +15 -0
- data/ext/commonmarker/cmark/test/extensions.txt +24 -3
- data/ext/commonmarker/cmark/test/roundtrip_tests.py +1 -0
- data/ext/commonmarker/cmark/test/spec.txt +84 -15
- data/ext/commonmarker/cmark/test/spec_tests.py +9 -8
- data/ext/commonmarker/cmark/tools/Dockerfile +12 -0
- data/lib/commonmarker/node.rb +3 -0
- data/lib/commonmarker/node/inspect.rb +59 -0
- data/lib/commonmarker/version.rb +1 -1
- data/test/test_node.rb +8 -0
- data/test/test_spec.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 828326c7f9a66b8e7caa67ea4bd8eae887f349c2
|
4
|
+
data.tar.gz: b6036c31b529bc7fe63d80217aa6931ce51b126d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 230cdde9843b531264c4346ea420b1aaa766713bd26b43a73531d2e263345d088779866d5bd1d6b1ae5190fbc642ed74bda1506198762b5ea3d7da20742dbb18
|
7
|
+
data.tar.gz: cd36ec10001cc1df2219e371b5bd02d27965558ce68cdfa17199c9cbc093cccc988a1b4845772434aa9439978b2b09ec454e2e6b8ec94b9569f0c990a468da12
|
data/README.md
CHANGED
@@ -35,7 +35,7 @@ The second argument is optional--[see below](#options) for more information.
|
|
35
35
|
|
36
36
|
### Generating a document
|
37
37
|
|
38
|
-
You can also parse a string to receive a `Document` node. You can
|
38
|
+
You can also parse a string to receive a `Document` node. You can then print that node to HTML, iterate over the children, and other fun node stuff. For example:
|
39
39
|
|
40
40
|
``` ruby
|
41
41
|
require 'commonmarker'
|
@@ -21,7 +21,7 @@ VERSION?=$(SPECVERSION)
|
|
21
21
|
RELEASE?=CommonMark-$(VERSION)
|
22
22
|
INSTALL_PREFIX?=/usr/local
|
23
23
|
CLANG_CHECK?=clang-check
|
24
|
-
CLANG_FORMAT=clang-format -style llvm -sort-includes=0 -i
|
24
|
+
CLANG_FORMAT=clang-format-3.5 -style llvm -sort-includes=0 -i
|
25
25
|
AFL_PATH?=/usr/local/bin
|
26
26
|
|
27
27
|
.PHONY: all cmake_build leakcheck clean fuzztest test debug ubsan asan mingw archive newbench bench format update-spec afl clang-check docker
|
@@ -80,6 +80,7 @@ afl:
|
|
80
80
|
-i test/afl_test_cases \
|
81
81
|
-o test/afl_results \
|
82
82
|
-x test/afl_dictionary \
|
83
|
+
$(AFL_OPTIONS) \
|
83
84
|
-t 100 \
|
84
85
|
$(CMARK) -e table -e strikethrough -e autolink -e tagfilter $(CMARK_OPTS)
|
85
86
|
|
@@ -131,7 +132,7 @@ $(EXTDIR)/ext_scanners.c: $(EXTDIR)/ext_scanners.re
|
|
131
132
|
esac
|
132
133
|
re2c --case-insensitive -b -i --no-generation-date -8 \
|
133
134
|
--encoding-policy substitute -o $@ $<
|
134
|
-
clang-format -style llvm -i $@
|
135
|
+
clang-format-3.5 -style llvm -i $@
|
135
136
|
|
136
137
|
# We include entities.inc in the repository, so normally this
|
137
138
|
# doesn't need to be regenerated:
|
@@ -202,7 +203,7 @@ format:
|
|
202
203
|
$(CLANG_FORMAT) src/*.c src/*.h api_test/*.c api_test/*.h
|
203
204
|
|
204
205
|
format-extensions:
|
205
|
-
clang-format -style llvm -i extensions/*.c extensions/*.h
|
206
|
+
clang-format-3.5 -style llvm -i extensions/*.c extensions/*.h
|
206
207
|
|
207
208
|
operf: $(CMARK)
|
208
209
|
operf $< < $(BENCHFILE) > /dev/null
|
@@ -1,13 +1,19 @@
|
|
1
|
-
cmark
|
2
|
-
|
1
|
+
cmark-gfm
|
2
|
+
=========
|
3
3
|
|
4
|
-
[![Build Status]](https://travis-ci.org/
|
5
|
-
[![Windows Build Status]](https://ci.appveyor.com/project/
|
4
|
+
[![Build Status]](https://travis-ci.org/github/cmark)
|
5
|
+
[![Windows Build Status]](https://ci.appveyor.com/project/github/cmark)
|
6
6
|
|
7
|
-
`cmark` is the C reference implementation of
|
8
|
-
rationalized version of Markdown syntax with a
|
9
|
-
|
10
|
-
[
|
7
|
+
`cmark-gfm` is an extended version of the C reference implementation of
|
8
|
+
[CommonMark], a rationalized version of Markdown syntax with a spec. This
|
9
|
+
repository adds GitHub Flavored Markdown extensions to
|
10
|
+
[the upstream implementation], as defined in [the spec].
|
11
|
+
|
12
|
+
The rest of the README is preserved as-is from the upstream source. Note that
|
13
|
+
the library and binaries produced by this fork are suffixed with `-gfm` in
|
14
|
+
order to distinguish them from the upstream.
|
15
|
+
|
16
|
+
---
|
11
17
|
|
12
18
|
It provides a shared library (`libcmark`) with functions for parsing
|
13
19
|
CommonMark documents to an abstract syntax tree (AST), manipulating
|
@@ -178,11 +184,12 @@ Nick Wellnhofer contributed many improvements, including
|
|
178
184
|
most of the C library's API and its test harness.
|
179
185
|
|
180
186
|
[benchmarks]: benchmarks.md
|
181
|
-
[the spec]:
|
187
|
+
[the spec]: https://github.github.com/gfm/
|
188
|
+
[the upstream implementation]: https://github.com/jgm/cmark
|
182
189
|
[CommonMark]: http://commonmark.org
|
183
190
|
[cmake]: http://www.cmake.org/download/
|
184
191
|
[re2c]: http://re2c.org
|
185
192
|
[commonmark.js]: https://github.com/jgm/commonmark.js
|
186
|
-
[Build Status]: https://img.shields.io/travis/
|
187
|
-
[Windows Build Status]: https://ci.appveyor.com/api/projects/status/
|
193
|
+
[Build Status]: https://img.shields.io/travis/github/cmark/master.svg?style=flat
|
194
|
+
[Windows Build Status]: https://ci.appveyor.com/api/projects/status/wv7ifhqhv5itm3d5?svg=true
|
188
195
|
[american fuzzy lop]: http://lcamtuf.coredump.cx/afl/
|
@@ -1,6 +1,6 @@
|
|
1
|
-
/* Generated by re2c 0.
|
2
|
-
#include "ext_scanners.h"
|
1
|
+
/* Generated by re2c 0.15.3 */
|
3
2
|
#include <stdlib.h>
|
3
|
+
#include "ext_scanners.h"
|
4
4
|
|
5
5
|
bufsize_t _ext_scan_at(bufsize_t (*scanner)(const unsigned char *),
|
6
6
|
unsigned char *ptr, int len, bufsize_t offset) {
|
@@ -39,7 +39,6 @@ bufsize_t _scan_table_start(const unsigned char *p) {
|
|
39
39
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
40
40
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
41
41
|
};
|
42
|
-
|
43
42
|
yych = *(marker = p);
|
44
43
|
if (yych <= '{') {
|
45
44
|
if (yych <= 0x1F) {
|
@@ -380,3 +379,563 @@ bufsize_t _scan_table_start(const unsigned char *p) {
|
|
380
379
|
goto yy8;
|
381
380
|
}
|
382
381
|
}
|
382
|
+
|
383
|
+
bufsize_t _scan_table_cell(const unsigned char *p) {
|
384
|
+
const unsigned char *marker = NULL;
|
385
|
+
const unsigned char *start = p;
|
386
|
+
|
387
|
+
{
|
388
|
+
unsigned char yych;
|
389
|
+
static const unsigned char yybm[] = {
|
390
|
+
128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 0, 128, 128, 0,
|
391
|
+
128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
|
392
|
+
128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
|
393
|
+
128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
|
394
|
+
128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
|
395
|
+
128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
|
396
|
+
128, 128, 128, 128, 128, 128, 128, 128, 64, 128, 128, 128, 128, 128,
|
397
|
+
128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
|
398
|
+
128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 0, 128,
|
399
|
+
128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
400
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
401
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
402
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
403
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
404
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
405
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
406
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
407
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
408
|
+
0, 0, 0, 0,
|
409
|
+
};
|
410
|
+
yych = *(marker = p);
|
411
|
+
if (yych <= 0x7F) {
|
412
|
+
if (yych <= '\r') {
|
413
|
+
if (yych == '\n')
|
414
|
+
goto yy34;
|
415
|
+
if (yych <= '\f')
|
416
|
+
goto yy36;
|
417
|
+
goto yy45;
|
418
|
+
} else {
|
419
|
+
if (yych <= '\\') {
|
420
|
+
if (yych <= '[')
|
421
|
+
goto yy36;
|
422
|
+
goto yy35;
|
423
|
+
} else {
|
424
|
+
if (yych == '|')
|
425
|
+
goto yy45;
|
426
|
+
goto yy36;
|
427
|
+
}
|
428
|
+
}
|
429
|
+
} else {
|
430
|
+
if (yych <= 0xED) {
|
431
|
+
if (yych <= 0xDF) {
|
432
|
+
if (yych >= 0xC2)
|
433
|
+
goto yy37;
|
434
|
+
} else {
|
435
|
+
if (yych <= 0xE0)
|
436
|
+
goto yy39;
|
437
|
+
if (yych <= 0xEC)
|
438
|
+
goto yy40;
|
439
|
+
goto yy44;
|
440
|
+
}
|
441
|
+
} else {
|
442
|
+
if (yych <= 0xF0) {
|
443
|
+
if (yych <= 0xEF)
|
444
|
+
goto yy40;
|
445
|
+
goto yy41;
|
446
|
+
} else {
|
447
|
+
if (yych <= 0xF3)
|
448
|
+
goto yy42;
|
449
|
+
if (yych <= 0xF4)
|
450
|
+
goto yy43;
|
451
|
+
}
|
452
|
+
}
|
453
|
+
}
|
454
|
+
yy34 : { return (bufsize_t)(p - start); }
|
455
|
+
yy35:
|
456
|
+
yych = *(marker = ++p);
|
457
|
+
if (yych == '|')
|
458
|
+
goto yy49;
|
459
|
+
goto yy50;
|
460
|
+
yy36:
|
461
|
+
yych = *(marker = ++p);
|
462
|
+
goto yy50;
|
463
|
+
yy37:
|
464
|
+
yych = *++p;
|
465
|
+
if (yych <= 0x7F)
|
466
|
+
goto yy38;
|
467
|
+
if (yych <= 0xBF)
|
468
|
+
goto yy36;
|
469
|
+
yy38:
|
470
|
+
p = marker;
|
471
|
+
goto yy34;
|
472
|
+
yy39:
|
473
|
+
yych = *++p;
|
474
|
+
if (yych <= 0x9F)
|
475
|
+
goto yy38;
|
476
|
+
if (yych <= 0xBF)
|
477
|
+
goto yy37;
|
478
|
+
goto yy38;
|
479
|
+
yy40:
|
480
|
+
yych = *++p;
|
481
|
+
if (yych <= 0x7F)
|
482
|
+
goto yy38;
|
483
|
+
if (yych <= 0xBF)
|
484
|
+
goto yy37;
|
485
|
+
goto yy38;
|
486
|
+
yy41:
|
487
|
+
yych = *++p;
|
488
|
+
if (yych <= 0x8F)
|
489
|
+
goto yy38;
|
490
|
+
if (yych <= 0xBF)
|
491
|
+
goto yy40;
|
492
|
+
goto yy38;
|
493
|
+
yy42:
|
494
|
+
yych = *++p;
|
495
|
+
if (yych <= 0x7F)
|
496
|
+
goto yy38;
|
497
|
+
if (yych <= 0xBF)
|
498
|
+
goto yy40;
|
499
|
+
goto yy38;
|
500
|
+
yy43:
|
501
|
+
yych = *++p;
|
502
|
+
if (yych <= 0x7F)
|
503
|
+
goto yy38;
|
504
|
+
if (yych <= 0x8F)
|
505
|
+
goto yy40;
|
506
|
+
goto yy38;
|
507
|
+
yy44:
|
508
|
+
yych = *++p;
|
509
|
+
if (yych <= 0x7F)
|
510
|
+
goto yy38;
|
511
|
+
if (yych <= 0x9F)
|
512
|
+
goto yy37;
|
513
|
+
goto yy38;
|
514
|
+
yy45:
|
515
|
+
++p;
|
516
|
+
{ return 0; }
|
517
|
+
yy47:
|
518
|
+
marker = ++p;
|
519
|
+
yych = *p;
|
520
|
+
if (yybm[0 + yych] & 64) {
|
521
|
+
goto yy47;
|
522
|
+
}
|
523
|
+
if (yych <= 0xDF) {
|
524
|
+
if (yych <= '\f') {
|
525
|
+
if (yych == '\n')
|
526
|
+
goto yy34;
|
527
|
+
} else {
|
528
|
+
if (yych <= '\r')
|
529
|
+
goto yy34;
|
530
|
+
if (yych <= 0x7F)
|
531
|
+
goto yy49;
|
532
|
+
if (yych <= 0xC1)
|
533
|
+
goto yy34;
|
534
|
+
goto yy51;
|
535
|
+
}
|
536
|
+
} else {
|
537
|
+
if (yych <= 0xEF) {
|
538
|
+
if (yych <= 0xE0)
|
539
|
+
goto yy52;
|
540
|
+
if (yych == 0xED)
|
541
|
+
goto yy57;
|
542
|
+
goto yy53;
|
543
|
+
} else {
|
544
|
+
if (yych <= 0xF0)
|
545
|
+
goto yy54;
|
546
|
+
if (yych <= 0xF3)
|
547
|
+
goto yy55;
|
548
|
+
if (yych <= 0xF4)
|
549
|
+
goto yy56;
|
550
|
+
goto yy34;
|
551
|
+
}
|
552
|
+
}
|
553
|
+
yy49:
|
554
|
+
marker = ++p;
|
555
|
+
yych = *p;
|
556
|
+
yy50:
|
557
|
+
if (yybm[0 + yych] & 128) {
|
558
|
+
goto yy49;
|
559
|
+
}
|
560
|
+
if (yych <= 0xEC) {
|
561
|
+
if (yych <= 0xC1) {
|
562
|
+
if (yych <= '\r')
|
563
|
+
goto yy34;
|
564
|
+
if (yych <= '\\')
|
565
|
+
goto yy47;
|
566
|
+
goto yy34;
|
567
|
+
} else {
|
568
|
+
if (yych <= 0xDF)
|
569
|
+
goto yy51;
|
570
|
+
if (yych <= 0xE0)
|
571
|
+
goto yy52;
|
572
|
+
goto yy53;
|
573
|
+
}
|
574
|
+
} else {
|
575
|
+
if (yych <= 0xF0) {
|
576
|
+
if (yych <= 0xED)
|
577
|
+
goto yy57;
|
578
|
+
if (yych <= 0xEF)
|
579
|
+
goto yy53;
|
580
|
+
goto yy54;
|
581
|
+
} else {
|
582
|
+
if (yych <= 0xF3)
|
583
|
+
goto yy55;
|
584
|
+
if (yych <= 0xF4)
|
585
|
+
goto yy56;
|
586
|
+
goto yy34;
|
587
|
+
}
|
588
|
+
}
|
589
|
+
yy51:
|
590
|
+
++p;
|
591
|
+
yych = *p;
|
592
|
+
if (yych <= 0x7F)
|
593
|
+
goto yy38;
|
594
|
+
if (yych <= 0xBF)
|
595
|
+
goto yy49;
|
596
|
+
goto yy38;
|
597
|
+
yy52:
|
598
|
+
++p;
|
599
|
+
yych = *p;
|
600
|
+
if (yych <= 0x9F)
|
601
|
+
goto yy38;
|
602
|
+
if (yych <= 0xBF)
|
603
|
+
goto yy51;
|
604
|
+
goto yy38;
|
605
|
+
yy53:
|
606
|
+
++p;
|
607
|
+
yych = *p;
|
608
|
+
if (yych <= 0x7F)
|
609
|
+
goto yy38;
|
610
|
+
if (yych <= 0xBF)
|
611
|
+
goto yy51;
|
612
|
+
goto yy38;
|
613
|
+
yy54:
|
614
|
+
++p;
|
615
|
+
yych = *p;
|
616
|
+
if (yych <= 0x8F)
|
617
|
+
goto yy38;
|
618
|
+
if (yych <= 0xBF)
|
619
|
+
goto yy53;
|
620
|
+
goto yy38;
|
621
|
+
yy55:
|
622
|
+
++p;
|
623
|
+
yych = *p;
|
624
|
+
if (yych <= 0x7F)
|
625
|
+
goto yy38;
|
626
|
+
if (yych <= 0xBF)
|
627
|
+
goto yy53;
|
628
|
+
goto yy38;
|
629
|
+
yy56:
|
630
|
+
++p;
|
631
|
+
yych = *p;
|
632
|
+
if (yych <= 0x7F)
|
633
|
+
goto yy38;
|
634
|
+
if (yych <= 0x8F)
|
635
|
+
goto yy53;
|
636
|
+
goto yy38;
|
637
|
+
yy57:
|
638
|
+
++p;
|
639
|
+
yych = *p;
|
640
|
+
if (yych <= 0x7F)
|
641
|
+
goto yy38;
|
642
|
+
if (yych <= 0x9F)
|
643
|
+
goto yy51;
|
644
|
+
goto yy38;
|
645
|
+
}
|
646
|
+
}
|
647
|
+
|
648
|
+
bufsize_t _scan_table_cell_end(const unsigned char *p) {
|
649
|
+
const unsigned char *marker = NULL;
|
650
|
+
const unsigned char *start = p;
|
651
|
+
|
652
|
+
{
|
653
|
+
unsigned char yych;
|
654
|
+
unsigned int yyaccept = 0;
|
655
|
+
static const unsigned char yybm[] = {
|
656
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 128, 128, 0, 0, 0, 0, 0, 0, 0,
|
657
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0,
|
658
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
659
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
660
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
661
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
662
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
663
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
664
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
665
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
666
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
667
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
668
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
669
|
+
};
|
670
|
+
yych = *(marker = p);
|
671
|
+
if (yych <= 0xDF) {
|
672
|
+
if (yych <= '{') {
|
673
|
+
if (yych != '\n')
|
674
|
+
goto yy63;
|
675
|
+
} else {
|
676
|
+
if (yych <= '|')
|
677
|
+
goto yy61;
|
678
|
+
if (yych <= 0x7F)
|
679
|
+
goto yy63;
|
680
|
+
if (yych >= 0xC2)
|
681
|
+
goto yy64;
|
682
|
+
}
|
683
|
+
} else {
|
684
|
+
if (yych <= 0xEF) {
|
685
|
+
if (yych <= 0xE0)
|
686
|
+
goto yy66;
|
687
|
+
if (yych == 0xED)
|
688
|
+
goto yy71;
|
689
|
+
goto yy67;
|
690
|
+
} else {
|
691
|
+
if (yych <= 0xF0)
|
692
|
+
goto yy68;
|
693
|
+
if (yych <= 0xF3)
|
694
|
+
goto yy69;
|
695
|
+
if (yych <= 0xF4)
|
696
|
+
goto yy70;
|
697
|
+
}
|
698
|
+
}
|
699
|
+
yy60 : { return 0; }
|
700
|
+
yy61:
|
701
|
+
yyaccept = 1;
|
702
|
+
yych = *(marker = ++p);
|
703
|
+
goto yy73;
|
704
|
+
yy62 : { return (bufsize_t)(p - start); }
|
705
|
+
yy63:
|
706
|
+
yych = *++p;
|
707
|
+
goto yy60;
|
708
|
+
yy64:
|
709
|
+
yych = *++p;
|
710
|
+
if (yych <= 0x7F)
|
711
|
+
goto yy65;
|
712
|
+
if (yych <= 0xBF)
|
713
|
+
goto yy63;
|
714
|
+
yy65:
|
715
|
+
p = marker;
|
716
|
+
if (yyaccept == 0) {
|
717
|
+
goto yy60;
|
718
|
+
} else {
|
719
|
+
goto yy62;
|
720
|
+
}
|
721
|
+
yy66:
|
722
|
+
yych = *++p;
|
723
|
+
if (yych <= 0x9F)
|
724
|
+
goto yy65;
|
725
|
+
if (yych <= 0xBF)
|
726
|
+
goto yy64;
|
727
|
+
goto yy65;
|
728
|
+
yy67:
|
729
|
+
yych = *++p;
|
730
|
+
if (yych <= 0x7F)
|
731
|
+
goto yy65;
|
732
|
+
if (yych <= 0xBF)
|
733
|
+
goto yy64;
|
734
|
+
goto yy65;
|
735
|
+
yy68:
|
736
|
+
yych = *++p;
|
737
|
+
if (yych <= 0x8F)
|
738
|
+
goto yy65;
|
739
|
+
if (yych <= 0xBF)
|
740
|
+
goto yy67;
|
741
|
+
goto yy65;
|
742
|
+
yy69:
|
743
|
+
yych = *++p;
|
744
|
+
if (yych <= 0x7F)
|
745
|
+
goto yy65;
|
746
|
+
if (yych <= 0xBF)
|
747
|
+
goto yy67;
|
748
|
+
goto yy65;
|
749
|
+
yy70:
|
750
|
+
yych = *++p;
|
751
|
+
if (yych <= 0x7F)
|
752
|
+
goto yy65;
|
753
|
+
if (yych <= 0x8F)
|
754
|
+
goto yy67;
|
755
|
+
goto yy65;
|
756
|
+
yy71:
|
757
|
+
yych = *++p;
|
758
|
+
if (yych <= 0x7F)
|
759
|
+
goto yy65;
|
760
|
+
if (yych <= 0x9F)
|
761
|
+
goto yy64;
|
762
|
+
goto yy65;
|
763
|
+
yy72:
|
764
|
+
yyaccept = 1;
|
765
|
+
marker = ++p;
|
766
|
+
yych = *p;
|
767
|
+
yy73:
|
768
|
+
if (yybm[0 + yych] & 128) {
|
769
|
+
goto yy72;
|
770
|
+
}
|
771
|
+
if (yych <= 0x08)
|
772
|
+
goto yy62;
|
773
|
+
if (yych <= '\n')
|
774
|
+
goto yy75;
|
775
|
+
if (yych >= 0x0E)
|
776
|
+
goto yy62;
|
777
|
+
yych = *++p;
|
778
|
+
if (yych != '\n')
|
779
|
+
goto yy65;
|
780
|
+
yy75:
|
781
|
+
++p;
|
782
|
+
yych = *p;
|
783
|
+
goto yy62;
|
784
|
+
}
|
785
|
+
}
|
786
|
+
|
787
|
+
bufsize_t _scan_table_row_end(const unsigned char *p) {
|
788
|
+
const unsigned char *marker = NULL;
|
789
|
+
const unsigned char *start = p;
|
790
|
+
|
791
|
+
{
|
792
|
+
unsigned char yych;
|
793
|
+
static const unsigned char yybm[] = {
|
794
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 128, 128, 0, 0, 0, 0, 0, 0, 0,
|
795
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0,
|
796
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
797
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
798
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
799
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
800
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
801
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
802
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
803
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
804
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
805
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
806
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
807
|
+
};
|
808
|
+
yych = *(marker = p);
|
809
|
+
if (yych <= 0xC1) {
|
810
|
+
if (yych <= '\f') {
|
811
|
+
if (yych <= 0x08)
|
812
|
+
goto yy83;
|
813
|
+
if (yych == '\n')
|
814
|
+
goto yy81;
|
815
|
+
goto yy79;
|
816
|
+
} else {
|
817
|
+
if (yych <= 0x1F) {
|
818
|
+
if (yych <= '\r')
|
819
|
+
goto yy80;
|
820
|
+
goto yy83;
|
821
|
+
} else {
|
822
|
+
if (yych <= ' ')
|
823
|
+
goto yy79;
|
824
|
+
if (yych <= 0x7F)
|
825
|
+
goto yy83;
|
826
|
+
}
|
827
|
+
}
|
828
|
+
} else {
|
829
|
+
if (yych <= 0xED) {
|
830
|
+
if (yych <= 0xDF)
|
831
|
+
goto yy84;
|
832
|
+
if (yych <= 0xE0)
|
833
|
+
goto yy86;
|
834
|
+
if (yych <= 0xEC)
|
835
|
+
goto yy87;
|
836
|
+
goto yy91;
|
837
|
+
} else {
|
838
|
+
if (yych <= 0xF0) {
|
839
|
+
if (yych <= 0xEF)
|
840
|
+
goto yy87;
|
841
|
+
goto yy88;
|
842
|
+
} else {
|
843
|
+
if (yych <= 0xF3)
|
844
|
+
goto yy89;
|
845
|
+
if (yych <= 0xF4)
|
846
|
+
goto yy90;
|
847
|
+
}
|
848
|
+
}
|
849
|
+
}
|
850
|
+
yy78 : { return 0; }
|
851
|
+
yy79:
|
852
|
+
yych = *(marker = ++p);
|
853
|
+
if (yych <= 0x08)
|
854
|
+
goto yy78;
|
855
|
+
if (yych <= '\r')
|
856
|
+
goto yy94;
|
857
|
+
if (yych == ' ')
|
858
|
+
goto yy94;
|
859
|
+
goto yy78;
|
860
|
+
yy80:
|
861
|
+
yych = *++p;
|
862
|
+
if (yych != '\n')
|
863
|
+
goto yy78;
|
864
|
+
yy81:
|
865
|
+
++p;
|
866
|
+
{ return (bufsize_t)(p - start); }
|
867
|
+
yy83:
|
868
|
+
yych = *++p;
|
869
|
+
goto yy78;
|
870
|
+
yy84:
|
871
|
+
yych = *++p;
|
872
|
+
if (yych <= 0x7F)
|
873
|
+
goto yy85;
|
874
|
+
if (yych <= 0xBF)
|
875
|
+
goto yy83;
|
876
|
+
yy85:
|
877
|
+
p = marker;
|
878
|
+
goto yy78;
|
879
|
+
yy86:
|
880
|
+
yych = *++p;
|
881
|
+
if (yych <= 0x9F)
|
882
|
+
goto yy85;
|
883
|
+
if (yych <= 0xBF)
|
884
|
+
goto yy84;
|
885
|
+
goto yy85;
|
886
|
+
yy87:
|
887
|
+
yych = *++p;
|
888
|
+
if (yych <= 0x7F)
|
889
|
+
goto yy85;
|
890
|
+
if (yych <= 0xBF)
|
891
|
+
goto yy84;
|
892
|
+
goto yy85;
|
893
|
+
yy88:
|
894
|
+
yych = *++p;
|
895
|
+
if (yych <= 0x8F)
|
896
|
+
goto yy85;
|
897
|
+
if (yych <= 0xBF)
|
898
|
+
goto yy87;
|
899
|
+
goto yy85;
|
900
|
+
yy89:
|
901
|
+
yych = *++p;
|
902
|
+
if (yych <= 0x7F)
|
903
|
+
goto yy85;
|
904
|
+
if (yych <= 0xBF)
|
905
|
+
goto yy87;
|
906
|
+
goto yy85;
|
907
|
+
yy90:
|
908
|
+
yych = *++p;
|
909
|
+
if (yych <= 0x7F)
|
910
|
+
goto yy85;
|
911
|
+
if (yych <= 0x8F)
|
912
|
+
goto yy87;
|
913
|
+
goto yy85;
|
914
|
+
yy91:
|
915
|
+
yych = *++p;
|
916
|
+
if (yych <= 0x7F)
|
917
|
+
goto yy85;
|
918
|
+
if (yych <= 0x9F)
|
919
|
+
goto yy84;
|
920
|
+
goto yy85;
|
921
|
+
yy92:
|
922
|
+
yych = *++p;
|
923
|
+
if (yych == '\n')
|
924
|
+
goto yy81;
|
925
|
+
goto yy85;
|
926
|
+
yy93:
|
927
|
+
++p;
|
928
|
+
yych = *p;
|
929
|
+
yy94:
|
930
|
+
if (yybm[0 + yych] & 128) {
|
931
|
+
goto yy93;
|
932
|
+
}
|
933
|
+
if (yych <= 0x08)
|
934
|
+
goto yy85;
|
935
|
+
if (yych <= '\n')
|
936
|
+
goto yy81;
|
937
|
+
if (yych <= '\r')
|
938
|
+
goto yy92;
|
939
|
+
goto yy85;
|
940
|
+
}
|
941
|
+
}
|