]> granicus.if.org Git - onig/commitdiff
remove (*ABORT) and argument of (*ERROR{n}) to be optional argument (default value...
authorK.Kosako <kosako@sofnec.co.jp>
Thu, 15 Mar 2018 01:25:41 +0000 (10:25 +0900)
committerK.Kosako <kosako@sofnec.co.jp>
Thu, 15 Mar 2018 01:25:41 +0000 (10:25 +0900)
src/ascii.c
src/oniguruma.h
src/regexec.c
src/regint.h
src/utf16_be.c
src/utf16_le.c

index 92f67e778b58710423a36e148872c979254bfc43..dc67e0f19e3ab57c8c7206210266031a29e6608b 100644 (file)
@@ -46,10 +46,12 @@ init(void)
 
     name = "FAIL";        BC0_P(name, fail);
     name = "MISMATCH";    BC0_P(name, mismatch);
-    name = "ABORT";       BC0_P(name, abort);
-    name = "ERROR";       BC_P(name, error, 1, &t_long);
     name = "MAX";         BC_B(name, max, 1, &t_long);
 
+    name = "ERROR";
+    args[0] = ONIG_TYPE_LONG; opts[0].l = ONIG_ABORT;
+    BC_P_O(name, error, 1, args, 1, opts);
+
     name = "COUNT";
     args[0] = ONIG_TYPE_CHAR; opts[0].c = '>';
     BC_B_O(name, count, 1, args, 1, opts);
index 31cb5cd9fcb683bd7db95b04a5abe9d773229d04..bb4671bf9656a59c5f9da08b4d5d8d3288bebdef 100644 (file)
@@ -1016,8 +1016,6 @@ int onig_builtin_fail P_((OnigCalloutArgs* args, void* user_data));
 ONIG_EXTERN
 int onig_builtin_mismatch P_((OnigCalloutArgs* args, void* user_data));
 ONIG_EXTERN
-int onig_builtin_abort P_((OnigCalloutArgs* args, void* user_data));
-ONIG_EXTERN
 int onig_builtin_error P_((OnigCalloutArgs* args, void* user_data));
 ONIG_EXTERN
 int onig_builtin_count P_((OnigCalloutArgs* args, void* user_data));
index 491805764d04e68c1bcef5dfbe456676e08182e9..541d2ea5e46e69bfe7f88ac2057c8e918934afb4 100644 (file)
@@ -5301,12 +5301,6 @@ onig_builtin_mismatch(OnigCalloutArgs* args ARG_UNUSED, void* user_data ARG_UNUS
   return ONIG_CALLOUT_MISMATCH;
 }
 
-extern int
-onig_builtin_abort(OnigCalloutArgs* args ARG_UNUSED, void* user_data ARG_UNUSED)
-{
-  return ONIG_CALLOUT_ABORT;
-}
-
 #if 0
 extern int
 onig_builtin_success(OnigCalloutArgs* args ARG_UNUSED, void* user_data ARG_UNUSED)
index e4cc139be4092f33ca4efdbb6c00a10ea7af5ab8..2b7e8295ecbd255ddf24a710be9d7779f850e2e2 100644 (file)
@@ -869,6 +869,15 @@ extern OnigCalloutFunc onig_get_callout_start_func(regex_t* reg, int callout_num
   if (id < 0) return id;\
 } while(0)
 
+#define BC_P_O(name, func, nts, ts, nopts, opts)  do {\
+  int len = onigenc_str_bytelen_null(enc, (UChar* )name);\
+  id = onig_set_callout_of_name(enc, ONIG_CALLOUT_TYPE_SINGLE,\
+                           (UChar* )(name), (UChar* )((name) + len),\
+                           ONIG_CALLOUT_IN_PROGRESS,\
+                           onig_builtin_ ## func, 0, (nts), (ts), (nopts), (opts));\
+  if (id < 0) return id;\
+} while(0)
+
 #define BC_B(name, func, na, ts)  do {\
   int len = onigenc_str_bytelen_null(enc, (UChar* )name);\
   id = onig_set_callout_of_name(enc, ONIG_CALLOUT_TYPE_SINGLE,\
index 1eeec2d2215e5d9bb239045840524459aff850c6..098ab54278c909ad425221254ddd13c8d882f12e 100644 (file)
@@ -47,10 +47,12 @@ init(void)
 
     name = "\000F\000A\000I\000L\000\000";            BC0_P(name, fail);
     name = "\000M\000I\000S\000M\000A\000T\000C\000H\000\000"; BC0_P(name, mismatch);
-    name = "\000A\000B\000O\000R\000T\000\000";       BC0_P(name, abort);
-    name = "\000E\000R\000R\000O\000R\000\000";       BC_P(name, error, 1, &t_long);
     name = "\000M\000A\000X\000\000";                 BC_B(name, max, 1, &t_long);
 
+    name = "\000E\000R\000R\000O\000R\000\000";
+    args[0] = ONIG_TYPE_LONG; opts[0].l = ONIG_ABORT;
+    BC_P_O(name, error, 1, args, 1, opts);
+
     name = "\000C\000O\000U\000N\000T\000\000";
     args[0] = ONIG_TYPE_CHAR; opts[0].c = '>';
     BC_B_O(name, count, 1, args, 1, opts);
index dd805e75c6ae88badfb51314db93c356537331a3..dc0d3f112ce061756eac5d752a58b86773ac46b0 100644 (file)
@@ -45,10 +45,12 @@ init(void)
 
     name = "F\000A\000I\000L\000\000\000";            BC0_P(name, fail);
     name = "M\000I\000S\000M\000A\000T\000C\000H\000\000\000"; BC0_P(name, mismatch);
-    name = "A\000B\000O\000R\000T\000\000\000";       BC0_P(name, abort);
-    name = "E\000R\000R\000O\000R\000\000\000";       BC_P(name, error, 1, &t_long);
     name = "M\000A\000X\000\000\000";                 BC_B(name, max,   1, &t_long);
 
+    name = "E\000R\000R\000O\000R\000\000\000";
+    args[0] = ONIG_TYPE_LONG; opts[0].l = ONIG_ABORT;
+    BC_P_O(name, error, 1, args, 1, opts);
+
     name = "C\000O\000U\000N\000T\000\000\000";
     args[0] = ONIG_TYPE_CHAR; opts[0].c = '>';
     BC_B_O(name, count, 1, args, 1, opts);