]> granicus.if.org Git - onig/commitdiff
add ENC_FLAG_SKIP_OFFSET_XXX flag values
authorK.Kosako <kkosako0@gmail.com>
Mon, 8 Oct 2018 07:21:01 +0000 (16:21 +0900)
committerK.Kosako <kkosako0@gmail.com>
Mon, 8 Oct 2018 07:21:01 +0000 (16:21 +0900)
31 files changed:
src/ascii.c
src/big5.c
src/cp1251.c
src/euc_jp.c
src/euc_kr.c
src/euc_tw.c
src/gb18030.c
src/iso8859_1.c
src/iso8859_10.c
src/iso8859_11.c
src/iso8859_13.c
src/iso8859_14.c
src/iso8859_15.c
src/iso8859_16.c
src/iso8859_2.c
src/iso8859_3.c
src/iso8859_4.c
src/iso8859_5.c
src/iso8859_6.c
src/iso8859_7.c
src/iso8859_8.c
src/iso8859_9.c
src/koi8.c
src/koi8_r.c
src/regenc.h
src/sjis.c
src/utf16_be.c
src/utf16_le.c
src/utf32_be.c
src/utf32_le.c
src/utf8.c

index eb389448de9002bf9e1b90678197ca7300cb152c..e83e4d64f75d285ac3b53adaa64fe8212e5c62f9 100644 (file)
@@ -113,6 +113,6 @@ OnigEncodingType OnigEncodingASCII = {
   init,
   0, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index c3fa9fdd5c3e8864bb040fd5bfd9c338e187755e..f931ade2950575684e7cfdbab34e6d0c2d11ab81 100644 (file)
@@ -187,6 +187,6 @@ OnigEncodingType OnigEncodingBIG5 = {
   NULL, /* init */
   NULL, /* is_initialized */
   is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index e2170370261ca036c86bc2819bad23ba5642763d..7b19855c5cf543b77117954a8ecacfea537020f4 100644 (file)
@@ -200,6 +200,6 @@ OnigEncodingType OnigEncodingCP1251 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 9d254758865ccb7ccde377a38e050b1a8938b8b5..c1ab89ef04b631fcdf42702991ffccf47e12473a 100644 (file)
@@ -307,6 +307,6 @@ OnigEncodingType OnigEncodingEUC_JP = {
   NULL, /* init */
   NULL, /* is_initialized */
   is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1_OR_0,
   0, 0
 };
index def311bfd5f1db8fdd833128303cb887dcdc97b4..9b625146653752fd220a91df2afcf4b2816f1d8e 100644 (file)
@@ -161,7 +161,9 @@ OnigEncodingType OnigEncodingEUC_KR = {
   euckr_is_allowed_reverse_match,
   NULL, /* init */
   NULL, /* is_initialized */
-  is_valid_mbc_string
+  is_valid_mbc_string,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1_OR_0,
+  0, 0  
 };
 
 /* Same with OnigEncodingEUC_KR except the name */
@@ -185,6 +187,6 @@ OnigEncodingType OnigEncodingEUC_CN = {
   NULL, /* init */
   NULL, /* is_initialized */
   is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1_OR_0,
   0, 0
 };
index 87385986862e72b99787029902391260159d92e3..76833364cfa9a13c69f5de7fac5d0b3b9e03ea83 100644 (file)
@@ -168,6 +168,6 @@ OnigEncodingType OnigEncodingEUC_TW = {
   NULL, /* init */
   NULL, /* is_initialized */
   is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index d4a11087b3a89da6093812f5e4087ba66eebc7c0..76544327e76922512c72d00cbd9febb2d5e92454 100644 (file)
@@ -535,6 +535,6 @@ OnigEncodingType OnigEncodingGB18030 = {
   NULL, /* init */
   NULL, /* is_initialized */
   is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index ff47b807d4c70da39a8d04f53d0d50d2b0a059dd..0ce70a62c7fc893482f8cb1b343da24979376b3d 100644 (file)
@@ -272,6 +272,6 @@ OnigEncodingType OnigEncodingISO_8859_1 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index f9804e283908c0826124bd0668694a5254c4309a..4a34b3887087f00253836d736db05e2ac21435a6 100644 (file)
@@ -239,6 +239,6 @@ OnigEncodingType OnigEncodingISO_8859_10 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 108ee8ade01055fe7c235623ff45ad467515a2c4..da8fda0d590692f482b90f85c4e17c16af81e52f 100644 (file)
@@ -96,6 +96,6 @@ OnigEncodingType OnigEncodingISO_8859_11 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 9585355c78dbd4c14f2a3e378b3b497ff872cd80..23a0265d4cf5ed2d6bfad7d569776ab045cf5a0b 100644 (file)
@@ -228,6 +228,6 @@ OnigEncodingType OnigEncodingISO_8859_13 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 83fc551747a96e38815e01cae7c5c024f06cfe2e..7281e93fde7e30a48594446f77c7a4941a237bea 100644 (file)
@@ -241,6 +241,6 @@ OnigEncodingType OnigEncodingISO_8859_14 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 3a7ad0578f2fe23a2c4ba00b5a145b5d8a73c1e2..3d9f571248930eb6b649d6ddd9f12009551ff495 100644 (file)
@@ -235,6 +235,6 @@ OnigEncodingType OnigEncodingISO_8859_15 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 02022d9999894c484f4075f72660c172064a609f..a6977dd328ac08a203a5a7de57bf5b72b51d795b 100644 (file)
@@ -237,6 +237,6 @@ OnigEncodingType OnigEncodingISO_8859_16 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index ecdbb99174c668b29d1a1ed7d4aa02b0ea0efb6c..4f994c427e07bcf814002562bbe97a9c3130159a 100644 (file)
@@ -235,6 +235,6 @@ OnigEncodingType OnigEncodingISO_8859_2 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 739f1c9b8c6528d2cafb53c28b79611995f0c3d4..944a7ae64ec2fd6f96145897b0136ed0ef311fd5 100644 (file)
@@ -235,6 +235,6 @@ OnigEncodingType OnigEncodingISO_8859_3 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 4f2b6a029add390cc0083494c0804d1e60bc59a2..3a7c210929c4c45978cf9c6f490fa2c36b14481b 100644 (file)
@@ -237,6 +237,6 @@ OnigEncodingType OnigEncodingISO_8859_4 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index cf41061e03f592d72a1c6562d573e18d0d70972b..0a8b7ec8d8b73184314f9a741da4c3660ede9e6a 100644 (file)
@@ -226,6 +226,6 @@ OnigEncodingType OnigEncodingISO_8859_5 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 1ffe99f71a3a3ff7efb84437d37ea8c38622eeab..1c16c79aaea909262b8b5a2ff56a8a2d3635b80d 100644 (file)
@@ -96,6 +96,6 @@ OnigEncodingType OnigEncodingISO_8859_6 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 87288c240488ca9a8ea9f55e251ca63d3196b54c..0877b6fe998c7345a07de60ee02f39c39b5d3cab 100644 (file)
@@ -222,6 +222,6 @@ OnigEncodingType OnigEncodingISO_8859_7 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 8f162a4f720dbc5ba27a50cda91a0fededd68073..bd3e94de246cc7179240f0449aff28ddd37fc502 100644 (file)
@@ -96,6 +96,6 @@ OnigEncodingType OnigEncodingISO_8859_8 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 52589cf1b6b897750da038941fe200b79c9c3c7e..8819f4a4728fc016237646b67872d9c50908190c 100644 (file)
@@ -228,6 +228,6 @@ OnigEncodingType OnigEncodingISO_8859_9 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 9fb2ee5e6be2d19266564de64c98810aaf7c338b..7ce965fc59e74de3b3cf7e5248704da58852ce05 100644 (file)
@@ -250,6 +250,6 @@ OnigEncodingType OnigEncodingKOI8 = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 8adc399a911efcccf5f625f216f905bab3da71d6..5994ebe51c4dbe47295c95690d0099fc235aa2cb 100644 (file)
@@ -212,6 +212,6 @@ OnigEncodingType OnigEncodingKOI8_R = {
   NULL, /* init */
   NULL, /* is_initialized */
   onigenc_always_true_is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 17d56cd675b49ee98c188e6b2fd6431ffff3cc99..64adb3e178a5552ef9c4d3657189807056a45e54 100644 (file)
@@ -123,6 +123,15 @@ struct PropertyNameCtype {
 
 #define ENC_FLAG_ASCII_COMPATIBLE      (1<<0)
 #define ENC_FLAG_UNICODE               (1<<1)
+#define ENC_FLAG_SKIP_OFFSET_MASK      (7<<2)
+#define ENC_FLAG_SKIP_OFFSET_0             0
+#define ENC_FLAG_SKIP_OFFSET_1         (1<<2)
+#define ENC_FLAG_SKIP_OFFSET_2         (2<<2)
+#define ENC_FLAG_SKIP_OFFSET_3         (3<<2)
+#define ENC_FLAG_SKIP_OFFSET_4         (4<<2)
+#define ENC_FLAG_SKIP_OFFSET_1_OR_0    (7<<2)
+
+#define ENC_GET_SKIP_OFFSET(flag)      ((flag)>>2)
 
 
 /* for encoding system implementation (internal) */
index f3cca2ecddfb0e90dbbf759d5e03a4bd3dcaf970..aaf4cb8edbc8ab9e66b6248361301c1d8bd898de 100644 (file)
@@ -335,6 +335,6 @@ OnigEncodingType OnigEncodingSJIS = {
   NULL, /* init */
   NULL, /* is_initialized */
   is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_SKIP_OFFSET_1_OR_0,
   0, 0
 };
index 8f5b8bf64b22475840d236d0004f42d130b75367..a812a323c9aeb53163c1b3d526e9ace4e5552a73 100644 (file)
@@ -278,6 +278,6 @@ OnigEncodingType OnigEncodingUTF16_BE = {
   init,
   0, /* is_initialized */
   is_valid_mbc_string,
-  ENC_FLAG_UNICODE,
+  ENC_FLAG_UNICODE|ENC_FLAG_SKIP_OFFSET_2,
   0, 0
 };
index 92bf3186f543f99790569cb6fef43234f751b911..da9571f07fe2db0b2d493d1941af2966c0558ebd 100644 (file)
@@ -286,6 +286,6 @@ OnigEncodingType OnigEncodingUTF16_LE = {
   init,
   0, /* is_initialized */
   is_valid_mbc_string,
-  ENC_FLAG_UNICODE,
+  ENC_FLAG_UNICODE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 92476ec0331c308d017b93e6128d44c3d936a84d..9339b151e27f58d20e87f710c8c9889df2922161 100644 (file)
@@ -191,6 +191,6 @@ OnigEncodingType OnigEncodingUTF32_BE = {
   NULL, /* init */
   NULL, /* is_initialized */
   is_valid_mbc_string,
-  ENC_FLAG_UNICODE,
+  ENC_FLAG_UNICODE|ENC_FLAG_SKIP_OFFSET_4,
   0, 0
 };
index dc3fd92806103a81f860e83a885cd2df2078bf9f..22e007cab2156fb558147d51a095a4bfefbc7a01 100644 (file)
@@ -191,6 +191,6 @@ OnigEncodingType OnigEncodingUTF32_LE = {
   NULL, /* init */
   NULL, /* is_initialized */
   is_valid_mbc_string,
-  ENC_FLAG_UNICODE,
+  ENC_FLAG_UNICODE|ENC_FLAG_SKIP_OFFSET_1,
   0, 0
 };
index 9ccf1bd4da98867ffaa77a459a3f72f87fffa201..4d1f9ec5e6a8ad2e48a1088a3629f0d5c60c4648 100644 (file)
@@ -297,6 +297,6 @@ OnigEncodingType OnigEncodingUTF8 = {
   NULL, /* init */
   NULL, /* is_initialized */
   is_valid_mbc_string,
-  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_UNICODE,
+  ENC_FLAG_ASCII_COMPATIBLE|ENC_FLAG_UNICODE|ENC_FLAG_SKIP_OFFSET_1_OR_0,
   0, 0
 };