isomorfeus-ferret 0.12.4 → 0.12.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE +612 -612
- data/README.md +77 -48
- data/ext/isomorfeus_ferret_ext/bm_hash.c +9 -6
- data/ext/isomorfeus_ferret_ext/bm_micro_string.c +4 -2
- data/ext/isomorfeus_ferret_ext/brotli_common_constants.c +15 -0
- data/ext/isomorfeus_ferret_ext/brotli_common_constants.h +200 -0
- data/ext/isomorfeus_ferret_ext/brotli_common_context.c +156 -0
- data/ext/isomorfeus_ferret_ext/brotli_common_context.h +113 -0
- data/ext/isomorfeus_ferret_ext/brotli_common_dictionary.c +5914 -0
- data/ext/isomorfeus_ferret_ext/brotli_common_dictionary.h +64 -0
- data/ext/isomorfeus_ferret_ext/brotli_common_platform.c +22 -0
- data/ext/isomorfeus_ferret_ext/brotli_common_platform.h +594 -0
- data/ext/isomorfeus_ferret_ext/brotli_common_transform.c +291 -0
- data/ext/isomorfeus_ferret_ext/brotli_common_transform.h +85 -0
- data/ext/isomorfeus_ferret_ext/brotli_common_version.h +26 -0
- data/ext/isomorfeus_ferret_ext/brotli_dec_bit_reader.c +76 -0
- data/ext/isomorfeus_ferret_ext/brotli_dec_bit_reader.h +351 -0
- data/ext/isomorfeus_ferret_ext/brotli_dec_decode.c +2608 -0
- data/ext/isomorfeus_ferret_ext/brotli_dec_huffman.c +339 -0
- data/ext/isomorfeus_ferret_ext/brotli_dec_huffman.h +121 -0
- data/ext/isomorfeus_ferret_ext/brotli_dec_prefix.h +732 -0
- data/ext/isomorfeus_ferret_ext/brotli_dec_state.c +159 -0
- data/ext/isomorfeus_ferret_ext/brotli_dec_state.h +365 -0
- data/ext/isomorfeus_ferret_ext/brotli_decode.h +344 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_backward_references.c +145 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_backward_references.h +39 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_backward_references_hq.c +843 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_backward_references_hq.h +95 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_backward_references_inc.h +163 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_bit_cost.c +35 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_bit_cost.h +63 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_bit_cost_inc.h +127 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_block_encoder_inc.h +34 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_block_splitter.c +194 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_block_splitter.h +51 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_block_splitter_inc.h +440 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_brotli_bit_stream.c +1314 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_brotli_bit_stream.h +84 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_cluster.c +56 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_cluster.h +48 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_cluster_inc.h +320 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_command.c +28 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_command.h +190 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_compress_fragment.c +790 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_compress_fragment.h +61 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_compress_fragment_two_pass.c +645 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_compress_fragment_two_pass.h +54 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_dictionary_hash.c +1846 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_dictionary_hash.h +25 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_encode.c +1927 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_encoder_dict.c +33 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_encoder_dict.h +43 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_entropy_encode.c +503 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_entropy_encode.h +122 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_entropy_encode_static.h +539 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_fast_log.c +105 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_fast_log.h +66 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_find_match_length.h +79 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_hash.h +488 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_hash_composite_inc.h +125 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_hash_forgetful_chain_inc.h +293 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_hash_longest_match64_inc.h +267 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_hash_longest_match_inc.h +262 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_hash_longest_match_quickly_inc.h +266 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_hash_rolling_inc.h +212 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_hash_to_binary_tree_inc.h +329 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_histogram.c +100 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_histogram.h +63 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_histogram_inc.h +51 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_literal_cost.c +175 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_literal_cost.h +30 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_memory.c +170 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_memory.h +114 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_metablock.c +663 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_metablock.h +105 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_metablock_inc.h +183 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_params.h +46 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_prefix.h +53 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_quality.h +165 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_ringbuffer.h +167 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_static_dict.c +486 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_static_dict.h +40 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_static_dict_lut.h +5864 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_utf8_util.c +85 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_utf8_util.h +32 -0
- data/ext/isomorfeus_ferret_ext/brotli_enc_write_bits.h +87 -0
- data/ext/isomorfeus_ferret_ext/brotli_encode.h +448 -0
- data/ext/isomorfeus_ferret_ext/brotli_port.h +288 -0
- data/ext/isomorfeus_ferret_ext/brotli_types.h +83 -0
- data/ext/isomorfeus_ferret_ext/frb_index.c +35 -4
- data/ext/isomorfeus_ferret_ext/frb_store.c +34 -5
- data/ext/isomorfeus_ferret_ext/frt_document.h +1 -0
- data/ext/isomorfeus_ferret_ext/frt_fs_store.c +1 -0
- data/ext/isomorfeus_ferret_ext/frt_index.c +174 -25
- data/ext/isomorfeus_ferret_ext/frt_index.h +6 -3
- data/ext/isomorfeus_ferret_ext/frt_posh.h +11 -19
- data/ext/isomorfeus_ferret_ext/frt_q_parser.c +1844 -1911
- data/ext/isomorfeus_ferret_ext/frt_q_phrase.c +12 -15
- data/ext/isomorfeus_ferret_ext/frt_ram_store.c +1 -0
- data/ext/isomorfeus_ferret_ext/frt_scanner.c +1 -0
- data/ext/isomorfeus_ferret_ext/frt_scanner_mb.c +1 -0
- data/ext/isomorfeus_ferret_ext/frt_scanner_utf8.c +1 -0
- data/ext/isomorfeus_ferret_ext/frt_search.h +1 -1
- data/ext/isomorfeus_ferret_ext/libstemmer.c +14 -11
- data/ext/isomorfeus_ferret_ext/libstemmer.h +4 -9
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_basque.c +1167 -0
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_basque.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_catalan.c +1433 -0
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_catalan.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_danish.c +120 -143
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_danish.h +1 -2
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_dutch.c +217 -237
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_dutch.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_english.c +377 -432
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_english.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_finnish.c +298 -342
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_finnish.h +1 -2
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_french.c +530 -524
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_french.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_german.c +201 -214
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_german.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_hungarian.c +1 -1
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_indonesian.c +394 -0
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_indonesian.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_irish.c +457 -0
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_irish.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_italian.c +396 -439
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_italian.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_norwegian.c +104 -128
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_norwegian.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_porter.c +242 -273
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_porter.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_portuguese.c +406 -461
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_portuguese.h +1 -2
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_spanish.c +405 -456
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_spanish.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_swedish.c +108 -126
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_swedish.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_2_hungarian.c +849 -0
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_2_hungarian.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_2_romanian.c +373 -405
- data/ext/isomorfeus_ferret_ext/stem_ISO_8859_2_romanian.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_KOI8_R_russian.c +288 -305
- data/ext/isomorfeus_ferret_ext/stem_KOI8_R_russian.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_arabic.c +1651 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_arabic.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_armenian.c +546 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_armenian.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_basque.c +1171 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_basque.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_catalan.c +1436 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_catalan.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_danish.c +121 -141
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_danish.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_dutch.c +221 -241
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_dutch.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_english.c +381 -431
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_english.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_finnish.c +300 -345
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_finnish.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_french.c +518 -511
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_french.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_german.c +201 -209
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_german.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_greek.c +3660 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_greek.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_hindi.c +309 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_hindi.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_hungarian.c +306 -671
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_hungarian.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_indonesian.c +394 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_indonesian.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_irish.c +457 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_irish.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_italian.c +400 -442
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_italian.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_lithuanian.c +824 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_lithuanian.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_nepali.c +408 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_nepali.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_norwegian.c +105 -127
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_norwegian.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_porter.c +245 -276
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_porter.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_portuguese.c +409 -464
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_portuguese.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_romanian.c +376 -408
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_romanian.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_russian.c +272 -287
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_russian.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_serbian.c +6530 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_serbian.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_spanish.c +407 -458
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_spanish.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_swedish.c +110 -125
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_swedish.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_tamil.c +1865 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_tamil.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_turkish.c +698 -806
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_turkish.h +1 -1
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_yiddish.c +1220 -0
- data/ext/isomorfeus_ferret_ext/stem_UTF_8_yiddish.h +6 -0
- data/ext/isomorfeus_ferret_ext/stem_api.c +1 -9
- data/ext/isomorfeus_ferret_ext/stem_api.h +1 -3
- data/ext/isomorfeus_ferret_ext/stem_header.h +30 -26
- data/ext/isomorfeus_ferret_ext/stem_modules.h +113 -26
- data/ext/isomorfeus_ferret_ext/stem_modules.txt +18 -5
- data/ext/isomorfeus_ferret_ext/stem_utilities.c +167 -132
- data/ext/isomorfeus_ferret_ext/test.c +7 -1
- data/ext/isomorfeus_ferret_ext/test_fields.c +57 -45
- data/ext/isomorfeus_ferret_ext/test_index.c +4 -1
- data/ext/isomorfeus_ferret_ext/test_search.c +0 -1
- data/lib/isomorfeus/ferret/version.rb +1 -1
- metadata +125 -5
- data/ext/isomorfeus_ferret_ext/q_parser.y +0 -1366
@@ -1,4 +1,4 @@
|
|
1
|
-
/*
|
1
|
+
/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
|
2
2
|
|
3
3
|
#include "stem_header.h"
|
4
4
|
|
@@ -29,9 +29,9 @@ static const symbol s_0_2[5] = { 'g', 'e', 'n', 'e', 'r' };
|
|
29
29
|
|
30
30
|
static const struct among a_0[3] =
|
31
31
|
{
|
32
|
-
|
33
|
-
|
34
|
-
|
32
|
+
{ 5, s_0_0, -1, -1, 0},
|
33
|
+
{ 6, s_0_1, -1, -1, 0},
|
34
|
+
{ 5, s_0_2, -1, -1, 0}
|
35
35
|
};
|
36
36
|
|
37
37
|
static const symbol s_1_0[1] = { '\'' };
|
@@ -40,9 +40,9 @@ static const symbol s_1_2[2] = { '\'', 's' };
|
|
40
40
|
|
41
41
|
static const struct among a_1[3] =
|
42
42
|
{
|
43
|
-
|
44
|
-
|
45
|
-
|
43
|
+
{ 1, s_1_0, -1, 1, 0},
|
44
|
+
{ 3, s_1_1, 0, 1, 0},
|
45
|
+
{ 2, s_1_2, -1, 1, 0}
|
46
46
|
};
|
47
47
|
|
48
48
|
static const symbol s_2_0[3] = { 'i', 'e', 'd' };
|
@@ -54,12 +54,12 @@ static const symbol s_2_5[2] = { 'u', 's' };
|
|
54
54
|
|
55
55
|
static const struct among a_2[6] =
|
56
56
|
{
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
57
|
+
{ 3, s_2_0, -1, 2, 0},
|
58
|
+
{ 1, s_2_1, -1, 3, 0},
|
59
|
+
{ 3, s_2_2, 1, 2, 0},
|
60
|
+
{ 4, s_2_3, 1, 1, 0},
|
61
|
+
{ 2, s_2_4, 1, -1, 0},
|
62
|
+
{ 2, s_2_5, 1, -1, 0}
|
63
63
|
};
|
64
64
|
|
65
65
|
static const symbol s_3_1[2] = { 'b', 'b' };
|
@@ -77,19 +77,19 @@ static const symbol s_3_12[2] = { 'i', 'z' };
|
|
77
77
|
|
78
78
|
static const struct among a_3[13] =
|
79
79
|
{
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
80
|
+
{ 0, 0, -1, 3, 0},
|
81
|
+
{ 2, s_3_1, 0, 2, 0},
|
82
|
+
{ 2, s_3_2, 0, 2, 0},
|
83
|
+
{ 2, s_3_3, 0, 2, 0},
|
84
|
+
{ 2, s_3_4, 0, 2, 0},
|
85
|
+
{ 2, s_3_5, 0, 1, 0},
|
86
|
+
{ 2, s_3_6, 0, 2, 0},
|
87
|
+
{ 2, s_3_7, 0, 2, 0},
|
88
|
+
{ 2, s_3_8, 0, 2, 0},
|
89
|
+
{ 2, s_3_9, 0, 2, 0},
|
90
|
+
{ 2, s_3_10, 0, 1, 0},
|
91
|
+
{ 2, s_3_11, 0, 2, 0},
|
92
|
+
{ 2, s_3_12, 0, 1, 0}
|
93
93
|
};
|
94
94
|
|
95
95
|
static const symbol s_4_0[2] = { 'e', 'd' };
|
@@ -101,12 +101,12 @@ static const symbol s_4_5[5] = { 'i', 'n', 'g', 'l', 'y' };
|
|
101
101
|
|
102
102
|
static const struct among a_4[6] =
|
103
103
|
{
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
104
|
+
{ 2, s_4_0, -1, 2, 0},
|
105
|
+
{ 3, s_4_1, 0, 1, 0},
|
106
|
+
{ 3, s_4_2, -1, 2, 0},
|
107
|
+
{ 4, s_4_3, -1, 2, 0},
|
108
|
+
{ 5, s_4_4, 3, 1, 0},
|
109
|
+
{ 5, s_4_5, -1, 2, 0}
|
110
110
|
};
|
111
111
|
|
112
112
|
static const symbol s_5_0[4] = { 'a', 'n', 'c', 'i' };
|
@@ -136,30 +136,30 @@ static const symbol s_5_23[7] = { 'o', 'u', 's', 'n', 'e', 's', 's' };
|
|
136
136
|
|
137
137
|
static const struct among a_5[24] =
|
138
138
|
{
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
139
|
+
{ 4, s_5_0, -1, 3, 0},
|
140
|
+
{ 4, s_5_1, -1, 2, 0},
|
141
|
+
{ 3, s_5_2, -1, 13, 0},
|
142
|
+
{ 2, s_5_3, -1, 15, 0},
|
143
|
+
{ 3, s_5_4, 3, 12, 0},
|
144
|
+
{ 4, s_5_5, 4, 4, 0},
|
145
|
+
{ 4, s_5_6, 3, 8, 0},
|
146
|
+
{ 5, s_5_7, 3, 9, 0},
|
147
|
+
{ 6, s_5_8, 3, 14, 0},
|
148
|
+
{ 5, s_5_9, 3, 10, 0},
|
149
|
+
{ 5, s_5_10, 3, 5, 0},
|
150
|
+
{ 5, s_5_11, -1, 8, 0},
|
151
|
+
{ 6, s_5_12, -1, 12, 0},
|
152
|
+
{ 5, s_5_13, -1, 11, 0},
|
153
|
+
{ 6, s_5_14, -1, 1, 0},
|
154
|
+
{ 7, s_5_15, 14, 7, 0},
|
155
|
+
{ 5, s_5_16, -1, 8, 0},
|
156
|
+
{ 5, s_5_17, -1, 7, 0},
|
157
|
+
{ 7, s_5_18, 17, 6, 0},
|
158
|
+
{ 4, s_5_19, -1, 6, 0},
|
159
|
+
{ 4, s_5_20, -1, 7, 0},
|
160
|
+
{ 7, s_5_21, -1, 11, 0},
|
161
|
+
{ 7, s_5_22, -1, 9, 0},
|
162
|
+
{ 7, s_5_23, -1, 10, 0}
|
163
163
|
};
|
164
164
|
|
165
165
|
static const symbol s_6_0[5] = { 'i', 'c', 'a', 't', 'e' };
|
@@ -174,15 +174,15 @@ static const symbol s_6_8[4] = { 'n', 'e', 's', 's' };
|
|
174
174
|
|
175
175
|
static const struct among a_6[9] =
|
176
176
|
{
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
177
|
+
{ 5, s_6_0, -1, 4, 0},
|
178
|
+
{ 5, s_6_1, -1, 6, 0},
|
179
|
+
{ 5, s_6_2, -1, 3, 0},
|
180
|
+
{ 5, s_6_3, -1, 4, 0},
|
181
|
+
{ 4, s_6_4, -1, 4, 0},
|
182
|
+
{ 6, s_6_5, -1, 1, 0},
|
183
|
+
{ 7, s_6_6, 5, 2, 0},
|
184
|
+
{ 3, s_6_7, -1, 5, 0},
|
185
|
+
{ 4, s_6_8, -1, 5, 0}
|
186
186
|
};
|
187
187
|
|
188
188
|
static const symbol s_7_0[2] = { 'i', 'c' };
|
@@ -206,24 +206,24 @@ static const symbol s_7_17[5] = { 'e', 'm', 'e', 'n', 't' };
|
|
206
206
|
|
207
207
|
static const struct among a_7[18] =
|
208
208
|
{
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
209
|
+
{ 2, s_7_0, -1, 1, 0},
|
210
|
+
{ 4, s_7_1, -1, 1, 0},
|
211
|
+
{ 4, s_7_2, -1, 1, 0},
|
212
|
+
{ 4, s_7_3, -1, 1, 0},
|
213
|
+
{ 4, s_7_4, -1, 1, 0},
|
214
|
+
{ 3, s_7_5, -1, 1, 0},
|
215
|
+
{ 3, s_7_6, -1, 1, 0},
|
216
|
+
{ 3, s_7_7, -1, 1, 0},
|
217
|
+
{ 3, s_7_8, -1, 1, 0},
|
218
|
+
{ 2, s_7_9, -1, 1, 0},
|
219
|
+
{ 3, s_7_10, -1, 1, 0},
|
220
|
+
{ 3, s_7_11, -1, 2, 0},
|
221
|
+
{ 2, s_7_12, -1, 1, 0},
|
222
|
+
{ 3, s_7_13, -1, 1, 0},
|
223
|
+
{ 3, s_7_14, -1, 1, 0},
|
224
|
+
{ 3, s_7_15, -1, 1, 0},
|
225
|
+
{ 4, s_7_16, 15, 1, 0},
|
226
|
+
{ 5, s_7_17, 16, 1, 0}
|
227
227
|
};
|
228
228
|
|
229
229
|
static const symbol s_8_0[1] = { 'e' };
|
@@ -231,8 +231,8 @@ static const symbol s_8_1[1] = { 'l' };
|
|
231
231
|
|
232
232
|
static const struct among a_8[2] =
|
233
233
|
{
|
234
|
-
|
235
|
-
|
234
|
+
{ 1, s_8_0, -1, 1, 0},
|
235
|
+
{ 1, s_8_1, -1, 2, 0}
|
236
236
|
};
|
237
237
|
|
238
238
|
static const symbol s_9_0[7] = { 's', 'u', 'c', 'c', 'e', 'e', 'd' };
|
@@ -246,14 +246,14 @@ static const symbol s_9_7[6] = { 'o', 'u', 't', 'i', 'n', 'g' };
|
|
246
246
|
|
247
247
|
static const struct among a_9[8] =
|
248
248
|
{
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
249
|
+
{ 7, s_9_0, -1, -1, 0},
|
250
|
+
{ 7, s_9_1, -1, -1, 0},
|
251
|
+
{ 6, s_9_2, -1, -1, 0},
|
252
|
+
{ 7, s_9_3, -1, -1, 0},
|
253
|
+
{ 6, s_9_4, -1, -1, 0},
|
254
|
+
{ 7, s_9_5, -1, -1, 0},
|
255
|
+
{ 7, s_9_6, -1, -1, 0},
|
256
|
+
{ 6, s_9_7, -1, -1, 0}
|
257
257
|
};
|
258
258
|
|
259
259
|
static const symbol s_10_0[5] = { 'a', 'n', 'd', 'e', 's' };
|
@@ -277,24 +277,24 @@ static const symbol s_10_17[4] = { 'u', 'g', 'l', 'y' };
|
|
277
277
|
|
278
278
|
static const struct among a_10[18] =
|
279
279
|
{
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
280
|
+
{ 5, s_10_0, -1, -1, 0},
|
281
|
+
{ 5, s_10_1, -1, -1, 0},
|
282
|
+
{ 4, s_10_2, -1, -1, 0},
|
283
|
+
{ 6, s_10_3, -1, -1, 0},
|
284
|
+
{ 5, s_10_4, -1, 3, 0},
|
285
|
+
{ 5, s_10_5, -1, 9, 0},
|
286
|
+
{ 6, s_10_6, -1, 7, 0},
|
287
|
+
{ 4, s_10_7, -1, -1, 0},
|
288
|
+
{ 4, s_10_8, -1, 6, 0},
|
289
|
+
{ 5, s_10_9, -1, 4, 0},
|
290
|
+
{ 4, s_10_10, -1, -1, 0},
|
291
|
+
{ 4, s_10_11, -1, 10, 0},
|
292
|
+
{ 6, s_10_12, -1, 11, 0},
|
293
|
+
{ 5, s_10_13, -1, 2, 0},
|
294
|
+
{ 4, s_10_14, -1, 1, 0},
|
295
|
+
{ 3, s_10_15, -1, -1, 0},
|
296
|
+
{ 5, s_10_16, -1, 5, 0},
|
297
|
+
{ 4, s_10_17, -1, 8, 0}
|
298
298
|
};
|
299
299
|
|
300
300
|
static const unsigned char g_v[] = { 17, 65, 16, 1 };
|
@@ -303,102 +303,94 @@ static const unsigned char g_v_WXY[] = { 1, 17, 65, 208, 1 };
|
|
303
303
|
|
304
304
|
static const unsigned char g_valid_LI[] = { 55, 141, 2 };
|
305
305
|
|
306
|
-
static const symbol s_0[] = { '
|
307
|
-
static const symbol s_1[] = { '
|
308
|
-
static const symbol s_2[] = { '
|
309
|
-
static const symbol s_3[] = { '
|
310
|
-
static const symbol s_4[] = { '
|
311
|
-
static const symbol s_5[] = { '
|
312
|
-
static const symbol s_6[] = { '
|
313
|
-
static const symbol s_7[] = { '
|
314
|
-
static const symbol s_8[] = { '
|
315
|
-
static const symbol s_9[] = { '
|
316
|
-
static const symbol s_10[] = { 'e' };
|
317
|
-
static const symbol s_11[] = { '
|
318
|
-
static const symbol s_12[] = { '
|
319
|
-
static const symbol s_13[] = { '
|
320
|
-
static const symbol s_14[] = { '
|
321
|
-
static const symbol s_15[] = { '
|
322
|
-
static const symbol s_16[] = { 'a', '
|
323
|
-
static const symbol s_17[] = { '
|
324
|
-
static const symbol s_18[] = { '
|
325
|
-
static const symbol s_19[] = { 'i', '
|
326
|
-
static const symbol s_20[] = { '
|
327
|
-
static const symbol s_21[] = { '
|
328
|
-
static const symbol s_22[] = { '
|
329
|
-
static const symbol s_23[] = { '
|
330
|
-
static const symbol s_24[] = { '
|
331
|
-
static const symbol s_25[] = { '
|
332
|
-
static const symbol s_26[] = { '
|
333
|
-
static const symbol s_27[] = { '
|
334
|
-
static const symbol s_28[] = { '
|
335
|
-
static const symbol s_29[] = { '
|
336
|
-
static const symbol s_30[] = { '
|
337
|
-
static const symbol s_31[] = { '
|
338
|
-
static const symbol s_32[] = { '
|
339
|
-
static const symbol s_33[] = { '
|
340
|
-
static const symbol s_34[] = { '
|
341
|
-
static const symbol s_35[] = { '
|
342
|
-
static const symbol s_36[] = { 'l' };
|
343
|
-
static const symbol s_37[] = { 's', '
|
344
|
-
static const symbol s_38[] = { '
|
345
|
-
static const symbol s_39[] = { 'd', 'i', 'e' };
|
346
|
-
static const symbol s_40[] = { 'l', 'i', 'e' };
|
347
|
-
static const symbol s_41[] = { 't', 'i', 'e' };
|
348
|
-
static const symbol s_42[] = { 'i', 'd', 'l' };
|
349
|
-
static const symbol s_43[] = { 'g', 'e', 'n', 't', 'l' };
|
350
|
-
static const symbol s_44[] = { 'u', 'g', 'l', 'i' };
|
351
|
-
static const symbol s_45[] = { 'e', 'a', 'r', 'l', 'i' };
|
352
|
-
static const symbol s_46[] = { 'o', 'n', 'l', 'i' };
|
353
|
-
static const symbol s_47[] = { 's', 'i', 'n', 'g', 'l' };
|
354
|
-
static const symbol s_48[] = { 'Y' };
|
355
|
-
static const symbol s_49[] = { 'y' };
|
306
|
+
static const symbol s_0[] = { 'Y' };
|
307
|
+
static const symbol s_1[] = { 'Y' };
|
308
|
+
static const symbol s_2[] = { 's', 's' };
|
309
|
+
static const symbol s_3[] = { 'i' };
|
310
|
+
static const symbol s_4[] = { 'i', 'e' };
|
311
|
+
static const symbol s_5[] = { 'e', 'e' };
|
312
|
+
static const symbol s_6[] = { 'e' };
|
313
|
+
static const symbol s_7[] = { 'e' };
|
314
|
+
static const symbol s_8[] = { 'i' };
|
315
|
+
static const symbol s_9[] = { 't', 'i', 'o', 'n' };
|
316
|
+
static const symbol s_10[] = { 'e', 'n', 'c', 'e' };
|
317
|
+
static const symbol s_11[] = { 'a', 'n', 'c', 'e' };
|
318
|
+
static const symbol s_12[] = { 'a', 'b', 'l', 'e' };
|
319
|
+
static const symbol s_13[] = { 'e', 'n', 't' };
|
320
|
+
static const symbol s_14[] = { 'i', 'z', 'e' };
|
321
|
+
static const symbol s_15[] = { 'a', 't', 'e' };
|
322
|
+
static const symbol s_16[] = { 'a', 'l' };
|
323
|
+
static const symbol s_17[] = { 'f', 'u', 'l' };
|
324
|
+
static const symbol s_18[] = { 'o', 'u', 's' };
|
325
|
+
static const symbol s_19[] = { 'i', 'v', 'e' };
|
326
|
+
static const symbol s_20[] = { 'b', 'l', 'e' };
|
327
|
+
static const symbol s_21[] = { 'o', 'g' };
|
328
|
+
static const symbol s_22[] = { 'l', 'e', 's', 's' };
|
329
|
+
static const symbol s_23[] = { 't', 'i', 'o', 'n' };
|
330
|
+
static const symbol s_24[] = { 'a', 't', 'e' };
|
331
|
+
static const symbol s_25[] = { 'a', 'l' };
|
332
|
+
static const symbol s_26[] = { 'i', 'c' };
|
333
|
+
static const symbol s_27[] = { 's', 'k', 'i' };
|
334
|
+
static const symbol s_28[] = { 's', 'k', 'y' };
|
335
|
+
static const symbol s_29[] = { 'd', 'i', 'e' };
|
336
|
+
static const symbol s_30[] = { 'l', 'i', 'e' };
|
337
|
+
static const symbol s_31[] = { 't', 'i', 'e' };
|
338
|
+
static const symbol s_32[] = { 'i', 'd', 'l' };
|
339
|
+
static const symbol s_33[] = { 'g', 'e', 'n', 't', 'l' };
|
340
|
+
static const symbol s_34[] = { 'u', 'g', 'l', 'i' };
|
341
|
+
static const symbol s_35[] = { 'e', 'a', 'r', 'l', 'i' };
|
342
|
+
static const symbol s_36[] = { 'o', 'n', 'l', 'i' };
|
343
|
+
static const symbol s_37[] = { 's', 'i', 'n', 'g', 'l' };
|
344
|
+
static const symbol s_38[] = { 'y' };
|
356
345
|
|
357
346
|
static int r_prelude(struct SN_env * z) {
|
358
|
-
z->
|
359
|
-
{ int c1 = z->c;
|
360
|
-
z->bra = z->c;
|
361
|
-
if (
|
362
|
-
z->
|
363
|
-
|
347
|
+
z->I[2] = 0;
|
348
|
+
{ int c1 = z->c;
|
349
|
+
z->bra = z->c;
|
350
|
+
if (z->c == z->l || z->p[z->c] != '\'') goto lab0;
|
351
|
+
z->c++;
|
352
|
+
z->ket = z->c;
|
353
|
+
{ int ret = slice_del(z);
|
364
354
|
if (ret < 0) return ret;
|
365
355
|
}
|
366
356
|
lab0:
|
367
357
|
z->c = c1;
|
368
358
|
}
|
369
|
-
{ int c2 = z->c;
|
370
|
-
z->bra = z->c;
|
371
|
-
if (
|
372
|
-
z->
|
373
|
-
|
359
|
+
{ int c2 = z->c;
|
360
|
+
z->bra = z->c;
|
361
|
+
if (z->c == z->l || z->p[z->c] != 'y') goto lab1;
|
362
|
+
z->c++;
|
363
|
+
z->ket = z->c;
|
364
|
+
{ int ret = slice_from_s(z, 1, s_0);
|
374
365
|
if (ret < 0) return ret;
|
375
366
|
}
|
376
|
-
z->
|
367
|
+
z->I[2] = 1;
|
377
368
|
lab1:
|
378
369
|
z->c = c2;
|
379
370
|
}
|
380
|
-
{ int c3 = z->c;
|
381
|
-
while(1) {
|
371
|
+
{ int c3 = z->c;
|
372
|
+
while(1) {
|
382
373
|
int c4 = z->c;
|
383
|
-
while(1) {
|
374
|
+
while(1) {
|
384
375
|
int c5 = z->c;
|
385
376
|
if (in_grouping_U(z, g_v, 97, 121, 0)) goto lab4;
|
386
|
-
z->bra = z->c;
|
387
|
-
if (
|
388
|
-
z->
|
377
|
+
z->bra = z->c;
|
378
|
+
if (z->c == z->l || z->p[z->c] != 'y') goto lab4;
|
379
|
+
z->c++;
|
380
|
+
z->ket = z->c;
|
389
381
|
z->c = c5;
|
390
382
|
break;
|
391
383
|
lab4:
|
392
384
|
z->c = c5;
|
393
|
-
{ int ret = skip_utf8(z->p, z->c,
|
385
|
+
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
394
386
|
if (ret < 0) goto lab3;
|
395
|
-
z->c = ret;
|
387
|
+
z->c = ret;
|
396
388
|
}
|
397
389
|
}
|
398
|
-
{ int ret = slice_from_s(z, 1,
|
390
|
+
{ int ret = slice_from_s(z, 1, s_1);
|
399
391
|
if (ret < 0) return ret;
|
400
392
|
}
|
401
|
-
z->
|
393
|
+
z->I[2] = 1;
|
402
394
|
continue;
|
403
395
|
lab3:
|
404
396
|
z->c = c4;
|
@@ -410,39 +402,39 @@ static int r_prelude(struct SN_env * z) {
|
|
410
402
|
}
|
411
403
|
|
412
404
|
static int r_mark_regions(struct SN_env * z) {
|
413
|
-
z->I[0] = z->l;
|
414
405
|
z->I[1] = z->l;
|
415
|
-
|
416
|
-
|
406
|
+
z->I[0] = z->l;
|
407
|
+
{ int c1 = z->c;
|
408
|
+
{ int c2 = z->c;
|
417
409
|
if (z->c + 4 >= z->l || z->p[z->c + 4] >> 5 != 3 || !((2375680 >> (z->p[z->c + 4] & 0x1f)) & 1)) goto lab2;
|
418
|
-
if (!(find_among(z, a_0, 3))) goto lab2;
|
410
|
+
if (!(find_among(z, a_0, 3))) goto lab2;
|
419
411
|
goto lab1;
|
420
412
|
lab2:
|
421
413
|
z->c = c2;
|
422
|
-
{
|
414
|
+
{
|
423
415
|
int ret = out_grouping_U(z, g_v, 97, 121, 1);
|
424
416
|
if (ret < 0) goto lab0;
|
425
417
|
z->c += ret;
|
426
418
|
}
|
427
|
-
{
|
419
|
+
{
|
428
420
|
int ret = in_grouping_U(z, g_v, 97, 121, 1);
|
429
421
|
if (ret < 0) goto lab0;
|
430
422
|
z->c += ret;
|
431
423
|
}
|
432
424
|
}
|
433
425
|
lab1:
|
434
|
-
z->I[
|
435
|
-
{
|
426
|
+
z->I[1] = z->c;
|
427
|
+
{
|
436
428
|
int ret = out_grouping_U(z, g_v, 97, 121, 1);
|
437
429
|
if (ret < 0) goto lab0;
|
438
430
|
z->c += ret;
|
439
431
|
}
|
440
|
-
{
|
432
|
+
{
|
441
433
|
int ret = in_grouping_U(z, g_v, 97, 121, 1);
|
442
434
|
if (ret < 0) goto lab0;
|
443
435
|
z->c += ret;
|
444
436
|
}
|
445
|
-
z->I[
|
437
|
+
z->I[0] = z->c;
|
446
438
|
lab0:
|
447
439
|
z->c = c1;
|
448
440
|
}
|
@@ -450,7 +442,7 @@ static int r_mark_regions(struct SN_env * z) {
|
|
450
442
|
}
|
451
443
|
|
452
444
|
static int r_shortv(struct SN_env * z) {
|
453
|
-
{ int m1 = z->l - z->c; (void)m1;
|
445
|
+
{ int m1 = z->l - z->c; (void)m1;
|
454
446
|
if (out_grouping_b_U(z, g_v_WXY, 89, 121, 0)) goto lab1;
|
455
447
|
if (in_grouping_b_U(z, g_v, 97, 121, 0)) goto lab1;
|
456
448
|
if (out_grouping_b_U(z, g_v, 97, 121, 0)) goto lab1;
|
@@ -459,82 +451,75 @@ static int r_shortv(struct SN_env * z) {
|
|
459
451
|
z->c = z->l - m1;
|
460
452
|
if (out_grouping_b_U(z, g_v, 97, 121, 0)) return 0;
|
461
453
|
if (in_grouping_b_U(z, g_v, 97, 121, 0)) return 0;
|
462
|
-
if (z->c > z->lb) return 0;
|
454
|
+
if (z->c > z->lb) return 0;
|
463
455
|
}
|
464
456
|
lab0:
|
465
457
|
return 1;
|
466
458
|
}
|
467
459
|
|
468
460
|
static int r_R1(struct SN_env * z) {
|
469
|
-
if (!(z->I[
|
461
|
+
if (!(z->I[1] <= z->c)) return 0;
|
470
462
|
return 1;
|
471
463
|
}
|
472
464
|
|
473
465
|
static int r_R2(struct SN_env * z) {
|
474
|
-
if (!(z->I[
|
466
|
+
if (!(z->I[0] <= z->c)) return 0;
|
475
467
|
return 1;
|
476
468
|
}
|
477
469
|
|
478
470
|
static int r_Step_1a(struct SN_env * z) {
|
479
471
|
int among_var;
|
480
|
-
{ int
|
481
|
-
z->ket = z->c;
|
482
|
-
if (z->c <= z->lb || (z->p[z->c - 1] != 39 && z->p[z->c - 1] != 115)) { z->c = z->l -
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
case 0: { z->c = z->l - m_keep; goto lab0; }
|
488
|
-
case 1:
|
489
|
-
{ int ret = slice_del(z); /* delete, line 62 */
|
490
|
-
if (ret < 0) return ret;
|
491
|
-
}
|
492
|
-
break;
|
472
|
+
{ int m1 = z->l - z->c; (void)m1;
|
473
|
+
z->ket = z->c;
|
474
|
+
if (z->c <= z->lb || (z->p[z->c - 1] != 39 && z->p[z->c - 1] != 115)) { z->c = z->l - m1; goto lab0; }
|
475
|
+
if (!(find_among_b(z, a_1, 3))) { z->c = z->l - m1; goto lab0; }
|
476
|
+
z->bra = z->c;
|
477
|
+
{ int ret = slice_del(z);
|
478
|
+
if (ret < 0) return ret;
|
493
479
|
}
|
494
480
|
lab0:
|
495
481
|
;
|
496
482
|
}
|
497
|
-
z->ket = z->c;
|
483
|
+
z->ket = z->c;
|
498
484
|
if (z->c <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 115)) return 0;
|
499
|
-
among_var = find_among_b(z, a_2, 6);
|
485
|
+
among_var = find_among_b(z, a_2, 6);
|
500
486
|
if (!(among_var)) return 0;
|
501
|
-
z->bra = z->c;
|
502
|
-
switch(among_var) {
|
503
|
-
case 0: return 0;
|
487
|
+
z->bra = z->c;
|
488
|
+
switch (among_var) {
|
504
489
|
case 1:
|
505
|
-
{ int ret = slice_from_s(z, 2,
|
490
|
+
{ int ret = slice_from_s(z, 2, s_2);
|
506
491
|
if (ret < 0) return ret;
|
507
492
|
}
|
508
493
|
break;
|
509
494
|
case 2:
|
510
|
-
{ int
|
511
|
-
{ int ret =
|
495
|
+
{ int m2 = z->l - z->c; (void)m2;
|
496
|
+
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 2);
|
512
497
|
if (ret < 0) goto lab2;
|
513
|
-
z->c = ret;
|
498
|
+
z->c = ret;
|
514
499
|
}
|
515
|
-
{ int ret = slice_from_s(z, 1,
|
500
|
+
{ int ret = slice_from_s(z, 1, s_3);
|
516
501
|
if (ret < 0) return ret;
|
517
502
|
}
|
518
503
|
goto lab1;
|
519
504
|
lab2:
|
520
|
-
z->c = z->l -
|
521
|
-
{ int ret = slice_from_s(z, 2,
|
505
|
+
z->c = z->l - m2;
|
506
|
+
{ int ret = slice_from_s(z, 2, s_4);
|
522
507
|
if (ret < 0) return ret;
|
523
508
|
}
|
524
509
|
}
|
525
510
|
lab1:
|
526
511
|
break;
|
527
512
|
case 3:
|
528
|
-
{ int ret =
|
513
|
+
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
|
529
514
|
if (ret < 0) return 0;
|
530
|
-
z->c = ret;
|
515
|
+
z->c = ret;
|
531
516
|
}
|
532
|
-
{
|
517
|
+
{
|
533
518
|
int ret = out_grouping_b_U(z, g_v, 97, 121, 1);
|
534
519
|
if (ret < 0) return 0;
|
535
520
|
z->c -= ret;
|
536
521
|
}
|
537
|
-
{ int ret = slice_del(z);
|
522
|
+
{ int ret = slice_del(z);
|
538
523
|
if (ret < 0) return ret;
|
539
524
|
}
|
540
525
|
break;
|
@@ -544,72 +529,72 @@ static int r_Step_1a(struct SN_env * z) {
|
|
544
529
|
|
545
530
|
static int r_Step_1b(struct SN_env * z) {
|
546
531
|
int among_var;
|
547
|
-
z->ket = z->c;
|
532
|
+
z->ket = z->c;
|
548
533
|
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((33554576 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
549
|
-
among_var = find_among_b(z, a_4, 6);
|
534
|
+
among_var = find_among_b(z, a_4, 6);
|
550
535
|
if (!(among_var)) return 0;
|
551
|
-
z->bra = z->c;
|
552
|
-
switch(among_var) {
|
553
|
-
case 0: return 0;
|
536
|
+
z->bra = z->c;
|
537
|
+
switch (among_var) {
|
554
538
|
case 1:
|
555
539
|
{ int ret = r_R1(z);
|
556
|
-
if (ret
|
557
|
-
if (ret < 0) return ret;
|
540
|
+
if (ret <= 0) return ret;
|
558
541
|
}
|
559
|
-
{ int ret = slice_from_s(z, 2,
|
542
|
+
{ int ret = slice_from_s(z, 2, s_5);
|
560
543
|
if (ret < 0) return ret;
|
561
544
|
}
|
562
545
|
break;
|
563
546
|
case 2:
|
564
|
-
{ int
|
565
|
-
{
|
547
|
+
{ int m_test1 = z->l - z->c;
|
548
|
+
{
|
566
549
|
int ret = out_grouping_b_U(z, g_v, 97, 121, 1);
|
567
550
|
if (ret < 0) return 0;
|
568
551
|
z->c -= ret;
|
569
552
|
}
|
570
|
-
z->c = z->l -
|
553
|
+
z->c = z->l - m_test1;
|
571
554
|
}
|
572
|
-
{ int ret = slice_del(z);
|
555
|
+
{ int ret = slice_del(z);
|
573
556
|
if (ret < 0) return ret;
|
574
557
|
}
|
575
|
-
{ int
|
558
|
+
{ int m_test2 = z->l - z->c;
|
576
559
|
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68514004 >> (z->p[z->c - 1] & 0x1f)) & 1)) among_var = 3; else
|
577
|
-
among_var = find_among_b(z, a_3, 13);
|
560
|
+
among_var = find_among_b(z, a_3, 13);
|
578
561
|
if (!(among_var)) return 0;
|
579
|
-
z->c = z->l -
|
562
|
+
z->c = z->l - m_test2;
|
580
563
|
}
|
581
|
-
switch(among_var) {
|
582
|
-
case 0: return 0;
|
564
|
+
switch (among_var) {
|
583
565
|
case 1:
|
584
|
-
{ int
|
585
|
-
int
|
586
|
-
|
566
|
+
{ int ret;
|
567
|
+
{ int saved_c = z->c;
|
568
|
+
ret = insert_s(z, z->c, z->c, 1, s_6);
|
569
|
+
z->c = saved_c;
|
570
|
+
}
|
587
571
|
if (ret < 0) return ret;
|
588
572
|
}
|
589
573
|
break;
|
590
574
|
case 2:
|
591
|
-
z->ket = z->c;
|
592
|
-
{ int ret =
|
575
|
+
z->ket = z->c;
|
576
|
+
{ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
|
593
577
|
if (ret < 0) return 0;
|
594
|
-
z->c = ret;
|
578
|
+
z->c = ret;
|
595
579
|
}
|
596
|
-
z->bra = z->c;
|
597
|
-
{ int ret = slice_del(z);
|
580
|
+
z->bra = z->c;
|
581
|
+
{ int ret = slice_del(z);
|
598
582
|
if (ret < 0) return ret;
|
599
583
|
}
|
600
584
|
break;
|
601
585
|
case 3:
|
602
|
-
if (z->c != z->I[
|
603
|
-
{ int
|
586
|
+
if (z->c != z->I[1]) return 0;
|
587
|
+
{ int m_test3 = z->l - z->c;
|
604
588
|
{ int ret = r_shortv(z);
|
605
|
-
if (ret
|
606
|
-
if (ret < 0) return ret;
|
589
|
+
if (ret <= 0) return ret;
|
607
590
|
}
|
608
|
-
z->c = z->l -
|
591
|
+
z->c = z->l - m_test3;
|
609
592
|
}
|
610
|
-
{ int
|
611
|
-
int
|
612
|
-
|
593
|
+
{ int ret;
|
594
|
+
{ int saved_c = z->c;
|
595
|
+
ret = insert_s(z, z->c, z->c, 1, s_7);
|
596
|
+
z->c = saved_c;
|
597
|
+
}
|
613
598
|
if (ret < 0) return ret;
|
614
599
|
}
|
615
600
|
break;
|
@@ -620,24 +605,24 @@ static int r_Step_1b(struct SN_env * z) {
|
|
620
605
|
}
|
621
606
|
|
622
607
|
static int r_Step_1c(struct SN_env * z) {
|
623
|
-
z->ket = z->c;
|
624
|
-
{ int m1 = z->l - z->c; (void)m1;
|
625
|
-
if (
|
608
|
+
z->ket = z->c;
|
609
|
+
{ int m1 = z->l - z->c; (void)m1;
|
610
|
+
if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab1;
|
611
|
+
z->c--;
|
626
612
|
goto lab0;
|
627
613
|
lab1:
|
628
614
|
z->c = z->l - m1;
|
629
|
-
if (
|
615
|
+
if (z->c <= z->lb || z->p[z->c - 1] != 'Y') return 0;
|
616
|
+
z->c--;
|
630
617
|
}
|
631
618
|
lab0:
|
632
|
-
z->bra = z->c;
|
619
|
+
z->bra = z->c;
|
633
620
|
if (out_grouping_b_U(z, g_v, 97, 121, 0)) return 0;
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
}
|
640
|
-
{ int ret = slice_from_s(z, 1, s_13); /* <-, line 96 */
|
621
|
+
|
622
|
+
if (z->c > z->lb) goto lab2;
|
623
|
+
return 0;
|
624
|
+
lab2:
|
625
|
+
{ int ret = slice_from_s(z, 1, s_8);
|
641
626
|
if (ret < 0) return ret;
|
642
627
|
}
|
643
628
|
return 1;
|
@@ -645,96 +630,90 @@ lab0:
|
|
645
630
|
|
646
631
|
static int r_Step_2(struct SN_env * z) {
|
647
632
|
int among_var;
|
648
|
-
z->ket = z->c;
|
633
|
+
z->ket = z->c;
|
649
634
|
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((815616 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
650
|
-
among_var = find_among_b(z, a_5, 24);
|
635
|
+
among_var = find_among_b(z, a_5, 24);
|
651
636
|
if (!(among_var)) return 0;
|
652
|
-
z->bra = z->c;
|
637
|
+
z->bra = z->c;
|
653
638
|
{ int ret = r_R1(z);
|
654
|
-
if (ret
|
655
|
-
if (ret < 0) return ret;
|
639
|
+
if (ret <= 0) return ret;
|
656
640
|
}
|
657
|
-
switch(among_var) {
|
658
|
-
case 0: return 0;
|
641
|
+
switch (among_var) {
|
659
642
|
case 1:
|
660
|
-
{ int ret = slice_from_s(z, 4,
|
643
|
+
{ int ret = slice_from_s(z, 4, s_9);
|
661
644
|
if (ret < 0) return ret;
|
662
645
|
}
|
663
646
|
break;
|
664
647
|
case 2:
|
665
|
-
{ int ret = slice_from_s(z, 4,
|
648
|
+
{ int ret = slice_from_s(z, 4, s_10);
|
666
649
|
if (ret < 0) return ret;
|
667
650
|
}
|
668
651
|
break;
|
669
652
|
case 3:
|
670
|
-
{ int ret = slice_from_s(z, 4,
|
653
|
+
{ int ret = slice_from_s(z, 4, s_11);
|
671
654
|
if (ret < 0) return ret;
|
672
655
|
}
|
673
656
|
break;
|
674
657
|
case 4:
|
675
|
-
{ int ret = slice_from_s(z, 4,
|
658
|
+
{ int ret = slice_from_s(z, 4, s_12);
|
676
659
|
if (ret < 0) return ret;
|
677
660
|
}
|
678
661
|
break;
|
679
662
|
case 5:
|
680
|
-
{ int ret = slice_from_s(z, 3,
|
663
|
+
{ int ret = slice_from_s(z, 3, s_13);
|
681
664
|
if (ret < 0) return ret;
|
682
665
|
}
|
683
666
|
break;
|
684
667
|
case 6:
|
685
|
-
{ int ret = slice_from_s(z, 3,
|
668
|
+
{ int ret = slice_from_s(z, 3, s_14);
|
686
669
|
if (ret < 0) return ret;
|
687
670
|
}
|
688
671
|
break;
|
689
672
|
case 7:
|
690
|
-
{ int ret = slice_from_s(z, 3,
|
673
|
+
{ int ret = slice_from_s(z, 3, s_15);
|
691
674
|
if (ret < 0) return ret;
|
692
675
|
}
|
693
676
|
break;
|
694
677
|
case 8:
|
695
|
-
{ int ret = slice_from_s(z, 2,
|
678
|
+
{ int ret = slice_from_s(z, 2, s_16);
|
696
679
|
if (ret < 0) return ret;
|
697
680
|
}
|
698
681
|
break;
|
699
682
|
case 9:
|
700
|
-
{ int ret = slice_from_s(z, 3,
|
683
|
+
{ int ret = slice_from_s(z, 3, s_17);
|
701
684
|
if (ret < 0) return ret;
|
702
685
|
}
|
703
686
|
break;
|
704
687
|
case 10:
|
705
|
-
{ int ret = slice_from_s(z, 3,
|
688
|
+
{ int ret = slice_from_s(z, 3, s_18);
|
706
689
|
if (ret < 0) return ret;
|
707
690
|
}
|
708
691
|
break;
|
709
692
|
case 11:
|
710
|
-
{ int ret = slice_from_s(z, 3,
|
693
|
+
{ int ret = slice_from_s(z, 3, s_19);
|
711
694
|
if (ret < 0) return ret;
|
712
695
|
}
|
713
696
|
break;
|
714
697
|
case 12:
|
715
|
-
{ int ret = slice_from_s(z, 3,
|
698
|
+
{ int ret = slice_from_s(z, 3, s_20);
|
716
699
|
if (ret < 0) return ret;
|
717
700
|
}
|
718
701
|
break;
|
719
702
|
case 13:
|
720
|
-
if (
|
721
|
-
|
703
|
+
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
|
704
|
+
z->c--;
|
705
|
+
{ int ret = slice_from_s(z, 2, s_21);
|
722
706
|
if (ret < 0) return ret;
|
723
707
|
}
|
724
708
|
break;
|
725
709
|
case 14:
|
726
|
-
{ int ret = slice_from_s(z,
|
710
|
+
{ int ret = slice_from_s(z, 4, s_22);
|
727
711
|
if (ret < 0) return ret;
|
728
712
|
}
|
729
713
|
break;
|
730
714
|
case 15:
|
731
|
-
{ int ret = slice_from_s(z, 4, s_29); /* <-, line 121 */
|
732
|
-
if (ret < 0) return ret;
|
733
|
-
}
|
734
|
-
break;
|
735
|
-
case 16:
|
736
715
|
if (in_grouping_b_U(z, g_valid_LI, 99, 116, 0)) return 0;
|
737
|
-
{ int ret = slice_del(z);
|
716
|
+
{ int ret = slice_del(z);
|
738
717
|
if (ret < 0) return ret;
|
739
718
|
}
|
740
719
|
break;
|
@@ -744,48 +723,45 @@ static int r_Step_2(struct SN_env * z) {
|
|
744
723
|
|
745
724
|
static int r_Step_3(struct SN_env * z) {
|
746
725
|
int among_var;
|
747
|
-
z->ket = z->c;
|
726
|
+
z->ket = z->c;
|
748
727
|
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((528928 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
749
|
-
among_var = find_among_b(z, a_6, 9);
|
728
|
+
among_var = find_among_b(z, a_6, 9);
|
750
729
|
if (!(among_var)) return 0;
|
751
|
-
z->bra = z->c;
|
730
|
+
z->bra = z->c;
|
752
731
|
{ int ret = r_R1(z);
|
753
|
-
if (ret
|
754
|
-
if (ret < 0) return ret;
|
732
|
+
if (ret <= 0) return ret;
|
755
733
|
}
|
756
|
-
switch(among_var) {
|
757
|
-
case 0: return 0;
|
734
|
+
switch (among_var) {
|
758
735
|
case 1:
|
759
|
-
{ int ret = slice_from_s(z, 4,
|
736
|
+
{ int ret = slice_from_s(z, 4, s_23);
|
760
737
|
if (ret < 0) return ret;
|
761
738
|
}
|
762
739
|
break;
|
763
740
|
case 2:
|
764
|
-
{ int ret = slice_from_s(z, 3,
|
741
|
+
{ int ret = slice_from_s(z, 3, s_24);
|
765
742
|
if (ret < 0) return ret;
|
766
743
|
}
|
767
744
|
break;
|
768
745
|
case 3:
|
769
|
-
{ int ret = slice_from_s(z, 2,
|
746
|
+
{ int ret = slice_from_s(z, 2, s_25);
|
770
747
|
if (ret < 0) return ret;
|
771
748
|
}
|
772
749
|
break;
|
773
750
|
case 4:
|
774
|
-
{ int ret = slice_from_s(z, 2,
|
751
|
+
{ int ret = slice_from_s(z, 2, s_26);
|
775
752
|
if (ret < 0) return ret;
|
776
753
|
}
|
777
754
|
break;
|
778
755
|
case 5:
|
779
|
-
{ int ret = slice_del(z);
|
756
|
+
{ int ret = slice_del(z);
|
780
757
|
if (ret < 0) return ret;
|
781
758
|
}
|
782
759
|
break;
|
783
760
|
case 6:
|
784
761
|
{ int ret = r_R2(z);
|
785
|
-
if (ret
|
786
|
-
if (ret < 0) return ret;
|
762
|
+
if (ret <= 0) return ret;
|
787
763
|
}
|
788
|
-
{ int ret = slice_del(z);
|
764
|
+
{ int ret = slice_del(z);
|
789
765
|
if (ret < 0) return ret;
|
790
766
|
}
|
791
767
|
break;
|
@@ -795,32 +771,32 @@ static int r_Step_3(struct SN_env * z) {
|
|
795
771
|
|
796
772
|
static int r_Step_4(struct SN_env * z) {
|
797
773
|
int among_var;
|
798
|
-
z->ket = z->c;
|
774
|
+
z->ket = z->c;
|
799
775
|
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1864232 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
|
800
|
-
among_var = find_among_b(z, a_7, 18);
|
776
|
+
among_var = find_among_b(z, a_7, 18);
|
801
777
|
if (!(among_var)) return 0;
|
802
|
-
z->bra = z->c;
|
778
|
+
z->bra = z->c;
|
803
779
|
{ int ret = r_R2(z);
|
804
|
-
if (ret
|
805
|
-
if (ret < 0) return ret;
|
780
|
+
if (ret <= 0) return ret;
|
806
781
|
}
|
807
|
-
switch(among_var) {
|
808
|
-
case 0: return 0;
|
782
|
+
switch (among_var) {
|
809
783
|
case 1:
|
810
|
-
{ int ret = slice_del(z);
|
784
|
+
{ int ret = slice_del(z);
|
811
785
|
if (ret < 0) return ret;
|
812
786
|
}
|
813
787
|
break;
|
814
788
|
case 2:
|
815
|
-
{ int m1 = z->l - z->c; (void)m1;
|
816
|
-
if (
|
789
|
+
{ int m1 = z->l - z->c; (void)m1;
|
790
|
+
if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab1;
|
791
|
+
z->c--;
|
817
792
|
goto lab0;
|
818
793
|
lab1:
|
819
794
|
z->c = z->l - m1;
|
820
|
-
if (
|
795
|
+
if (z->c <= z->lb || z->p[z->c - 1] != 't') return 0;
|
796
|
+
z->c--;
|
821
797
|
}
|
822
798
|
lab0:
|
823
|
-
{ int ret = slice_del(z);
|
799
|
+
{ int ret = slice_del(z);
|
824
800
|
if (ret < 0) return ret;
|
825
801
|
}
|
826
802
|
break;
|
@@ -830,29 +806,27 @@ static int r_Step_4(struct SN_env * z) {
|
|
830
806
|
|
831
807
|
static int r_Step_5(struct SN_env * z) {
|
832
808
|
int among_var;
|
833
|
-
z->ket = z->c;
|
809
|
+
z->ket = z->c;
|
834
810
|
if (z->c <= z->lb || (z->p[z->c - 1] != 101 && z->p[z->c - 1] != 108)) return 0;
|
835
|
-
among_var = find_among_b(z, a_8, 2);
|
811
|
+
among_var = find_among_b(z, a_8, 2);
|
836
812
|
if (!(among_var)) return 0;
|
837
|
-
z->bra = z->c;
|
838
|
-
switch(among_var) {
|
839
|
-
case 0: return 0;
|
813
|
+
z->bra = z->c;
|
814
|
+
switch (among_var) {
|
840
815
|
case 1:
|
841
|
-
{ int m1 = z->l - z->c; (void)m1;
|
816
|
+
{ int m1 = z->l - z->c; (void)m1;
|
842
817
|
{ int ret = r_R2(z);
|
843
|
-
if (ret == 0) goto lab1;
|
818
|
+
if (ret == 0) goto lab1;
|
844
819
|
if (ret < 0) return ret;
|
845
820
|
}
|
846
821
|
goto lab0;
|
847
822
|
lab1:
|
848
823
|
z->c = z->l - m1;
|
849
824
|
{ int ret = r_R1(z);
|
850
|
-
if (ret
|
851
|
-
if (ret < 0) return ret;
|
825
|
+
if (ret <= 0) return ret;
|
852
826
|
}
|
853
|
-
{ int m2 = z->l - z->c; (void)m2;
|
827
|
+
{ int m2 = z->l - z->c; (void)m2;
|
854
828
|
{ int ret = r_shortv(z);
|
855
|
-
if (ret == 0) goto lab2;
|
829
|
+
if (ret == 0) goto lab2;
|
856
830
|
if (ret < 0) return ret;
|
857
831
|
}
|
858
832
|
return 0;
|
@@ -861,17 +835,17 @@ static int r_Step_5(struct SN_env * z) {
|
|
861
835
|
}
|
862
836
|
}
|
863
837
|
lab0:
|
864
|
-
{ int ret = slice_del(z);
|
838
|
+
{ int ret = slice_del(z);
|
865
839
|
if (ret < 0) return ret;
|
866
840
|
}
|
867
841
|
break;
|
868
842
|
case 2:
|
869
843
|
{ int ret = r_R2(z);
|
870
|
-
if (ret
|
871
|
-
if (ret < 0) return ret;
|
844
|
+
if (ret <= 0) return ret;
|
872
845
|
}
|
873
|
-
if (
|
874
|
-
|
846
|
+
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
|
847
|
+
z->c--;
|
848
|
+
{ int ret = slice_del(z);
|
875
849
|
if (ret < 0) return ret;
|
876
850
|
}
|
877
851
|
break;
|
@@ -880,76 +854,75 @@ static int r_Step_5(struct SN_env * z) {
|
|
880
854
|
}
|
881
855
|
|
882
856
|
static int r_exception2(struct SN_env * z) {
|
883
|
-
z->ket = z->c;
|
857
|
+
z->ket = z->c;
|
884
858
|
if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 103)) return 0;
|
885
|
-
if (!(find_among_b(z, a_9, 8))) return 0;
|
886
|
-
z->bra = z->c;
|
887
|
-
if (z->c > z->lb) return 0;
|
859
|
+
if (!(find_among_b(z, a_9, 8))) return 0;
|
860
|
+
z->bra = z->c;
|
861
|
+
if (z->c > z->lb) return 0;
|
888
862
|
return 1;
|
889
863
|
}
|
890
864
|
|
891
865
|
static int r_exception1(struct SN_env * z) {
|
892
866
|
int among_var;
|
893
|
-
z->bra = z->c;
|
867
|
+
z->bra = z->c;
|
894
868
|
if (z->c + 2 >= z->l || z->p[z->c + 2] >> 5 != 3 || !((42750482 >> (z->p[z->c + 2] & 0x1f)) & 1)) return 0;
|
895
|
-
among_var = find_among(z, a_10, 18);
|
869
|
+
among_var = find_among(z, a_10, 18);
|
896
870
|
if (!(among_var)) return 0;
|
897
|
-
z->ket = z->c;
|
898
|
-
if (z->c < z->l) return 0;
|
899
|
-
switch(among_var) {
|
900
|
-
case 0: return 0;
|
871
|
+
z->ket = z->c;
|
872
|
+
if (z->c < z->l) return 0;
|
873
|
+
switch (among_var) {
|
901
874
|
case 1:
|
902
|
-
{ int ret = slice_from_s(z, 3,
|
875
|
+
{ int ret = slice_from_s(z, 3, s_27);
|
903
876
|
if (ret < 0) return ret;
|
904
877
|
}
|
905
878
|
break;
|
906
879
|
case 2:
|
907
|
-
{ int ret = slice_from_s(z, 3,
|
880
|
+
{ int ret = slice_from_s(z, 3, s_28);
|
908
881
|
if (ret < 0) return ret;
|
909
882
|
}
|
910
883
|
break;
|
911
884
|
case 3:
|
912
|
-
{ int ret = slice_from_s(z, 3,
|
885
|
+
{ int ret = slice_from_s(z, 3, s_29);
|
913
886
|
if (ret < 0) return ret;
|
914
887
|
}
|
915
888
|
break;
|
916
889
|
case 4:
|
917
|
-
{ int ret = slice_from_s(z, 3,
|
890
|
+
{ int ret = slice_from_s(z, 3, s_30);
|
918
891
|
if (ret < 0) return ret;
|
919
892
|
}
|
920
893
|
break;
|
921
894
|
case 5:
|
922
|
-
{ int ret = slice_from_s(z, 3,
|
895
|
+
{ int ret = slice_from_s(z, 3, s_31);
|
923
896
|
if (ret < 0) return ret;
|
924
897
|
}
|
925
898
|
break;
|
926
899
|
case 6:
|
927
|
-
{ int ret = slice_from_s(z, 3,
|
900
|
+
{ int ret = slice_from_s(z, 3, s_32);
|
928
901
|
if (ret < 0) return ret;
|
929
902
|
}
|
930
903
|
break;
|
931
904
|
case 7:
|
932
|
-
{ int ret = slice_from_s(z, 5,
|
905
|
+
{ int ret = slice_from_s(z, 5, s_33);
|
933
906
|
if (ret < 0) return ret;
|
934
907
|
}
|
935
908
|
break;
|
936
909
|
case 8:
|
937
|
-
{ int ret = slice_from_s(z, 4,
|
910
|
+
{ int ret = slice_from_s(z, 4, s_34);
|
938
911
|
if (ret < 0) return ret;
|
939
912
|
}
|
940
913
|
break;
|
941
914
|
case 9:
|
942
|
-
{ int ret = slice_from_s(z, 5,
|
915
|
+
{ int ret = slice_from_s(z, 5, s_35);
|
943
916
|
if (ret < 0) return ret;
|
944
917
|
}
|
945
918
|
break;
|
946
919
|
case 10:
|
947
|
-
{ int ret = slice_from_s(z, 4,
|
920
|
+
{ int ret = slice_from_s(z, 4, s_36);
|
948
921
|
if (ret < 0) return ret;
|
949
922
|
}
|
950
923
|
break;
|
951
924
|
case 11:
|
952
|
-
{ int ret = slice_from_s(z, 5,
|
925
|
+
{ int ret = slice_from_s(z, 5, s_37);
|
953
926
|
if (ret < 0) return ret;
|
954
927
|
}
|
955
928
|
break;
|
@@ -958,24 +931,25 @@ static int r_exception1(struct SN_env * z) {
|
|
958
931
|
}
|
959
932
|
|
960
933
|
static int r_postlude(struct SN_env * z) {
|
961
|
-
if (!(z->
|
962
|
-
while(1) {
|
934
|
+
if (!(z->I[2])) return 0;
|
935
|
+
while(1) {
|
963
936
|
int c1 = z->c;
|
964
|
-
while(1) {
|
937
|
+
while(1) {
|
965
938
|
int c2 = z->c;
|
966
|
-
z->bra = z->c;
|
967
|
-
if (
|
968
|
-
z->
|
939
|
+
z->bra = z->c;
|
940
|
+
if (z->c == z->l || z->p[z->c] != 'Y') goto lab1;
|
941
|
+
z->c++;
|
942
|
+
z->ket = z->c;
|
969
943
|
z->c = c2;
|
970
944
|
break;
|
971
945
|
lab1:
|
972
946
|
z->c = c2;
|
973
|
-
{ int ret = skip_utf8(z->p, z->c,
|
947
|
+
{ int ret = skip_utf8(z->p, z->c, z->l, 1);
|
974
948
|
if (ret < 0) goto lab0;
|
975
|
-
z->c = ret;
|
949
|
+
z->c = ret;
|
976
950
|
}
|
977
951
|
}
|
978
|
-
{ int ret = slice_from_s(z, 1,
|
952
|
+
{ int ret = slice_from_s(z, 1, s_38);
|
979
953
|
if (ret < 0) return ret;
|
980
954
|
}
|
981
955
|
continue;
|
@@ -987,18 +961,18 @@ static int r_postlude(struct SN_env * z) {
|
|
987
961
|
}
|
988
962
|
|
989
963
|
extern int english_UTF_8_stem(struct SN_env * z) {
|
990
|
-
{ int c1 = z->c;
|
964
|
+
{ int c1 = z->c;
|
991
965
|
{ int ret = r_exception1(z);
|
992
|
-
if (ret == 0) goto lab1;
|
966
|
+
if (ret == 0) goto lab1;
|
993
967
|
if (ret < 0) return ret;
|
994
968
|
}
|
995
969
|
goto lab0;
|
996
970
|
lab1:
|
997
971
|
z->c = c1;
|
998
|
-
{ int c2 = z->c;
|
999
|
-
{ int ret = skip_utf8(z->p, z->c,
|
972
|
+
{ int c2 = z->c;
|
973
|
+
{ int ret = skip_utf8(z->p, z->c, z->l, 3);
|
1000
974
|
if (ret < 0) goto lab3;
|
1001
|
-
z->c = ret;
|
975
|
+
z->c = ret;
|
1002
976
|
}
|
1003
977
|
goto lab2;
|
1004
978
|
lab3:
|
@@ -1007,105 +981,81 @@ extern int english_UTF_8_stem(struct SN_env * z) {
|
|
1007
981
|
goto lab0;
|
1008
982
|
lab2:
|
1009
983
|
z->c = c1;
|
1010
|
-
|
1011
|
-
|
1012
|
-
|
1013
|
-
if (ret < 0) return ret;
|
1014
|
-
}
|
1015
|
-
lab4:
|
1016
|
-
z->c = c3;
|
984
|
+
|
985
|
+
{ int ret = r_prelude(z);
|
986
|
+
if (ret < 0) return ret;
|
1017
987
|
}
|
1018
|
-
|
1019
|
-
|
1020
|
-
|
1021
|
-
if (ret < 0) return ret;
|
1022
|
-
}
|
1023
|
-
lab5:
|
1024
|
-
z->c = c4;
|
988
|
+
|
989
|
+
{ int ret = r_mark_regions(z);
|
990
|
+
if (ret < 0) return ret;
|
1025
991
|
}
|
1026
|
-
z->lb = z->c; z->c = z->l;
|
992
|
+
z->lb = z->c; z->c = z->l;
|
1027
993
|
|
1028
|
-
{ int
|
994
|
+
{ int m3 = z->l - z->c; (void)m3;
|
1029
995
|
{ int ret = r_Step_1a(z);
|
1030
|
-
if (ret == 0) goto lab6; /* call Step_1a, line 213 */
|
1031
996
|
if (ret < 0) return ret;
|
1032
997
|
}
|
1033
|
-
|
1034
|
-
z->c = z->l - m5;
|
998
|
+
z->c = z->l - m3;
|
1035
999
|
}
|
1036
|
-
{ int
|
1000
|
+
{ int m4 = z->l - z->c; (void)m4;
|
1037
1001
|
{ int ret = r_exception2(z);
|
1038
|
-
if (ret == 0) goto
|
1002
|
+
if (ret == 0) goto lab5;
|
1039
1003
|
if (ret < 0) return ret;
|
1040
1004
|
}
|
1041
|
-
goto
|
1042
|
-
|
1043
|
-
z->c = z->l -
|
1044
|
-
{ int
|
1005
|
+
goto lab4;
|
1006
|
+
lab5:
|
1007
|
+
z->c = z->l - m4;
|
1008
|
+
{ int m5 = z->l - z->c; (void)m5;
|
1045
1009
|
{ int ret = r_Step_1b(z);
|
1046
|
-
if (ret == 0) goto lab9; /* call Step_1b, line 217 */
|
1047
1010
|
if (ret < 0) return ret;
|
1048
1011
|
}
|
1049
|
-
|
1050
|
-
z->c = z->l - m7;
|
1012
|
+
z->c = z->l - m5;
|
1051
1013
|
}
|
1052
|
-
{ int
|
1014
|
+
{ int m6 = z->l - z->c; (void)m6;
|
1053
1015
|
{ int ret = r_Step_1c(z);
|
1054
|
-
if (ret == 0) goto lab10; /* call Step_1c, line 218 */
|
1055
1016
|
if (ret < 0) return ret;
|
1056
1017
|
}
|
1057
|
-
|
1058
|
-
z->c = z->l - m8;
|
1018
|
+
z->c = z->l - m6;
|
1059
1019
|
}
|
1060
|
-
{ int
|
1020
|
+
{ int m7 = z->l - z->c; (void)m7;
|
1061
1021
|
{ int ret = r_Step_2(z);
|
1062
|
-
if (ret == 0) goto lab11; /* call Step_2, line 220 */
|
1063
1022
|
if (ret < 0) return ret;
|
1064
1023
|
}
|
1065
|
-
|
1066
|
-
z->c = z->l - m9;
|
1024
|
+
z->c = z->l - m7;
|
1067
1025
|
}
|
1068
|
-
{ int
|
1026
|
+
{ int m8 = z->l - z->c; (void)m8;
|
1069
1027
|
{ int ret = r_Step_3(z);
|
1070
|
-
if (ret == 0) goto lab12; /* call Step_3, line 221 */
|
1071
1028
|
if (ret < 0) return ret;
|
1072
1029
|
}
|
1073
|
-
|
1074
|
-
z->c = z->l - m10;
|
1030
|
+
z->c = z->l - m8;
|
1075
1031
|
}
|
1076
|
-
{ int
|
1032
|
+
{ int m9 = z->l - z->c; (void)m9;
|
1077
1033
|
{ int ret = r_Step_4(z);
|
1078
|
-
if (ret == 0) goto lab13; /* call Step_4, line 222 */
|
1079
1034
|
if (ret < 0) return ret;
|
1080
1035
|
}
|
1081
|
-
|
1082
|
-
z->c = z->l - m11;
|
1036
|
+
z->c = z->l - m9;
|
1083
1037
|
}
|
1084
|
-
{ int
|
1038
|
+
{ int m10 = z->l - z->c; (void)m10;
|
1085
1039
|
{ int ret = r_Step_5(z);
|
1086
|
-
if (ret == 0) goto lab14; /* call Step_5, line 224 */
|
1087
1040
|
if (ret < 0) return ret;
|
1088
1041
|
}
|
1089
|
-
|
1090
|
-
z->c = z->l - m12;
|
1042
|
+
z->c = z->l - m10;
|
1091
1043
|
}
|
1092
1044
|
}
|
1093
|
-
|
1045
|
+
lab4:
|
1094
1046
|
z->c = z->lb;
|
1095
|
-
{ int
|
1047
|
+
{ int c11 = z->c;
|
1096
1048
|
{ int ret = r_postlude(z);
|
1097
|
-
if (ret == 0) goto lab15; /* call postlude, line 227 */
|
1098
1049
|
if (ret < 0) return ret;
|
1099
1050
|
}
|
1100
|
-
|
1101
|
-
z->c = c13;
|
1051
|
+
z->c = c11;
|
1102
1052
|
}
|
1103
1053
|
}
|
1104
1054
|
lab0:
|
1105
1055
|
return 1;
|
1106
1056
|
}
|
1107
1057
|
|
1108
|
-
extern struct SN_env * english_UTF_8_create_env(void) { return SN_create_env(0,
|
1058
|
+
extern struct SN_env * english_UTF_8_create_env(void) { return SN_create_env(0, 3); }
|
1109
1059
|
|
1110
1060
|
extern void english_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
|
1111
1061
|
|