]> granicus.if.org Git - onig/commitdiff
remove USE_NAMED_GROUP
authorK.Kosako <kosako@sofnec.co.jp>
Fri, 4 Aug 2017 07:24:55 +0000 (16:24 +0900)
committerK.Kosako <kosako@sofnec.co.jp>
Fri, 4 Aug 2017 07:24:55 +0000 (16:24 +0900)
src/regcomp.c
src/regerror.c
src/regint.h
src/regparse.c
src/regparse.h

index 89b07547abd1e918e0cb2f532b4a96d2627a4674..72cc2a949031c0f259ecda7046375c3621665e6a 100644 (file)
@@ -2038,8 +2038,6 @@ compile_tree(Node* node, regex_t* reg, ScanEnv* env)
   return r;
 }
 
-#ifdef USE_NAMED_GROUP
-
 static int
 noname_disable_map(Node** plink, GroupNumRemap* map, int* counter)
 {
@@ -2283,7 +2281,6 @@ disable_noname_group_capture(Node** root, regex_t* reg, ScanEnv* env)
 
   return onig_renumber_name_table(reg, map);
 }
-#endif /* USE_NAMED_GROUP */
 
 #ifdef USE_CALL
 static int
@@ -4150,22 +4147,19 @@ setup_call_node_call(CallNode* cn, ScanEnv* env, int state)
   if (cn->by_number != 0) {
     int gnum = cn->group_num;
 
-#ifdef USE_NAMED_GROUP
     if (env->num_named > 0 &&
         IS_SYNTAX_BV(env->syntax, ONIG_SYN_CAPTURE_ONLY_NAMED_GROUP) &&
         !ONIG_IS_OPTION_ON(env->options, ONIG_OPTION_CAPTURE_GROUP)) {
       return ONIGERR_NUMBERED_BACKREF_OR_CALL_NOT_ALLOWED;
     }
-#endif
+
     if (gnum > env->num_mem) {
       onig_scan_env_set_error_string(env, ONIGERR_UNDEFINED_GROUP_REFERENCE,
                                      cn->name, cn->name_end);
       return ONIGERR_UNDEFINED_GROUP_REFERENCE;
     }
 
-#ifdef USE_NAMED_GROUP
   set_call_attr:
-#endif
     NODE_CALL_BODY(cn) = mem_env[cn->group_num].node;
     if (IS_NULL(NODE_CALL_BODY(cn))) {
       onig_scan_env_set_error_string(env, ONIGERR_UNDEFINED_NAME_REFERENCE,
@@ -4173,7 +4167,6 @@ setup_call_node_call(CallNode* cn, ScanEnv* env, int state)
       return ONIGERR_UNDEFINED_NAME_REFERENCE;
     }
   }
-#ifdef USE_NAMED_GROUP
   else {
     int *refs;
 
@@ -4193,7 +4186,6 @@ setup_call_node_call(CallNode* cn, ScanEnv* env, int state)
       goto set_call_attr;
     }
   }
-#endif
 
   return 0;
 }
@@ -6171,9 +6163,7 @@ onig_free_body(regex_t* reg)
     if (IS_NOT_NULL(reg->repeat_range))     xfree(reg->repeat_range);
     if (IS_NOT_NULL(REG_EXTP(reg)))         xfree(REG_EXTP(reg));
 
-#ifdef USE_NAMED_GROUP
     onig_names_free(reg);
-#endif
   }
 }
 
@@ -6247,7 +6237,6 @@ onig_compile(regex_t* reg, const UChar* pattern, const UChar* pattern_end,
   r = onig_parse_tree(&root, pattern, pattern_end, reg, &scan_env);
   if (r != 0) goto err;
 
-#ifdef USE_NAMED_GROUP
   /* mixed use named group and no-named group */
   if (scan_env.num_named > 0 &&
       IS_SYNTAX_BV(scan_env.syntax, ONIG_SYN_CAPTURE_ONLY_NAMED_GROUP) &&
@@ -6259,7 +6248,6 @@ onig_compile(regex_t* reg, const UChar* pattern, const UChar* pattern_end,
 
     if (r != 0) goto err;
   }
-#endif
 
   r = check_backrefs(root, &scan_env);
   if (r != 0) goto err;
@@ -6377,9 +6365,7 @@ onig_compile(regex_t* reg, const UChar* pattern, const UChar* pattern_end,
   onig_node_free(root);
 
 #ifdef ONIG_DEBUG_COMPILE
-#ifdef USE_NAMED_GROUP
   onig_print_names(stderr, reg);
-#endif
   print_compiled_byte_code_list(stderr, reg);
 #endif
 
index a430e60942621f88cf171f3c627d7a7e5a266806..c0d2346232ce2a6685059942339502414f47365e 100644 (file)
@@ -135,11 +135,7 @@ onig_error_code_to_format(int code)
   case ONIGERR_TOO_BIG_BACKREF_NUMBER:
     p = "too big backref number"; break;
   case ONIGERR_INVALID_BACKREF:
-#ifdef USE_NAMED_GROUP
     p = "invalid backref number/name"; break;
-#else
-    p = "invalid backref number"; break;
-#endif
   case ONIGERR_NUMBERED_BACKREF_OR_CALL_NOT_ALLOWED:
     p = "numbered backref/call is not allowed. (use name)"; break;
   case ONIGERR_TOO_MANY_CAPTURES:
@@ -155,11 +151,7 @@ onig_error_code_to_format(int code)
   case ONIGERR_INVALID_GROUP_NAME:
     p = "invalid group name <%n>"; break;
   case ONIGERR_INVALID_CHAR_IN_GROUP_NAME:
-#ifdef USE_NAMED_GROUP
     p = "invalid char in group name <%n>"; break;
-#else
-    p = "invalid char in group number <%n>"; break;
-#endif
   case ONIGERR_UNDEFINED_NAME_REFERENCE:
     p = "undefined name <%n> reference"; break;
   case ONIGERR_UNDEFINED_GROUP_REFERENCE:
index c6de8dc431678b2f3e15984f15e8df66726fa8ae..9e3eb4f7b0d852486350521fa31e481260e91df1 100644 (file)
@@ -56,7 +56,6 @@
 
 /* config */
 /* spec. config */
-#define USE_NAMED_GROUP
 #define USE_CALL
 #define USE_BACKREF_WITH_LEVEL        /* \k<name+n>, \k<name-n> */
 #define USE_INSISTENT_CHECK_CAPTURES_STATUS_IN_ENDLESS_REPEAT  /* /(?:()|())*\2/ */
index 25291c51b1e86df6fbe1c82e613f63f23374755b..db9ca71171e0f0fed7f6bac35ba6e56ce4faba68 100644 (file)
@@ -288,7 +288,6 @@ onig_strcpy(UChar* dest, const UChar* src, const UChar* end)
   }
 }
 
-#ifdef USE_NAMED_GROUP
 static UChar*
 strdup_with_null(OnigEncoding enc, UChar* s, UChar* end)
 {
@@ -307,7 +306,6 @@ strdup_with_null(OnigEncoding enc, UChar* s, UChar* end)
 
   return r;
 }
-#endif
 
 static int
 save_entry(ScanEnv* env, enum SaveType type, int* id)
@@ -483,8 +481,6 @@ onig_st_insert_strend(hash_table_type* table, const UChar* str_key,
 #endif /* USE_ST_LIBRARY */
 
 
-#ifdef USE_NAMED_GROUP
-
 #define INIT_NAME_BACKREFS_ALLOC_NUM   8
 
 typedef struct {
@@ -965,49 +961,17 @@ onig_name_to_backref_number(regex_t* reg, const UChar* name,
   }
 }
 
-#else /* USE_NAMED_GROUP */
-
-extern int
-onig_name_to_group_numbers(regex_t* reg, const UChar* name,
-                           const UChar* name_end, int** nums)
-{
-  return ONIG_NO_SUPPORT_CONFIG;
-}
-
-extern int
-onig_name_to_backref_number(regex_t* reg, const UChar* name,
-                            const UChar* name_end, OnigRegion* region)
-{
-  return ONIG_NO_SUPPORT_CONFIG;
-}
-
-extern int
-onig_foreach_name(regex_t* reg,
-  int (*func)(const UChar*, const UChar*,int,int*,regex_t*,void*), void* arg)
-{
-  return ONIG_NO_SUPPORT_CONFIG;
-}
-
-extern int
-onig_number_of_names(regex_t* reg)
-{
-  return 0;
-}
-#endif /* else USE_NAMED_GROUP */
-
 extern int
 onig_noname_group_capture_is_active(regex_t* reg)
 {
   if (ONIG_IS_OPTION_ON(reg->options, ONIG_OPTION_DONT_CAPTURE_GROUP))
     return 0;
 
-#ifdef USE_NAMED_GROUP
   if (onig_number_of_names(reg) > 0 &&
       IS_SYNTAX_BV(reg->syntax, ONIG_SYN_CAPTURE_ONLY_NAMED_GROUP) &&
       !ONIG_IS_OPTION_ON(reg->options, ONIG_OPTION_CAPTURE_GROUP)) {
     return 0;
   }
-#endif
 
   return 1;
 }
@@ -1032,10 +996,8 @@ scan_env_clear(ScanEnv* env)
 #endif
 
   env->num_mem    = 0;
-#ifdef USE_NAMED_GROUP
   env->num_named  = 0;
-#endif
-  env->mem_alloc       = 0;
+  env->mem_alloc  = 0;
   env->mem_env_dynamic = (MemEnv* )NULL;
 
   xmemset(env->mem_env_static, 0, sizeof(env->mem_env_static));
@@ -3110,7 +3072,6 @@ enum REF_NUM {
   IS_REL_NUM = 2
 };
 
-#ifdef USE_NAMED_GROUP
 #ifdef USE_BACKREF_WITH_LEVEL
 /*
    \k<name+n>, \k<name-n>
@@ -3384,111 +3345,6 @@ fetch_name(OnigCodePoint start_code, UChar** src, UChar* end,
     return r;
   }
 }
-#else
-static int
-fetch_name(OnigCodePoint start_code, UChar** src, UChar* end,
-           UChar** rname_end, ScanEnv* env, int* rback_num,
-           enum REF_NUM* num_type, int ref)
-{
-  int r, sign;
-  int digit_count;
-  OnigCodePoint end_code;
-  OnigCodePoint c = 0;
-  UChar *name_end;
-  OnigEncoding enc = env->enc;
-  UChar *pnum_head;
-  UChar *p = *src;
-  PFETCH_READY;
-
-  *rback_num = 0;
-
-  end_code = get_name_end_code_point(start_code);
-
-  digit_count = 0;
-  *rname_end = name_end = end;
-  r = 0;
-  pnum_head = *src;
-  *num_type = IS_ABS_NUM;
-  sign = 1;
-
-  if (PEND) {
-    return ONIGERR_EMPTY_GROUP_NAME;
-  }
-  else {
-    PFETCH(c);
-    if (c == end_code)
-      return ONIGERR_EMPTY_GROUP_NAME;
-
-    if (ONIGENC_IS_CODE_DIGIT(enc, c)) {
-      *num_type = IS_ABS_NUM;
-      digit_count++;
-    }
-    else if (c == '-') {
-      if (ref == 1) {
-        *num_type = IS_REL_NUM;
-        sign = -1;
-        pnum_head = p;
-      }
-      else {
-        r = ONIGERR_INVALID_GROUP_NAME;
-      }
-    }
-    else if (c == '+') {
-      if (ref == 1) {
-        *num_type = IS_REL_NUM;
-        sign = 1;
-        pnum_head = p;
-      }
-      else {
-        r = ONIGERR_INVALID_GROUP_NAME;
-      }
-    }
-    else {
-      r = ONIGERR_INVALID_CHAR_IN_GROUP_NAME;
-    }
-  }
-
-  while (! PEND) {
-    name_end = p;
-
-    PFETCH(c);
-    if (c == end_code || c == ')') break;
-
-    if (ONIGENC_IS_CODE_DIGIT(enc, c))
-      digit_count++;
-    else
-      r = ONIGERR_INVALID_CHAR_IN_GROUP_NAME;
-  }
-  if (r == 0 && c != end_code) {
-    r = ONIGERR_INVALID_GROUP_NAME;
-    name_end = end;
-  }
-  if (r == 0 && digit_count == 0) {
-    r = ONIGERR_INVALID_GROUP_NAME;
-  }
-
-  if (r == 0) {
-    *rback_num = onig_scan_unsigned_number(&pnum_head, name_end, enc);
-    if (*rback_num < 0) return ONIGERR_TOO_BIG_NUMBER;
-    else if (*rback_num == 0) {
-      if (*num_type == IS_REL_NUM) {
-        r = ONIGERR_INVALID_GROUP_NAME;
-        goto err;
-      }
-    }
-    *rback_num *= sign;
-
-    *rname_end = name_end;
-    *src = p;
-    return 0;
-  }
-  else {
-  err:
-    onig_scan_env_set_error_string(env, r, *src, name_end);
-    return r;
-  }
-}
-#endif /* USE_NAMED_GROUP */
 
 static void
 CC_ESC_WARN(ScanEnv* env, UChar *c)
@@ -4205,7 +4061,6 @@ fetch_token(OnigToken* tok, UChar** src, UChar* end, ScanEnv* env)
       }
       break;
 
-#ifdef USE_NAMED_GROUP
     case 'k':
       if (!PEND && IS_SYNTAX_OP2(syn, ONIG_SYN_OP2_ESC_K_NAMED_BACKREF)) {
         PFETCH(c);
@@ -4277,7 +4132,6 @@ fetch_token(OnigToken* tok, UChar** src, UChar* end, ScanEnv* env)
           PUNFETCH;
       }
       break;
-#endif
 
 #ifdef USE_CALL
     case 'g':
@@ -5292,9 +5146,7 @@ parse_enclosure(Node** np, OnigToken* tok, int term, UChar** src, UChar* end,
   Node *target;
   OnigOptionType option;
   OnigCodePoint c;
-#ifdef USE_NAMED_GROUP
   int list_capture;
-#endif
   OnigEncoding enc = env->enc;
 
   UChar* p = *src;
@@ -5331,7 +5183,6 @@ parse_enclosure(Node** np, OnigToken* tok, int term, UChar** src, UChar* end,
       *np = node_new_enclosure(ENCLOSURE_STOP_BACKTRACK);
       break;
 
-#ifdef USE_NAMED_GROUP
     case '\'':
       if (IS_SYNTAX_OP2(env->syntax, ONIG_SYN_OP2_QMARK_LT_NAMED_GROUP)) {
         goto named_group1;
@@ -5339,7 +5190,6 @@ parse_enclosure(Node** np, OnigToken* tok, int term, UChar** src, UChar* end,
       else
         return ONIGERR_UNDEFINED_GROUP_OPTION;
       break;
-#endif
 
     case '<':   /* look behind (?<=...), (?<!...) */
       if (PEND) return ONIGERR_END_PATTERN_WITH_UNMATCHED_PARENTHESIS;
@@ -5348,7 +5198,6 @@ parse_enclosure(Node** np, OnigToken* tok, int term, UChar** src, UChar* end,
         *np = onig_node_new_anchor(ANCHOR_LOOK_BEHIND);
       else if (c == '!')
         *np = onig_node_new_anchor(ANCHOR_LOOK_BEHIND_NOT);
-#ifdef USE_NAMED_GROUP
       else {
         if (IS_SYNTAX_OP2(env->syntax, ONIG_SYN_OP2_QMARK_LT_NAMED_GROUP)) {
           UChar *name;
@@ -5385,11 +5234,6 @@ parse_enclosure(Node** np, OnigToken* tok, int term, UChar** src, UChar* end,
           return ONIGERR_UNDEFINED_GROUP_OPTION;
         }
       }
-#else
-      else {
-        return ONIGERR_UNDEFINED_GROUP_OPTION;
-      }
-#endif
       break;
 
     case '~':
@@ -5647,7 +5491,6 @@ parse_enclosure(Node** np, OnigToken* tok, int term, UChar** src, UChar* end,
 
     case '@':
       if (IS_SYNTAX_OP2(env->syntax, ONIG_SYN_OP2_ATMARK_CAPTURE_HISTORY)) {
-#ifdef USE_NAMED_GROUP
         if (IS_SYNTAX_OP2(env->syntax, ONIG_SYN_OP2_QMARK_LT_NAMED_GROUP)) {
           PFETCH(c);
           if (c == '<' || c == '\'') {
@@ -5656,7 +5499,7 @@ parse_enclosure(Node** np, OnigToken* tok, int term, UChar** src, UChar* end,
           }
           PUNFETCH;
         }
-#endif
+
         *np = node_new_memory(0);
         CHECK_NULL_RETURN_MEMERR(*np);
         num = scan_env_add_mem_entry(env);
@@ -6492,9 +6335,7 @@ onig_parse_tree(Node** root, const UChar* pattern, const UChar* end,
   int r;
   UChar* p;
 
-#ifdef USE_NAMED_GROUP
   names_clear(reg);
-#endif
 
   scan_env_clear(env);
   env->options        = reg->options;
index b7260ead2928ca0de46da2052d67908a97daf15f..60f6f83d30a8594ca8dbbca5538582d41b5186d2 100644 (file)
@@ -392,9 +392,7 @@ typedef struct {
   int              has_call_zero;
 #endif
   int              num_mem;
-#ifdef USE_NAMED_GROUP
   int              num_named;
-#endif
   int              mem_alloc;
   MemEnv            mem_env_static[SCANENV_MEMENV_SIZE];
   MemEnv*           mem_env_dynamic;
@@ -417,13 +415,11 @@ typedef struct {
 #define IS_SYNTAX_OP2(syn, opm)   (((syn)->op2 & (opm)) != 0)
 #define IS_SYNTAX_BV(syn, bvm)    (((syn)->behavior & (bvm)) != 0)
 
-#ifdef USE_NAMED_GROUP
 typedef struct {
   int new_val;
 } GroupNumRemap;
 
 extern int    onig_renumber_name_table P_((regex_t* reg, GroupNumRemap* map));
-#endif
 
 extern int    onig_strncmp P_((const UChar* s1, const UChar* s2, int n));
 extern void   onig_strcpy P_((UChar* dest, const UChar* src, const UChar* end));
@@ -448,9 +444,7 @@ extern int    onig_is_code_in_cc P_((OnigEncoding enc, OnigCodePoint code, CClas
 extern OnigLen onig_get_tiny_min_len(Node* node, unsigned int inhibit_node_types, int* invalid_node);
 
 #ifdef ONIG_DEBUG
-#ifdef USE_NAMED_GROUP
 extern int onig_print_names(FILE*, regex_t*);
 #endif
-#endif
 
 #endif /* REGPARSE_H */