Ruby 1.9.3p327(2012-11-10revision37606)
|
#include "regparse.h"
Go to the source code of this file.
#define ALLOWED_ANCHOR_IN_LB ( ANCHOR_LOOK_BEHIND | ANCHOR_BEGIN_LINE | ANCHOR_END_LINE | ANCHOR_BEGIN_BUF | ANCHOR_BEGIN_POSITION ) |
Referenced by setup_tree().
#define ALLOWED_ANCHOR_IN_LB_NOT ( ANCHOR_LOOK_BEHIND | ANCHOR_LOOK_BEHIND_NOT | ANCHOR_BEGIN_LINE | ANCHOR_END_LINE | ANCHOR_BEGIN_BUF | ANCHOR_BEGIN_POSITION ) |
Referenced by setup_tree().
#define ALLOWED_ENCLOSE_IN_LB ( ENCLOSE_MEMORY ) |
Referenced by setup_tree().
#define ALLOWED_ENCLOSE_IN_LB_NOT 0 |
Referenced by setup_tree().
#define ALLOWED_TYPE_IN_LB |
( BIT_NT_LIST | BIT_NT_ALT | BIT_NT_STR | BIT_NT_CCLASS | BIT_NT_CTYPE | \ BIT_NT_CANY | BIT_NT_ANCHOR | BIT_NT_ENCLOSE | BIT_NT_QTFR | BIT_NT_CALL )
Referenced by setup_tree().
#define COMP_EM_BASE 20 |
Referenced by comp_opt_exact_or_map_info().
#define COMPILE_INIT_SIZE 20 |
Referenced by onig_compile().
#define EXPAND_STRING_MAX_LENGTH 100 |
Referenced by setup_tree().
#define FOUND_CALLED_NODE 1 |
Referenced by subexp_recursive_check_trav().
#define GET_CHAR_LEN_TOP_ALT_VARLEN -2 |
Definition at line 2297 of file regcomp.c.
Referenced by get_char_length_tree1(), and setup_look_behind().
#define GET_CHAR_LEN_VARLEN -1 |
Definition at line 2296 of file regcomp.c.
Referenced by get_char_length_tree1(), and setup_look_behind().
#define IN_ALT (1<<0) |
Definition at line 3677 of file regcomp.c.
Referenced by setup_tree().
#define IN_NOT (1<<1) |
Definition at line 3678 of file regcomp.c.
Referenced by setup_tree().
#define IN_REPEAT (1<<2) |
Definition at line 3679 of file regcomp.c.
Referenced by setup_tree().
#define IN_VAR_REPEAT (1<<3) |
Definition at line 3680 of file regcomp.c.
Referenced by setup_tree().
#define IS_NEED_STR_LEN_OP_EXACT | ( | op | ) |
((op) == OP_EXACTN || (op) == OP_EXACTMB2N ||\ (op) == OP_EXACTMB3N || (op) == OP_EXACTMBN || (op) == OP_EXACTN_IC)
Definition at line 315 of file regcomp.c.
Referenced by add_compile_string(), and add_compile_string_length().
#define MAX_NODE_OPT_INFO_REF_COUNT 5 |
Definition at line 4574 of file regcomp.c.
Referenced by optimize_node_left().
#define OPT_EXACT_MAXLEN 24 |
Definition at line 3966 of file regcomp.c.
Referenced by concat_opt_exact_info(), concat_opt_exact_info_str(), and is_full_opt_exact_info().
#define QUANTIFIER_EXPAND_LIMIT_SIZE 50 |
Definition at line 731 of file regcomp.c.
Referenced by compile_length_quantifier_node(), and compile_quantifier_node().
#define RECURSION_EXIST 1 |
Definition at line 2744 of file regcomp.c.
Referenced by subexp_inf_recursive_check().
#define RECURSION_INFINITE 2 |
Definition at line 2745 of file regcomp.c.
Referenced by subexp_inf_recursive_check().
#define REGEX_CHAIN_HEAD | ( | reg | ) |
do {\ while (IS_NOT_NULL((reg)->chain)) {\ (reg) = (reg)->chain;\ }\ } while (0)
Definition at line 5274 of file regcomp.c.
Referenced by onig_chain_link_add().
#define REGEX_TRANSFER | ( | to, | |
from | |||
) |
do {\ (to)->state = ONIG_STATE_MODIFY;\ onig_free_body(to);\ xmemcpy(to, from, sizeof(regex_t));\ xfree(from);\ } while (0)
Definition at line 5259 of file regcomp.c.
Referenced by onig_chain_reduce(), and onig_transfer().
#define REPEAT_RANGE_ALLOC 4 |
Referenced by entry_repeat_range().
#define THRESHOLD_CASE_FOLD_ALT_FOR_EXPANSION 8 |
Referenced by expand_case_fold_string().
static int add_abs_addr | ( | regex_t * | reg, |
int | addr | ||
) | [static] |
Definition at line 233 of file regcomp.c.
References BBUF_ADD, and SIZE_ABSADDR.
Referenced by compile_call(), and compile_enclose_node().
Definition at line 294 of file regcomp.c.
References BBUF_ADD, and SIZE_BITSET.
Referenced by compile_cclass_node().
static int add_bytes | ( | regex_t * | reg, |
UChar * | bytes, | ||
OnigDistance | len | ||
) | [static] |
Definition at line 287 of file regcomp.c.
References BBUF_ADD.
Referenced by add_compile_string(), add_multi_byte_cclass(), and compile_quantifier_node().
static int add_char_amb_opt_map_info | ( | OptMapInfo * | map, |
UChar * | p, | ||
UChar * | end, | ||
OnigEncoding | enc, | ||
OnigCaseFoldType | case_fold_flag | ||
) | [static] |
Definition at line 4397 of file regcomp.c.
References add_char_opt_map_info(), buf, DISABLE_CASE_FOLD_MULTI_CHAR, ONIGENC_CODE_TO_MBC, ONIGENC_CODE_TO_MBC_MAXLEN, ONIGENC_GET_CASE_FOLD_CODES_BY_STR, ONIGENC_GET_CASE_FOLD_CODES_MAX_NUM, and UChar.
Referenced by optimize_node_left().
static void add_char_opt_map_info | ( | OptMapInfo * | map, |
UChar | c, | ||
OnigEncoding | enc | ||
) | [static] |
Definition at line 4388 of file regcomp.c.
References OptMapInfo::map, map_position_value(), and OptMapInfo::value.
Referenced by add_char_amb_opt_map_info(), and optimize_node_left().
static int add_compile_string | ( | UChar * | s, |
int | mb_len, | ||
OnigDistance | str_len, | ||
regex_t * | reg, | ||
int | ignore_case | ||
) | [static] |
Definition at line 441 of file regcomp.c.
References add_bytes(), add_length(), add_opcode(), IS_NEED_STR_LEN_OP_EXACT, OP_EXACTMBN, OP_EXACTN_IC, and select_str_opcode().
Referenced by compile_string_node(), and compile_string_raw_node().
static int add_compile_string_length | ( | UChar *s | ARG_UNUSED, |
int | mb_len, | ||
OnigDistance | str_len, | ||
regex_t *reg | ARG_UNUSED, | ||
int | ignore_case | ||
) | [static] |
Definition at line 424 of file regcomp.c.
References IS_NEED_STR_LEN_OP_EXACT, len, OP_EXACTMBN, select_str_opcode(), SIZE_LENGTH, and SIZE_OPCODE.
Referenced by compile_length_string_node(), and compile_length_string_raw_node().
static int add_length | ( | regex_t * | reg, |
OnigDistance | len | ||
) | [static] |
Definition at line 242 of file regcomp.c.
References BBUF_ADD, and SIZE_LENGTH.
Referenced by add_compile_string(), add_multi_byte_cclass(), compile_anchor_node(), and compile_tree().
static int add_mem_num | ( | regex_t * | reg, |
int | num | ||
) | [static] |
Definition at line 251 of file regcomp.c.
References BBUF_ADD, and SIZE_MEMNUM.
Referenced by compile_enclose_node(), compile_range_repeat_node(), compile_tree(), and compile_tree_empty_check().
Definition at line 4114 of file regcomp.c.
References distance_add(), MinMaxLen::max, and MinMaxLen::min.
Referenced by concat_left_node_opt_info(), and optimize_node_left().
Definition at line 559 of file regcomp.c.
References add_bytes(), add_length(), BBUF_GET_ADD_ADDRESS, GET_ALIGNMENT_PAD_SIZE, _BBuf::p, PadBuf, SIZE_LENGTH, UChar, _BBuf::used, and WORD_ALIGNMENT_SIZE.
Referenced by compile_cclass_node().
static int add_opcode | ( | regex_t * | reg, |
int | opcode | ||
) | [static] |
Definition at line 206 of file regcomp.c.
References BBUF_ADD1.
Referenced by add_compile_string(), add_opcode_option(), add_opcode_rel_addr(), compile_anchor_node(), compile_call(), compile_cclass_node(), compile_enclose_node(), compile_option_node(), compile_quantifier_node(), compile_range_repeat_node(), compile_tree(), compile_tree_empty_check(), and onig_compile().
static int add_opcode_option | ( | regex_t * | reg, |
int | opcode, | ||
OnigOptionType | option | ||
) | [static] |
Definition at line 301 of file regcomp.c.
References add_opcode(), and add_option().
Referenced by compile_option_node().
static int add_opcode_rel_addr | ( | regex_t * | reg, |
int | opcode, | ||
int | addr | ||
) | [static] |
Definition at line 276 of file regcomp.c.
References add_opcode(), and add_rel_addr().
Referenced by compile_anchor_node(), compile_enclose_node(), compile_quantifier_node(), and compile_tree().
static void add_opt_anc_info | ( | OptAncInfo * | to, |
int | anc | ||
) | [static] |
Definition at line 4192 of file regcomp.c.
References is_left_anchor(), OptAncInfo::left_anchor, and OptAncInfo::right_anchor.
Referenced by optimize_node_left().
static int add_option | ( | regex_t * | reg, |
OnigOptionType | option | ||
) | [static] |
Definition at line 269 of file regcomp.c.
References BBUF_ADD, and SIZE_OPTION.
Referenced by add_opcode_option(), and compile_tree().
static int add_pointer | ( | regex_t * | reg, |
void * | addr | ||
) | [static] |
Definition at line 260 of file regcomp.c.
References BBUF_ADD, and SIZE_POINTER.
Referenced by compile_cclass_node().
static int add_rel_addr | ( | regex_t * | reg, |
int | addr | ||
) | [static] |
Definition at line 224 of file regcomp.c.
References BBUF_ADD, and SIZE_RELADDR.
Referenced by add_opcode_rel_addr(), and compile_range_repeat_node().
Definition at line 4130 of file regcomp.c.
References MinMaxLen::max, and MinMaxLen::min.
Referenced by alt_merge_node_opt_info(), and alt_merge_opt_map_info().
static void alt_merge_node_opt_info | ( | NodeOptInfo * | to, |
NodeOptInfo * | add, | ||
OptEnv * | env | ||
) | [static] |
Definition at line 4562 of file regcomp.c.
References alt_merge_mml(), alt_merge_opt_anc_info(), alt_merge_opt_exact_info(), alt_merge_opt_map_info(), NodeOptInfo::anc, OptEnv::enc, NodeOptInfo::exb, NodeOptInfo::exm, NodeOptInfo::expr, NodeOptInfo::len, and NodeOptInfo::map.
Referenced by optimize_node_left().
static void alt_merge_opt_anc_info | ( | OptAncInfo * | to, |
OptAncInfo * | add | ||
) | [static] |
Definition at line 4210 of file regcomp.c.
References OptAncInfo::left_anchor, and OptAncInfo::right_anchor.
Referenced by alt_merge_node_opt_info(), alt_merge_opt_exact_info(), and alt_merge_opt_map_info().
static void alt_merge_opt_exact_info | ( | OptExactInfo * | to, |
OptExactInfo * | add, | ||
OptEnv * | env | ||
) | [static] |
Definition at line 4287 of file regcomp.c.
References alt_merge_opt_anc_info(), OptExactInfo::anc, clear_opt_exact_info(), OptEnv::enc, enclen, OptExactInfo::ignore_case, is_equal_mml(), OptExactInfo::len, len, OptExactInfo::mmd, OptExactInfo::reach_end, OptAncInfo::right_anchor, and OptExactInfo::s.
Referenced by alt_merge_node_opt_info().
static void alt_merge_opt_map_info | ( | OnigEncoding | enc, |
OptMapInfo * | to, | ||
OptMapInfo * | add | ||
) | [static] |
Definition at line 4451 of file regcomp.c.
References alt_merge_mml(), alt_merge_opt_anc_info(), OptMapInfo::anc, clear_opt_map_info(), OptMapInfo::map, map_position_value(), MinMaxLen::max, MinMaxLen::min, OptMapInfo::mmd, ONIG_CHAR_TABLE_SIZE, and OptMapInfo::value.
Referenced by alt_merge_node_opt_info().
static int bitset_is_empty | ( | BitSetRef | bs | ) | [static] |
Definition at line 114 of file regcomp.c.
References BITSET_SIZE.
Referenced by compile_cclass_node(), and compile_length_cclass_node().
static int check_type_tree | ( | Node * | node, |
int | type_mask, | ||
int | enclose_mask, | ||
int | anchor_mask | ||
) | [static] |
Definition at line 2694 of file regcomp.c.
References IS_NOT_NULL, NANCHOR, NCAR, NCDR, NENCLOSE, NQTFR, NT_ALT, NT_ANCHOR, NT_ENCLOSE, NT_LIST, NT_QTFR, NTYPE, NTYPE2BIT, EncloseNode::target, EncloseNode::type, and type.
Referenced by setup_tree().
static void clear_mml | ( | MinMaxLen * | mml | ) | [static] |
Definition at line 4101 of file regcomp.c.
References MinMaxLen::max, and MinMaxLen::min.
Referenced by clear_node_opt_info(), clear_opt_exact_info(), and set_optimize_info_from_tree().
static void clear_node_opt_info | ( | NodeOptInfo * | opt | ) | [static] |
Definition at line 4486 of file regcomp.c.
References NodeOptInfo::anc, clear_mml(), clear_opt_anc_info(), clear_opt_exact_info(), clear_opt_map_info(), NodeOptInfo::exb, NodeOptInfo::exm, NodeOptInfo::expr, NodeOptInfo::len, and NodeOptInfo::map.
Referenced by optimize_node_left().
static void clear_opt_anc_info | ( | OptAncInfo * | anc | ) | [static] |
Definition at line 4143 of file regcomp.c.
References OptAncInfo::left_anchor, and OptAncInfo::right_anchor.
Referenced by clear_node_opt_info(), clear_opt_exact_info(), and concat_opt_anc_info().
static void clear_opt_exact_info | ( | OptExactInfo * | ex | ) | [static] |
Definition at line 4223 of file regcomp.c.
References OptExactInfo::anc, clear_mml(), clear_opt_anc_info(), OptExactInfo::ignore_case, OptExactInfo::len, OptExactInfo::mmd, OptExactInfo::reach_end, and OptExactInfo::s.
Referenced by alt_merge_opt_exact_info(), clear_node_opt_info(), and concat_left_node_opt_info().
static void clear_opt_map_info | ( | OptMapInfo * | map | ) | [static] |
Definition at line 4354 of file regcomp.c.
References xmemcpy.
Referenced by alt_merge_opt_map_info(), and clear_node_opt_info().
static void clear_optimize_info | ( | regex_t * | reg | ) | [static] |
Definition at line 5051 of file regcomp.c.
References re_pattern_buffer::anchor, re_pattern_buffer::anchor_dmax, re_pattern_buffer::anchor_dmin, re_pattern_buffer::exact, re_pattern_buffer::exact_end, IS_NOT_NULL, NULL, ONIG_OPTIMIZE_NONE, re_pattern_buffer::optimize, re_pattern_buffer::sub_anchor, re_pattern_buffer::threshold_len, UChar, and xfree().
Referenced by onig_compile().
Definition at line 4070 of file regcomp.c.
References distance_value(), and MinMaxLen::min.
Referenced by comp_opt_exact_or_map_info(), select_opt_exact_info(), and select_opt_map_info().
static int comp_opt_exact_or_map_info | ( | OptExactInfo * | e, |
OptMapInfo * | m | ||
) | [static] |
Definition at line 4438 of file regcomp.c.
References comp_distance_value(), COMP_EM_BASE, OptExactInfo::ignore_case, OptExactInfo::len, OptMapInfo::mmd, OptExactInfo::mmd, and OptMapInfo::value.
Referenced by set_optimize_info_from_tree().
static int compile_anchor_node | ( | AnchorNode * | node, |
regex_t * | reg | ||
) | [static] |
Definition at line 1410 of file regcomp.c.
References add_length(), add_opcode(), add_opcode_rel_addr(), ANCHOR_BEGIN_BUF, ANCHOR_BEGIN_LINE, ANCHOR_BEGIN_POSITION, ANCHOR_END_BUF, ANCHOR_END_LINE, ANCHOR_LOOK_BEHIND, ANCHOR_LOOK_BEHIND_NOT, ANCHOR_NOT_WORD_BOUND, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, ANCHOR_SEMI_END_BUF, ANCHOR_WORD_BEGIN, ANCHOR_WORD_BOUND, ANCHOR_WORD_END, AnchorNode::char_len, compile_length_tree(), compile_tree(), get_char_length_tree(), len, ONIGERR_INVALID_LOOK_BEHIND_PATTERN, ONIGERR_TYPE_BUG, OP_BEGIN_BUF, OP_BEGIN_LINE, OP_BEGIN_POSITION, OP_END_BUF, OP_END_LINE, OP_FAIL_LOOK_BEHIND_NOT, OP_FAIL_POS, OP_LOOK_BEHIND, OP_NOT_WORD_BOUND, OP_POP_POS, OP_PUSH_LOOK_BEHIND_NOT, OP_PUSH_POS, OP_PUSH_POS_NOT, OP_SEMI_END_BUF, OP_WORD_BEGIN, OP_WORD_BOUND, OP_WORD_END, SIZE_OP_FAIL_LOOK_BEHIND_NOT, SIZE_OP_FAIL_POS, AnchorNode::target, and AnchorNode::type.
Referenced by compile_tree().
Definition at line 397 of file regcomp.c.
References add_abs_addr(), add_opcode(), BBUF_GET_OFFSET_POS, OP_CALL, CallNode::target, CallNode::unset_addr_list, and unset_addr_list_add().
Referenced by compile_tree().
static int compile_cclass_node | ( | CClassNode * | cc, |
regex_t * | reg | ||
) | [static] |
Definition at line 612 of file regcomp.c.
References add_bitset(), add_multi_byte_cclass(), add_opcode(), add_pointer(), bitset_is_empty(), CClassNode::bs, re_pattern_buffer::enc, IS_NCCLASS_NOT, IS_NCCLASS_SHARE, IS_NULL, CClassNode::mbuf, ONIGENC_MBC_MINLEN, OP_CCLASS, OP_CCLASS_MB, OP_CCLASS_MB_NOT, OP_CCLASS_MIX, OP_CCLASS_MIX_NOT, OP_CCLASS_NODE, and OP_CCLASS_NOT.
Referenced by compile_tree().
static int compile_enclose_node | ( | EncloseNode * | node, |
regex_t * | reg | ||
) | [static] |
Definition at line 1276 of file regcomp.c.
References add_abs_addr(), add_mem_num(), add_opcode(), add_opcode_rel_addr(), BBUF_GET_OFFSET_POS, BIT_STATUS_AT, re_pattern_buffer::bt_mem_end, re_pattern_buffer::bt_mem_start, EncloseNode::call_addr, compile_length_tree(), compile_option_node(), compile_tree(), compile_tree_n_times(), ENCLOSE_MEMORY, ENCLOSE_OPTION, ENCLOSE_STOP_BACKTRACK, IS_ENCLOSE_CALLED, IS_ENCLOSE_RECURSION, IS_ENCLOSE_STOP_BT_SIMPLE_REPEAT, len, QtfrNode::lower, NQTFR, NST_ADDR_FIXED, ONIGERR_TYPE_BUG, OP_CALL, OP_JUMP, OP_MEMORY_END, OP_MEMORY_END_PUSH, OP_MEMORY_END_PUSH_REC, OP_MEMORY_END_REC, OP_MEMORY_START, OP_MEMORY_START_PUSH, OP_POP, OP_POP_STOP_BT, OP_PUSH, OP_PUSH_STOP_BT, OP_RETURN, EncloseNode::regnum, SIZE_ABSADDR, SIZE_OP_JUMP, SIZE_OP_MEMORY_END, SIZE_OP_MEMORY_END_PUSH, SIZE_OP_MEMORY_END_PUSH_REC, SIZE_OP_MEMORY_END_REC, SIZE_OP_MEMORY_START_PUSH, SIZE_OP_POP, SIZE_OP_PUSH, SIZE_OP_RETURN, EncloseNode::state, QtfrNode::target, EncloseNode::target, and EncloseNode::type.
Referenced by compile_tree().
static int compile_length_anchor_node | ( | AnchorNode * | node, |
regex_t * | reg | ||
) | [static] |
Definition at line 1377 of file regcomp.c.
References ANCHOR_LOOK_BEHIND, ANCHOR_LOOK_BEHIND_NOT, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, compile_length_tree(), len, SIZE_OP_FAIL_LOOK_BEHIND_NOT, SIZE_OP_FAIL_POS, SIZE_OP_LOOK_BEHIND, SIZE_OP_POP_POS, SIZE_OP_PUSH_LOOK_BEHIND_NOT, SIZE_OP_PUSH_POS, SIZE_OP_PUSH_POS_NOT, SIZE_OPCODE, AnchorNode::target, and AnchorNode::type.
Referenced by compile_length_tree().
static int compile_length_cclass_node | ( | CClassNode * | cc, |
regex_t * | reg | ||
) | [static] |
Definition at line 582 of file regcomp.c.
References bitset_is_empty(), CClassNode::bs, re_pattern_buffer::enc, IS_NCCLASS_SHARE, IS_NULL, len, CClassNode::mbuf, ONIGENC_MBC_MINLEN, SIZE_BITSET, SIZE_LENGTH, SIZE_OPCODE, SIZE_POINTER, _BBuf::used, and WORD_ALIGNMENT_SIZE.
Referenced by compile_length_tree().
static int compile_length_enclose_node | ( | EncloseNode * | node, |
regex_t * | reg | ||
) | [static] |
Definition at line 1210 of file regcomp.c.
References BIT_STATUS_AT, re_pattern_buffer::bt_mem_end, re_pattern_buffer::bt_mem_start, compile_length_option_node(), compile_length_tree(), ENCLOSE_MEMORY, ENCLOSE_OPTION, ENCLOSE_STOP_BACKTRACK, IS_ENCLOSE_CALLED, IS_ENCLOSE_RECURSION, IS_ENCLOSE_STOP_BT_SIMPLE_REPEAT, len, QtfrNode::lower, NQTFR, ONIGERR_TYPE_BUG, EncloseNode::regnum, SIZE_OP_CALL, SIZE_OP_JUMP, SIZE_OP_MEMORY_END, SIZE_OP_MEMORY_END_PUSH, SIZE_OP_MEMORY_END_PUSH_REC, SIZE_OP_MEMORY_END_REC, SIZE_OP_MEMORY_START, SIZE_OP_MEMORY_START_PUSH, SIZE_OP_POP, SIZE_OP_POP_STOP_BT, SIZE_OP_PUSH, SIZE_OP_PUSH_STOP_BT, SIZE_OP_RETURN, QtfrNode::target, EncloseNode::target, and EncloseNode::type.
Referenced by compile_length_tree().
static int compile_length_option_node | ( | EncloseNode * | node, |
regex_t * | reg | ||
) | [static] |
Definition at line 1164 of file regcomp.c.
References compile_length_tree(), IS_DYNAMIC_OPTION, EncloseNode::option, re_pattern_buffer::options, prev, SIZE_OP_FAIL, SIZE_OP_SET_OPTION, SIZE_OP_SET_OPTION_PUSH, and EncloseNode::target.
Referenced by compile_length_enclose_node().
Definition at line 971 of file regcomp.c.
References compile_length_tree(), QtfrNode::greedy, QtfrNode::head_exact, IS_NOT_NULL, QtfrNode::is_refered, IS_REPEAT_INFINITE, len, QtfrNode::lower, QtfrNode::next_head_exact, NT_CANY, NTYPE, QUANTIFIER_EXPAND_LIMIT_SIZE, SIZE_MEMNUM, SIZE_OP_ANYCHAR_STAR, SIZE_OP_ANYCHAR_STAR_PEEK_NEXT, SIZE_OP_JUMP, SIZE_OP_NULL_CHECK_END, SIZE_OP_NULL_CHECK_START, SIZE_OP_PUSH, SIZE_OP_PUSH_IF_PEEK_NEXT, SIZE_OP_PUSH_OR_JUMP_EXACT1, SIZE_OP_REPEAT_INC, SIZE_OPCODE, SIZE_RELADDR, QtfrNode::target, QtfrNode::target_empty_info, and QtfrNode::upper.
Referenced by compile_length_tree().
Definition at line 463 of file regcomp.c.
References add_compile_string_length(), re_pattern_buffer::enc, enclen, StrNode::end, len, NSTR, NSTRING_IS_AMBIG, prev, StrNode::s, and UChar.
Referenced by compile_length_tree().
Definition at line 502 of file regcomp.c.
References add_compile_string_length(), StrNode::end, and StrNode::s.
Referenced by compile_length_tree().
Definition at line 1494 of file regcomp.c.
References BRefNode::back_num, BRefNode::back_static, compile_length_anchor_node(), compile_length_cclass_node(), compile_length_enclose_node(), compile_length_quantifier_node(), compile_length_string_node(), compile_length_string_raw_node(), IS_BACKREF_NEST_LEVEL, IS_IGNORECASE, IS_NOT_NULL, len, NANCHOR, NBREF, NCAR, NCCLASS, NCDR, NENCLOSE, NQTFR, NSTR, NSTRING_IS_RAW, NT_ALT, NT_ANCHOR, NT_BREF, NT_CALL, NT_CANY, NT_CCLASS, NT_CTYPE, NT_ENCLOSE, NT_LIST, NT_QTFR, NT_STR, NTYPE, ONIGERR_TYPE_BUG, re_pattern_buffer::options, SIZE_LENGTH, SIZE_MEMNUM, SIZE_OP_CALL, SIZE_OP_JUMP, SIZE_OP_PUSH, SIZE_OPCODE, SIZE_OPTION, and type.
Referenced by compile_anchor_node(), compile_enclose_node(), compile_length_anchor_node(), compile_length_enclose_node(), compile_length_option_node(), compile_length_quantifier_node(), compile_quantifier_node(), and compile_tree().
static int compile_option_node | ( | EncloseNode * | node, |
regex_t * | reg | ||
) | [static] |
Definition at line 1184 of file regcomp.c.
References add_opcode(), add_opcode_option(), compile_tree(), IS_DYNAMIC_OPTION, OP_FAIL, OP_SET_OPTION, OP_SET_OPTION_PUSH, EncloseNode::option, re_pattern_buffer::options, prev, and EncloseNode::target.
Referenced by compile_enclose_node().
Definition at line 1036 of file regcomp.c.
References add_bytes(), add_opcode(), add_opcode_rel_addr(), compile_length_tree(), compile_range_repeat_node(), compile_tree(), compile_tree_empty_check(), compile_tree_n_times(), QtfrNode::greedy, QtfrNode::head_exact, is_anychar_star_quantifier(), IS_MULTILINE, IS_NOT_NULL, QtfrNode::is_refered, IS_REPEAT_INFINITE, QtfrNode::lower, QtfrNode::next_head_exact, NSTR, OP_ANYCHAR_ML_STAR, OP_ANYCHAR_ML_STAR_PEEK_NEXT, OP_ANYCHAR_STAR, OP_ANYCHAR_STAR_PEEK_NEXT, OP_JUMP, OP_PUSH, OP_PUSH_IF_PEEK_NEXT, OP_PUSH_OR_JUMP_EXACT1, re_pattern_buffer::options, QUANTIFIER_EXPAND_LIMIT_SIZE, SIZE_OP_JUMP, SIZE_OP_NULL_CHECK_END, SIZE_OP_NULL_CHECK_START, SIZE_OP_PUSH, SIZE_OP_PUSH_IF_PEEK_NEXT, SIZE_OP_PUSH_OR_JUMP_EXACT1, QtfrNode::target, QtfrNode::target_empty_info, and QtfrNode::upper.
Referenced by compile_tree().
static int compile_range_repeat_node | ( | QtfrNode * | qn, |
int | target_len, | ||
int | empty_info, | ||
regex_t * | reg | ||
) | [static] |
Definition at line 686 of file regcomp.c.
References add_mem_num(), add_opcode(), add_rel_addr(), compile_tree_empty_check(), entry_repeat_range(), QtfrNode::greedy, IS_QUANTIFIER_IN_REPEAT, QtfrNode::lower, re_pattern_buffer::num_call, re_pattern_buffer::num_repeat, OP_REPEAT, OP_REPEAT_INC, OP_REPEAT_INC_NG, OP_REPEAT_INC_NG_SG, OP_REPEAT_INC_SG, OP_REPEAT_NG, SIZE_OP_REPEAT_INC, QtfrNode::target, QtfrNode::upper, and USE_SUBEXP_CALL.
Referenced by compile_quantifier_node().
Definition at line 511 of file regcomp.c.
References add_compile_string(), re_pattern_buffer::enc, enclen, StrNode::end, re_registers::end, len, NSTR, NSTRING_IS_AMBIG, prev, StrNode::s, and UChar.
Referenced by compile_tree().
Definition at line 550 of file regcomp.c.
References add_compile_string(), StrNode::end, and StrNode::s.
Referenced by compile_tree().
Definition at line 1587 of file regcomp.c.
References add_length(), add_mem_num(), add_opcode(), add_opcode_rel_addr(), add_option(), BRefNode::back_num, BRefNode::back_static, BACKREFS_P, compile_anchor_node(), compile_call(), compile_cclass_node(), compile_enclose_node(), compile_length_tree(), compile_quantifier_node(), compile_string_node(), compile_string_raw_node(), IS_BACKREF_NEST_LEVEL, IS_IGNORECASE, IS_MULTILINE, IS_NOT_NULL, len, NANCHOR, NBREF, NCALL, NCAR, NCCLASS, NCDR, NCTYPE, NENCLOSE, BRefNode::nest_level, node, NQTFR, NSTR, NSTRING_IS_RAW, NT_ALT, NT_ANCHOR, NT_BREF, NT_CALL, NT_CANY, NT_CCLASS, NT_CTYPE, NT_ENCLOSE, NT_LIST, NT_QTFR, NT_STR, NTYPE, NULL, ONIG_OPTION_IGNORECASE, ONIGENC_CTYPE_WORD, ONIGERR_TYPE_BUG, OP_ANYCHAR, OP_ANYCHAR_ML, OP_BACKREF1, OP_BACKREF2, OP_BACKREF_MULTI, OP_BACKREF_MULTI_IC, OP_BACKREF_WITH_LEVEL, OP_BACKREFN, OP_BACKREFN_IC, OP_JUMP, OP_NOT_WORD, OP_PUSH, OP_WORD, re_pattern_buffer::options, SIZE_OP_JUMP, SIZE_OP_PUSH, type, and re_pattern_buffer::used.
Referenced by compile_anchor_node(), compile_enclose_node(), compile_option_node(), compile_quantifier_node(), compile_tree_empty_check(), compile_tree_n_times(), and onig_compile().
Definition at line 365 of file regcomp.c.
References add_mem_num(), add_opcode(), compile_tree(), NQ_TARGET_IS_EMPTY, NQ_TARGET_IS_EMPTY_MEM, NQ_TARGET_IS_EMPTY_REC, re_pattern_buffer::num_null_check, OP_NULL_CHECK_END, OP_NULL_CHECK_END_MEMST, OP_NULL_CHECK_END_MEMST_PUSH, and OP_NULL_CHECK_START.
Referenced by compile_quantifier_node(), and compile_range_repeat_node().
Definition at line 412 of file regcomp.c.
References compile_tree().
Referenced by compile_enclose_node(), and compile_quantifier_node().
static void concat_left_node_opt_info | ( | OnigEncoding | enc, |
NodeOptInfo * | to, | ||
NodeOptInfo * | add | ||
) | [static] |
Definition at line 4503 of file regcomp.c.
References add_mml(), OptMapInfo::anc, OptExactInfo::anc, NodeOptInfo::anc, clear_opt_exact_info(), concat_opt_anc_info(), concat_opt_exact_info(), copy_opt_anc_info(), copy_opt_exact_info(), NodeOptInfo::exb, NodeOptInfo::exm, NodeOptInfo::expr, if(), OptAncInfo::left_anchor, OptExactInfo::len, NodeOptInfo::len, NodeOptInfo::map, MinMaxLen::max, OptExactInfo::mmd, OptMapInfo::mmd, OptExactInfo::reach_end, select_opt_exact_info(), select_opt_map_info(), and OptMapInfo::value.
Referenced by optimize_node_left().
static void concat_opt_anc_info | ( | OptAncInfo * | to, |
OptAncInfo * | left, | ||
OptAncInfo * | right, | ||
OnigDistance | left_len, | ||
OnigDistance | right_len | ||
) | [static] |
Definition at line 4156 of file regcomp.c.
References clear_opt_anc_info(), OptAncInfo::left_anchor, and OptAncInfo::right_anchor.
Referenced by concat_left_node_opt_info(), and concat_opt_exact_info().
static void concat_opt_exact_info | ( | OptExactInfo * | to, |
OptExactInfo * | add, | ||
OnigEncoding | enc | ||
) | [static] |
Definition at line 4240 of file regcomp.c.
References OptExactInfo::anc, concat_opt_anc_info(), copy_opt_anc_info(), enclen, OptExactInfo::ignore_case, OptExactInfo::len, len, OPT_EXACT_MAXLEN, OptExactInfo::reach_end, OptAncInfo::right_anchor, OptExactInfo::s, and UChar.
Referenced by concat_left_node_opt_info(), and optimize_node_left().
static void concat_opt_exact_info_str | ( | OptExactInfo * | to, |
UChar * | s, | ||
UChar * | end, | ||
int raw | ARG_UNUSED, | ||
OnigEncoding | enc | ||
) | [static] |
Definition at line 4270 of file regcomp.c.
References enclen, OptExactInfo::len, len, OPT_EXACT_MAXLEN, OptExactInfo::s, and UChar.
Referenced by optimize_node_left().
Definition at line 4107 of file regcomp.c.
References MinMaxLen::max, and MinMaxLen::min.
Referenced by set_bound_node_opt_info().
static void copy_node_opt_info | ( | NodeOptInfo * | to, |
NodeOptInfo * | from | ||
) | [static] |
Definition at line 4497 of file regcomp.c.
Referenced by optimize_node_left().
static void copy_opt_anc_info | ( | OptAncInfo * | to, |
OptAncInfo * | from | ||
) | [static] |
Definition at line 4150 of file regcomp.c.
Referenced by concat_left_node_opt_info(), and concat_opt_exact_info().
Definition at line 4137 of file regcomp.c.
Referenced by optimize_node_left().
static void copy_opt_exact_info | ( | OptExactInfo * | to, |
OptExactInfo * | from | ||
) | [static] |
Definition at line 4234 of file regcomp.c.
Referenced by concat_left_node_opt_info(), optimize_node_left(), and select_opt_exact_info().
static void copy_opt_map_info | ( | OptMapInfo * | to, |
OptMapInfo * | from | ||
) | [static] |
Definition at line 4382 of file regcomp.c.
Referenced by optimize_node_left(), and select_opt_map_info().
Definition at line 1927 of file regcomp.c.
References BIT_STATUS_AT, BIT_STATUS_CLEAR, BIT_STATUS_ON_AT_SIMPLE, ScanEnv::capture_history, CHECK_NULL_RETURN_MEMERR, GroupNumRemap::new_val, noname_disable_map(), re_pattern_buffer::num_mem, ScanEnv::num_mem, ScanEnv::num_named, ONIG_MAX_CAPTURE_HISTORY_GROUP, onig_renumber_name_table(), renumber_by_map(), SCANENV_MEM_NODES, and xalloca.
Referenced by onig_compile().
static OnigDistance distance_add | ( | OnigDistance | d1, |
OnigDistance | d2 | ||
) | [static] |
Definition at line 92 of file regcomp.c.
References ONIG_INFINITE_DISTANCE.
Referenced by add_mml(), get_char_length_tree1(), and get_max_match_length().
static OnigDistance distance_multiply | ( | OnigDistance | d, |
int | m | ||
) | [static] |
Definition at line 103 of file regcomp.c.
References ONIG_INFINITE_DISTANCE.
Referenced by get_char_length_tree1(), get_max_match_length(), get_min_match_length(), and optimize_node_left().
static int distance_value | ( | MinMaxLen * | mm | ) | [static] |
Definition at line 4041 of file regcomp.c.
References MinMaxLen::max, MinMaxLen::min, and ONIG_INFINITE_DISTANCE.
Referenced by comp_distance_value().
static int divide_look_behind_alternatives | ( | Node * | node | ) | [static] |
Definition at line 3125 of file regcomp.c.
References ANCHOR_LOOK_BEHIND_NOT, CHECK_NULL_RETURN_MEMERR, NANCHOR, NCAR, NCDR, node, NT_LIST, NULL_NODE, onig_node_new_anchor(), SET_NTYPE, swap_node(), AnchorNode::target, and AnchorNode::type.
Referenced by setup_look_behind().
static int entry_repeat_range | ( | regex_t * | reg, |
int | id, | ||
int | lower, | ||
int | upper | ||
) | [static] |
Definition at line 655 of file regcomp.c.
References CHECK_NULL_RETURN_MEMERR, id, IS_REPEAT_INFINITE, OnigRepeatRange::lower, re_pattern_buffer::repeat_range, REPEAT_RANGE_ALLOC, re_pattern_buffer::repeat_range_alloc, OnigRepeatRange::upper, xmalloc, and xrealloc.
Referenced by compile_range_repeat_node().
static int expand_case_fold_make_rem_string | ( | Node ** | rnode, |
UChar * | s, | ||
UChar * | end, | ||
regex_t * | reg | ||
) | [static] |
Definition at line 3267 of file regcomp.c.
References IS_NULL, node, NSTRING_SET_AMBIG, NSTRING_SET_DONT_GET_OPT_INFO, onig_node_free(), onig_node_new_str(), ONIGERR_MEMORY, and update_string_node_case_fold().
Referenced by expand_case_fold_string(), and expand_case_fold_string_alt().
Definition at line 3401 of file regcomp.c.
References re_pattern_buffer::case_fold_flag, re_pattern_buffer::enc, enclen, StrNode::end, re_registers::end, err, expand_case_fold_make_rem_string(), expand_case_fold_string_alt(), IS_NOT_NULL, IS_NULL, len, NCAR, NSTR, NSTRING_IS_AMBIG, NULL, NULL_NODE, onig_node_free(), onig_node_list_add(), onig_node_new_str(), onig_node_str_cat(), ONIGENC_GET_CASE_FOLD_CODES_BY_STR, ONIGENC_GET_CASE_FOLD_CODES_MAX_NUM, ONIGERR_MEMORY, StrNode::s, swap_node(), THRESHOLD_CASE_FOLD_ALT_FOR_EXPANSION, and UChar.
Referenced by setup_tree().
static int expand_case_fold_string_alt | ( | int | item_num, |
OnigCaseFoldCodeItem | items[], | ||
UChar * | p, | ||
int | slen, | ||
UChar * | end, | ||
regex_t * | reg, | ||
Node ** | rnode | ||
) | [static] |
Definition at line 3289 of file regcomp.c.
References buf, OnigCaseFoldCodeItem::byte_len, OnigCaseFoldCodeItem::code, OnigCaseFoldCodeItem::code_len, re_pattern_buffer::enc, expand_case_fold_make_rem_string(), IS_NULL, len, NCAR, NCDR, NULL, NULL_NODE, onig_node_free(), onig_node_list_add(), onig_node_new_alt(), onig_node_new_list(), onig_node_new_str(), onig_node_str_cat(), ONIGENC_CODE_TO_MBC, ONIGENC_CODE_TO_MBC_MAXLEN, ONIGERR_MEMORY, and UChar.
Referenced by expand_case_fold_string().
Definition at line 2424 of file regcomp.c.
References get_char_length_tree1().
Referenced by compile_anchor_node(), and setup_look_behind().
Definition at line 2301 of file regcomp.c.
References EncloseNode::char_len, distance_add(), distance_multiply(), re_pattern_buffer::enc, enclen, ENCLOSE_MEMORY, ENCLOSE_OPTION, ENCLOSE_STOP_BACKTRACK, StrNode::end, re_registers::end, GET_CHAR_LEN_TOP_ALT_VARLEN, GET_CHAR_LEN_VARLEN, IS_CALL_RECURSION, IS_ENCLOSE_CLEN_FIXED, IS_NOT_NULL, len, QtfrNode::lower, NCALL, NCAR, NCDR, NENCLOSE, NQTFR, NST_CLEN_FIXED, NSTR, NT_ALT, NT_ANCHOR, NT_CALL, NT_CANY, NT_CCLASS, NT_CTYPE, NT_ENCLOSE, NT_LIST, NT_QTFR, NT_STR, NTYPE, StrNode::s, SET_ENCLOSE_STATUS, EncloseNode::target, QtfrNode::target, EncloseNode::type, UChar, and QtfrNode::upper.
Referenced by get_char_length_tree().
Definition at line 2607 of file regcomp.c.
References ANCHOR_PREC_READ, ENCLOSE_MEMORY, ENCLOSE_OPTION, ENCLOSE_STOP_BACKTRACK, StrNode::end, QtfrNode::head_exact, IS_IGNORECASE, IS_NOT_NULL, QtfrNode::lower, NANCHOR, NCAR, NENCLOSE, node, NQTFR, NSTR, NSTRING_IS_RAW, NT_ALT, NT_ANCHOR, NT_BREF, NT_CALL, NT_CANY, NT_CCLASS, NT_CTYPE, NT_ENCLOSE, NT_LIST, NT_QTFR, NT_STR, NTYPE, NULL_NODE, options(), re_pattern_buffer::options, StrNode::s, EncloseNode::target, QtfrNode::target, type, and EncloseNode::type.
Referenced by next_setup(), and setup_tree().
static int get_max_match_length | ( | Node * | node, |
OnigDistance * | max, | ||
ScanEnv * | env | ||
) | [static] |
Definition at line 2180 of file regcomp.c.
References BRefNode::back_num, BACKREFS_P, distance_add(), distance_multiply(), ScanEnv::enc, ENCLOSE_MEMORY, ENCLOSE_OPTION, ENCLOSE_STOP_BACKTRACK, StrNode::end, IS_CALL_RECURSION, IS_ENCLOSE_MAX_FIXED, IS_NOT_NULL, IS_REPEAT_INFINITE, max(), EncloseNode::max_len, NBREF, NCALL, NCAR, NCDR, NENCLOSE, NQTFR, NST_MAX_FIXED, NST_RECURSION, NSTR, NT_ALT, NT_ANCHOR, NT_BREF, NT_CALL, NT_CANY, NT_CCLASS, NT_CTYPE, NT_ENCLOSE, NT_LIST, NT_QTFR, NT_STR, NTYPE, ScanEnv::num_mem, ONIG_INFINITE_DISTANCE, ONIGENC_MBC_MAXLEN_DIST, ONIGERR_INVALID_BACKREF, StrNode::s, SCANENV_MEM_NODES, SET_ENCLOSE_STATUS, BRefNode::state, EncloseNode::target, QtfrNode::target, EncloseNode::type, and QtfrNode::upper.
Referenced by optimize_node_left(), and setup_tree().
static int get_min_match_length | ( | Node * | node, |
OnigDistance * | min, | ||
ScanEnv * | env | ||
) | [static] |
Definition at line 2057 of file regcomp.c.
References BRefNode::back_num, BACKREFS_P, distance_multiply(), ENCLOSE_MEMORY, ENCLOSE_OPTION, ENCLOSE_STOP_BACKTRACK, StrNode::end, IS_CALL_RECURSION, IS_ENCLOSE_MIN_FIXED, IS_NOT_NULL, QtfrNode::lower, min(), EncloseNode::min_len, NBREF, NCALL, NCAR, NCDR, NENCLOSE, node, NQTFR, NST_MIN_FIXED, NST_RECURSION, NSTR, NT_ALT, NT_ANCHOR, NT_BREF, NT_CALL, NT_CANY, NT_CCLASS, NT_CTYPE, NT_ENCLOSE, NT_LIST, NT_QTFR, NT_STR, NTYPE, ScanEnv::num_mem, ONIGERR_INVALID_BACKREF, StrNode::s, SCANENV_MEM_NODES, SET_ENCLOSE_STATUS, BRefNode::state, EncloseNode::target, QtfrNode::target, and EncloseNode::type.
Referenced by optimize_node_left(), setup_tree(), and subexp_inf_recursive_check().
static int is_anychar_star_quantifier | ( | QtfrNode * | qn | ) | [static] |
Definition at line 722 of file regcomp.c.
References QtfrNode::greedy, IS_REPEAT_INFINITE, NT_CANY, NTYPE, QtfrNode::target, and QtfrNode::upper.
Referenced by compile_quantifier_node().
Definition at line 4087 of file regcomp.c.
References MinMaxLen::max, and MinMaxLen::min.
Referenced by alt_merge_opt_exact_info().
static int is_full_opt_exact_info | ( | OptExactInfo * | ex | ) | [static] |
Definition at line 4217 of file regcomp.c.
References OptExactInfo::len, and OPT_EXACT_MAXLEN.
Referenced by optimize_node_left().
static int is_left_anchor | ( | int | anc | ) | [static] |
Definition at line 4173 of file regcomp.c.
References ANCHOR_END_BUF, ANCHOR_END_LINE, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, and ANCHOR_SEMI_END_BUF.
Referenced by add_opt_anc_info(), and remove_opt_anc_info().
Definition at line 2431 of file regcomp.c.
References BITSET_AT, CClassNode::bs, re_pattern_buffer::enc, StrNode::end, IS_CODE_SB_WORD, IS_NCCLASS_NOT, IS_NULL, len, CClassNode::mbuf, NCCLASS, NCTYPE, NSTR, NSTRING_IS_AMBIG, NSTRING_LEN, NT_CCLASS, NT_CTYPE, NT_STR, NTYPE, onig_is_code_in_cc(), ONIGENC_CTYPE_WORD, ONIGENC_IS_MBC_WORD, ONIGENC_MBC_MAXLEN, ONIGENC_MBC_TO_CODE, StrNode::s, SINGLE_BYTE_SIZE, and UChar.
Referenced by next_setup().
static int is_set_opt_anc_info | ( | OptAncInfo * | to, |
int | anc | ||
) | [static] |
Definition at line 4184 of file regcomp.c.
References OptAncInfo::left_anchor, and OptAncInfo::right_anchor.
Referenced by optimize_node_left().
static int map_position_value | ( | OnigEncoding | enc, |
int | i | ||
) | [static] |
Definition at line 4017 of file regcomp.c.
References ONIGENC_MBC_MINLEN.
Referenced by add_char_opt_map_info(), alt_merge_opt_map_info(), and select_opt_exact_info().
Definition at line 3176 of file regcomp.c.
References CHECK_NULL_RETURN_MEMERR, ENCLOSE_MEMORY, ENCLOSE_STOP_BACKTRACK, get_head_value_node(), QtfrNode::greedy, IS_NODE_TYPE_SIMPLE, is_not_included(), IS_NOT_NULL, IS_REPEAT_INFINITE, QtfrNode::lower, NENCLOSE, QtfrNode::next_head_exact, NQTFR, NST_STOP_BT_SIMPLE_REPEAT, NSTR, NT_ENCLOSE, NT_QTFR, NTYPE, onig_node_new_enclose(), SET_ENCLOSE_STATUS, swap_node(), EncloseNode::target, QtfrNode::target, EncloseNode::type, type, and QtfrNode::upper.
Referenced by setup_tree().
static int noname_disable_map | ( | Node ** | plink, |
GroupNumRemap * | map, | ||
int * | counter | ||
) | [static] |
Definition at line 1756 of file regcomp.c.
References ANCHOR_LOOK_BEHIND, ANCHOR_LOOK_BEHIND_NOT, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, ENCLOSE_MEMORY, IS_ENCLOSE_NAMED_GROUP, IS_NOT_NULL, NANCHOR, NCAR, NCDR, NENCLOSE, GroupNumRemap::new_val, node, NQTFR, NT_ALT, NT_ANCHOR, NT_ENCLOSE, NT_LIST, NT_QTFR, NTYPE, NULL_NODE, onig_node_free(), onig_reduce_nested_quantifier(), EncloseNode::regnum, AnchorNode::target, EncloseNode::target, AnchorNode::type, and EncloseNode::type.
Referenced by disable_noname_group_capture().
static int numbered_ref_check | ( | Node * | node | ) | [static] |
Definition at line 1896 of file regcomp.c.
References IS_BACKREF_NAME_REF, IS_NOT_NULL, NBREF, NCAR, NCDR, NENCLOSE, NQTFR, NT_ALT, NT_BREF, NT_ENCLOSE, NT_LIST, NT_QTFR, NTYPE, and ONIGERR_NUMBERED_BACKREF_OR_CALL_NOT_ALLOWED.
Referenced by onig_compile().
int onig_bbuf_init | ( | BBuf * | buf, |
OnigDistance | size | ||
) |
Definition at line 144 of file regcomp.c.
References _BBuf::alloc, IS_NULL, NULL, ONIGERR_MEMORY, _BBuf::p, UChar, _BBuf::used, and xmalloc.
Definition at line 5281 of file regcomp.c.
References add, re_pattern_buffer::chain, REGEX_CHAIN_HEAD, THREAD_ATOMIC_END, and THREAD_ATOMIC_START.
void onig_chain_reduce | ( | regex_t * | reg | ) |
Definition at line 5290 of file regcomp.c.
References re_pattern_buffer::chain, IS_NOT_NULL, NULL, ONIG_STATE_MODIFY, prev, REGEX_TRANSFER, and re_pattern_buffer::state.
Referenced by onig_match(), and onig_search().
int onig_compile | ( | regex_t * | reg, |
const UChar * | pattern, | ||
const UChar * | pattern_end, | ||
OnigErrorInfo * | einfo, | ||
const char * | sourcefile, | ||
int | sourceline | ||
) |
Definition at line 5315 of file regcomp.c.
References add_opcode(), re_pattern_buffer::alloc, ScanEnv::backrefed_mem, BBUF_INIT, BIT_STATUS_AT, BIT_STATUS_ON_ALL, ScanEnv::bt_mem_end, re_pattern_buffer::bt_mem_end, ScanEnv::bt_mem_start, re_pattern_buffer::bt_mem_start, ScanEnv::capture_history, re_pattern_buffer::capture_history, clear_optimize_info(), COMPILE_INIT_SIZE, compile_tree(), disable_noname_group_capture(), ScanEnv::enc, OnigErrorInfo::enc, re_pattern_buffer::enc, err, ScanEnv::error, ScanEnv::error_end, IS_FIND_CONDITION, IS_NOT_NULL, IS_SYNTAX_BV, ScanEnv::mem_nodes_dynamic, NULL, re_pattern_buffer::num_call, ScanEnv::num_call, re_pattern_buffer::num_comb_exp_check, ScanEnv::num_mem, re_pattern_buffer::num_mem, ScanEnv::num_named, re_pattern_buffer::num_null_check, re_pattern_buffer::num_repeat, numbered_ref_check(), ONIG_IS_OPTION_ON, onig_node_free(), ONIG_OPTION_CAPTURE_GROUP, onig_parse_make_tree(), ONIG_STATE_COMPILING, ONIG_STATE_NORMAL, ONIG_SYN_CAPTURE_ONLY_NAMED_GROUP, OP_END, re_pattern_buffer::options, OnigErrorInfo::par, OnigErrorInfo::par_end, re_pattern_buffer::repeat_range, re_pattern_buffer::repeat_range_alloc, set_optimize_info_from_tree(), setup_subexp_call(), setup_tree(), ScanEnv::sourcefile, ScanEnv::sourceline, re_pattern_buffer::stack_pop_level, STACK_POP_LEVEL_ALL, STACK_POP_LEVEL_FREE, STACK_POP_LEVEL_MEM_START, re_pattern_buffer::state, subexp_inf_recursive_check_trav(), subexp_recursive_check_trav(), ScanEnv::syntax, UChar, ScanEnv::unset_addr_list, unset_addr_list_end(), unset_addr_list_fix(), unset_addr_list_init(), USE_SUBEXP_CALL, re_pattern_buffer::used, and xfree().
Referenced by onig_new(), onig_new_with_source(), and onig_new_without_alloc().
int onig_end | ( | void | ) |
Definition at line 5644 of file regcomp.c.
References onig_free_node_list(), onig_free_shared_cclass_table(), THREAD_ATOMIC_END, THREAD_ATOMIC_START, and THREAD_SYSTEM_END.
void onig_free | ( | regex_t * | reg | ) |
Definition at line 5237 of file regcomp.c.
References IS_NOT_NULL, onig_free_body(), and xfree().
Referenced by obj_free(), onig_free_body(), onig_new(), onig_new_with_source(), rb_reg_search(), rb_reg_to_s(), and strscan_do_scan().
void onig_free_body | ( | regex_t * | reg | ) |
Definition at line 5220 of file regcomp.c.
References re_pattern_buffer::chain, re_pattern_buffer::exact, re_pattern_buffer::int_map, re_pattern_buffer::int_map_backward, IS_NOT_NULL, onig_free(), onig_names_free(), re_pattern_buffer::p, re_pattern_buffer::repeat_range, and xfree().
Referenced by onig_free().
OnigCaseFoldType onig_get_default_case_fold_flag | ( | void | ) |
Definition at line 35 of file regcomp.c.
References OnigDefaultCaseFoldFlag.
int onig_init | ( | void | ) |
Definition at line 5621 of file regcomp.c.
References onigenc_init(), THREAD_ATOMIC_END, THREAD_ATOMIC_START, and THREAD_SYSTEM_INIT.
Referenced by onig_reg_init().
int onig_is_code_in_cc | ( | OnigEncoding | enc, |
OnigCodePoint | code, | ||
CClassNode * | cc | ||
) |
Definition at line 5712 of file regcomp.c.
References len, onig_is_code_in_cc_len(), ONIGENC_CODE_TO_MBCLEN, and ONIGENC_MBC_MINLEN.
Referenced by i_apply_case_fold(), and is_not_included().
int onig_is_code_in_cc_len | ( | int | elen, |
OnigCodePoint | code, | ||
CClassNode * | cc | ||
) |
Definition at line 5689 of file regcomp.c.
References BITSET_AT, CClassNode::bs, IS_NCCLASS_NOT, IS_NULL, CClassNode::mbuf, onig_is_in_code_range(), and _BBuf::p.
Referenced by match_at(), and onig_is_code_in_cc().
int onig_is_in_code_range | ( | const UChar * | p, |
OnigCodePoint | code | ||
) |
Definition at line 5668 of file regcomp.c.
References GET_CODE_POINT.
Referenced by is_code_ctype(), match_at(), onig_is_code_in_cc_len(), and onigenc_unicode_is_code_ctype().
size_t onig_memsize | ( | const regex_t * | reg | ) |
Definition at line 5246 of file regcomp.c.
References re_pattern_buffer::alloc, re_pattern_buffer::chain, re_pattern_buffer::exact, re_pattern_buffer::exact_end, if(), re_pattern_buffer::int_map, re_pattern_buffer::int_map_backward, IS_NOT_NULL, ONIG_CHAR_TABLE_SIZE, re_pattern_buffer::p, re_pattern_buffer::repeat_range, re_pattern_buffer::repeat_range_alloc, and size.
Referenced by memsize_of().
int onig_new | ( | regex_t ** | reg, |
const UChar * | pattern, | ||
const UChar * | pattern_end, | ||
OnigOptionType | option, | ||
OnigEncoding | enc, | ||
const OnigSyntaxType * | syntax, | ||
OnigErrorInfo * | einfo | ||
) |
Definition at line 5598 of file regcomp.c.
References err, IS_NULL, NULL, onig_compile(), onig_free(), onig_reg_init(), ONIGENC_CASE_FOLD_DEFAULT, ONIGERR_MEMORY, and xmalloc.
Referenced by rb_reg_prepare_re(), and rb_reg_to_s().
int onig_new_without_alloc | ( | regex_t * | reg, |
const UChar * | pattern, | ||
const UChar * | pattern_end, | ||
OnigOptionType | option, | ||
OnigEncoding | enc, | ||
OnigSyntaxType * | syntax, | ||
OnigErrorInfo * | einfo | ||
) |
Definition at line 5584 of file regcomp.c.
References NULL, onig_compile(), onig_reg_init(), and ONIGENC_CASE_FOLD_DEFAULT.
int onig_reg_init | ( | regex_t * | reg, |
OnigOptionType | option, | ||
OnigCaseFoldType | case_fold_flag, | ||
OnigEncoding | enc, | ||
const OnigSyntaxType * | syntax | ||
) |
Definition at line 5538 of file regcomp.c.
References alloc, IS_NULL, NULL, onig_init(), ONIG_OPTION_CAPTURE_GROUP, ONIG_OPTION_DONT_CAPTURE_GROUP, ONIG_OPTION_NEGATE_SINGLELINE, ONIG_OPTION_SINGLELINE, ONIG_STATE_MODIFY, ONIGENC_IS_UNDEF, ONIGERR_DEFAULT_ENCODING_IS_NOT_SETTED, ONIGERR_INVALID_ARGUMENT, ONIGERR_INVALID_COMBINATION_OF_OPTIONS, options(), OnigSyntaxType::options, and UChar.
Referenced by onig_new(), onig_new_with_source(), and onig_new_without_alloc().
int onig_set_default_case_fold_flag | ( | OnigCaseFoldType | case_fold_flag | ) |
Definition at line 41 of file regcomp.c.
References OnigDefaultCaseFoldFlag.
Definition at line 5267 of file regcomp.c.
References REGEX_TRANSFER, THREAD_ATOMIC_END, and THREAD_ATOMIC_START.
static int optimize_node_left | ( | Node * | node, |
NodeOptInfo * | opt, | ||
OptEnv * | env | ||
) | [static] |
Definition at line 4577 of file regcomp.c.
References add_char_amb_opt_map_info(), add_char_opt_map_info(), add_mml(), add_opt_anc_info(), alt_merge_node_opt_info(), NodeOptInfo::anc, ANCHOR_ANYCHAR_STAR, ANCHOR_ANYCHAR_STAR_MASK, ANCHOR_ANYCHAR_STAR_ML, ANCHOR_BEGIN_BUF, ANCHOR_BEGIN_LINE, ANCHOR_BEGIN_POSITION, ANCHOR_END_BUF, ANCHOR_END_LINE, ANCHOR_LOOK_BEHIND, ANCHOR_LOOK_BEHIND_NOT, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, ANCHOR_SEMI_END_BUF, BRefNode::back_num, ScanEnv::backrefed_mem, BACKREFS_P, BIT_STATUS_AT, BITSET_AT, CClassNode::bs, OptEnv::case_fold_flag, clear_node_opt_info(), concat_left_node_opt_info(), concat_opt_exact_info(), concat_opt_exact_info_str(), copy_node_opt_info(), copy_opt_env(), copy_opt_exact_info(), copy_opt_map_info(), distance_multiply(), OptEnv::enc, ENCLOSE_MEMORY, ENCLOSE_OPTION, ENCLOSE_STOP_BACKTRACK, StrNode::end, NodeOptInfo::exb, NodeOptInfo::exm, NodeOptInfo::expr, get_max_match_length(), get_min_match_length(), QtfrNode::greedy, OptExactInfo::ignore_case, IS_CALL_RECURSION, IS_ENCLOSE_MAX_FIXED, IS_ENCLOSE_MIN_FIXED, is_full_opt_exact_info(), IS_MULTILINE, IS_NCCLASS_NOT, IS_NOT_NULL, IS_REPEAT_INFINITE, is_set_opt_anc_info(), OptExactInfo::len, NodeOptInfo::len, QtfrNode::lower, NodeOptInfo::map, MinMaxLen::max, max(), EncloseNode::max_len, MAX_NODE_OPT_INFO_REF_COUNT, CClassNode::mbuf, MinMaxLen::min, min(), EncloseNode::min_len, OptEnv::mmd, NANCHOR, NBREF, NCALL, NCAR, NCCLASS, NCDR, NCTYPE, NENCLOSE, node, NQTFR, NST_RECURSION, NSTR, NSTRING_IS_AMBIG, NSTRING_IS_DONT_GET_OPT_INFO, NSTRING_IS_RAW, NT_ALT, NT_ANCHOR, NT_BREF, NT_CALL, NT_CANY, NT_CCLASS, NT_CTYPE, NT_ENCLOSE, NT_LIST, NT_QTFR, NT_STR, NTYPE, ONIG_INFINITE_DISTANCE, ONIGENC_CTYPE_WORD, ONIGENC_IS_CODE_WORD, ONIGENC_MBC_MAXLEN_DIST, ONIGENC_MBC_MINLEN, onigenc_strlen(), ONIGERR_TYPE_BUG, EncloseNode::opt_count, EncloseNode::option, OptEnv::options, OptExactInfo::reach_end, EncloseNode::regnum, remove_opt_anc_info(), StrNode::s, OptEnv::scan_env, SCANENV_MEM_NODES, set_bound_node_opt_info(), set_mml(), SINGLE_BYTE_SIZE, BRefNode::state, EncloseNode::target, QtfrNode::target, EncloseNode::type, type, UChar, QtfrNode::upper, and OptMapInfo::value.
Referenced by set_optimize_info_from_tree().
static int quantifiers_memory_node_info | ( | Node * | node | ) | [static] |
Definition at line 1989 of file regcomp.c.
References ENCLOSE_MEMORY, ENCLOSE_OPTION, ENCLOSE_STOP_BACKTRACK, IS_CALL_RECURSION, IS_NOT_NULL, NCALL, NCAR, NCDR, NENCLOSE, NQ_TARGET_IS_EMPTY_MEM, NQ_TARGET_IS_EMPTY_REC, NQTFR, NT_ALT, NT_ANCHOR, NT_BREF, NT_CALL, NT_CANY, NT_CCLASS, NT_CTYPE, NT_ENCLOSE, NT_LIST, NT_QTFR, NT_STR, NTYPE, EncloseNode::target, QtfrNode::target, EncloseNode::type, and QtfrNode::upper.
Referenced by setup_tree().
static void remove_opt_anc_info | ( | OptAncInfo * | to, |
int | anc | ||
) | [static] |
Definition at line 4201 of file regcomp.c.
References is_left_anchor(), OptAncInfo::left_anchor, and OptAncInfo::right_anchor.
Referenced by optimize_node_left().
static int renumber_by_map | ( | Node * | node, |
GroupNumRemap * | map | ||
) | [static] |
Definition at line 1852 of file regcomp.c.
References ANCHOR_LOOK_BEHIND, ANCHOR_LOOK_BEHIND_NOT, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, IS_NOT_NULL, NANCHOR, NCAR, NCDR, NENCLOSE, NQTFR, NT_ALT, NT_ANCHOR, NT_BREF, NT_ENCLOSE, NT_LIST, NT_QTFR, NTYPE, renumber_node_backref(), AnchorNode::target, and AnchorNode::type.
Referenced by disable_noname_group_capture().
static int renumber_node_backref | ( | Node * | node, |
GroupNumRemap * | map | ||
) | [static] |
Definition at line 1824 of file regcomp.c.
References BRefNode::back_dynamic, BRefNode::back_num, BRefNode::back_static, IS_BACKREF_NAME_REF, IS_NULL, NBREF, GroupNumRemap::new_val, and ONIGERR_NUMBERED_BACKREF_OR_CALL_NOT_ALLOWED.
Referenced by renumber_by_map().
static void select_opt_exact_info | ( | OnigEncoding | enc, |
OptExactInfo * | now, | ||
OptExactInfo * | alt | ||
) | [static] |
Definition at line 4323 of file regcomp.c.
References comp_distance_value(), copy_opt_exact_info(), OptExactInfo::ignore_case, OptExactInfo::len, map_position_value(), OptExactInfo::mmd, and OptExactInfo::s.
Referenced by concat_left_node_opt_info(), and set_optimize_info_from_tree().
static void select_opt_map_info | ( | OptMapInfo * | now, |
OptMapInfo * | alt | ||
) | [static] |
Definition at line 4419 of file regcomp.c.
References comp_distance_value(), copy_opt_map_info(), OptMapInfo::mmd, and OptMapInfo::value.
Referenced by concat_left_node_opt_info().
static int select_str_opcode | ( | int | mb_len, |
OnigDistance | str_len, | ||
int | ignore_case | ||
) | [static] |
Definition at line 320 of file regcomp.c.
References OP_EXACT1, OP_EXACT1_IC, OP_EXACT2, OP_EXACT3, OP_EXACT4, OP_EXACT5, OP_EXACTMB2N, OP_EXACTMB2N1, OP_EXACTMB2N2, OP_EXACTMB2N3, OP_EXACTMB3N, OP_EXACTMBN, OP_EXACTN, and OP_EXACTN_IC.
Referenced by add_compile_string(), and add_compile_string_length().
static int set_bm_skip | ( | UChar * | s, |
UChar * | end, | ||
OnigEncoding enc | ARG_UNUSED, | ||
UChar | skip[], | ||
int ** | int_skip | ||
) | [static] |
Definition at line 3941 of file regcomp.c.
References IS_NULL, len, ONIG_CHAR_TABLE_SIZE, ONIGERR_MEMORY, and xmalloc.
Referenced by set_optimize_exact_info().
static void set_bound_node_opt_info | ( | NodeOptInfo * | opt, |
MinMaxLen * | mmd | ||
) | [static] |
Definition at line 4478 of file regcomp.c.
References copy_mml(), NodeOptInfo::exb, NodeOptInfo::expr, NodeOptInfo::map, OptMapInfo::mmd, and OptExactInfo::mmd.
Referenced by optimize_node_left().
static void set_mml | ( | MinMaxLen * | mml, |
OnigDistance | min, | ||
OnigDistance | max | ||
) | [static] |
Definition at line 4094 of file regcomp.c.
References max(), MinMaxLen::max, min(), and MinMaxLen::min.
Referenced by optimize_node_left().
static int set_optimize_exact_info | ( | regex_t * | reg, |
OptExactInfo * | e | ||
) | [static] |
Definition at line 4921 of file regcomp.c.
References CHECK_NULL_RETURN_MEMERR, re_pattern_buffer::dmax, re_pattern_buffer::dmin, re_pattern_buffer::enc, re_pattern_buffer::exact, re_pattern_buffer::exact_end, OptExactInfo::ignore_case, re_pattern_buffer::int_map, OptExactInfo::len, re_pattern_buffer::map, MinMaxLen::max, MinMaxLen::min, OptExactInfo::mmd, ONIG_INFINITE_DISTANCE, ONIG_OPTIMIZE_EXACT, ONIG_OPTIMIZE_EXACT_BM, ONIG_OPTIMIZE_EXACT_BM_NOT_REV, ONIG_OPTIMIZE_EXACT_IC, ONIGENC_IS_ALLOWED_REVERSE_MATCH, re_pattern_buffer::optimize, OptExactInfo::s, set_bm_skip(), str_dup(), re_pattern_buffer::threshold_len, UChar, xmalloc, and xmemcpy.
Referenced by set_optimize_info_from_tree().
Definition at line 4996 of file regcomp.c.
References OptMapInfo::anc, OptExactInfo::anc, NodeOptInfo::anc, re_pattern_buffer::anchor, ANCHOR_ANYCHAR_STAR, ANCHOR_ANYCHAR_STAR_ML, ANCHOR_BEGIN_BUF, ANCHOR_BEGIN_LINE, ANCHOR_BEGIN_POSITION, re_pattern_buffer::anchor_dmax, re_pattern_buffer::anchor_dmin, ANCHOR_END_BUF, ANCHOR_END_LINE, ANCHOR_SEMI_END_BUF, re_pattern_buffer::case_fold_flag, OptEnv::case_fold_flag, clear_mml(), comp_opt_exact_or_map_info(), re_pattern_buffer::enc, OptEnv::enc, NodeOptInfo::exb, NodeOptInfo::exm, OptAncInfo::left_anchor, OptExactInfo::len, NodeOptInfo::len, NodeOptInfo::map, MinMaxLen::max, MinMaxLen::min, OptEnv::mmd, optimize_node_left(), re_pattern_buffer::options, OptEnv::options, OptAncInfo::right_anchor, OptEnv::scan_env, select_opt_exact_info(), set_optimize_exact_info(), set_optimize_map_info(), set_sub_anchor(), re_pattern_buffer::sub_anchor, and OptMapInfo::value.
Referenced by onig_compile().
static void set_optimize_map_info | ( | regex_t * | reg, |
OptMapInfo * | m | ||
) | [static] |
Definition at line 4968 of file regcomp.c.
References re_pattern_buffer::dmax, re_pattern_buffer::dmin, if(), OptMapInfo::map, re_pattern_buffer::map, MinMaxLen::max, MinMaxLen::min, OptMapInfo::mmd, ONIG_CHAR_TABLE_SIZE, ONIG_INFINITE_DISTANCE, ONIG_OPTIMIZE_MAP, re_pattern_buffer::optimize, and re_pattern_buffer::threshold_len.
Referenced by set_optimize_info_from_tree().
static void set_sub_anchor | ( | regex_t * | reg, |
OptAncInfo * | anc | ||
) | [static] |
Definition at line 4985 of file regcomp.c.
References ANCHOR_BEGIN_LINE, ANCHOR_END_LINE, OptAncInfo::left_anchor, OptAncInfo::right_anchor, and re_pattern_buffer::sub_anchor.
Referenced by set_optimize_info_from_tree().
Definition at line 3155 of file regcomp.c.
References AnchorNode::char_len, divide_look_behind_alternatives(), GET_CHAR_LEN_TOP_ALT_VARLEN, GET_CHAR_LEN_VARLEN, get_char_length_tree(), IS_SYNTAX_BV, len, NANCHOR, ONIG_SYN_DIFFERENT_LEN_ALT_LOOK_BEHIND, ONIGERR_INVALID_LOOK_BEHIND_PATTERN, ScanEnv::syntax, and AnchorNode::target.
Referenced by setup_tree().
Definition at line 3012 of file regcomp.c.
References ANCHOR_LOOK_BEHIND, ANCHOR_LOOK_BEHIND_NOT, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, BIT_STATUS_ON_AT, ScanEnv::bt_mem_start, CallNode::group_num, IS_NOT_NULL, IS_NULL, IS_SYNTAX_BV, CallNode::name, CallNode::name_end, NANCHOR, NCALL, NCAR, NCDR, NENCLOSE, NQTFR, NST_CALLED, NT_ALT, NT_ANCHOR, NT_CALL, NT_ENCLOSE, NT_LIST, NT_QTFR, NTYPE, ScanEnv::num_mem, ScanEnv::num_named, ONIG_IS_OPTION_ON, onig_name_to_group_numbers(), ONIG_OPTION_CAPTURE_GROUP, onig_scan_env_set_error_string(), ONIG_SYN_CAPTURE_ONLY_NAMED_GROUP, ONIGERR_MULTIPLEX_DEFINITION_NAME_CALL, ONIGERR_NUMBERED_BACKREF_OR_CALL_NOT_ALLOWED, ONIGERR_UNDEFINED_GROUP_REFERENCE, ONIGERR_UNDEFINED_NAME_REFERENCE, ScanEnv::option, ScanEnv::reg, SCANENV_MEM_NODES, SET_ENCLOSE_STATUS, ScanEnv::syntax, AnchorNode::target, CallNode::target, AnchorNode::type, type, ScanEnv::unset_addr_list, and CallNode::unset_addr_list.
Referenced by onig_compile().
Definition at line 3691 of file regcomp.c.
References ALLOWED_ANCHOR_IN_LB, ALLOWED_ANCHOR_IN_LB_NOT, ALLOWED_ENCLOSE_IN_LB, ALLOWED_ENCLOSE_IN_LB_NOT, ALLOWED_TYPE_IN_LB, ANCHOR_LOOK_BEHIND, ANCHOR_LOOK_BEHIND_NOT, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, BRefNode::back_num, ScanEnv::backrefed_mem, BACKREFS_P, BIT_STATUS_ON_AT, ScanEnv::bt_mem_end, ScanEnv::bt_mem_start, check_type_tree(), ENCLOSE_MEMORY, ENCLOSE_OPTION, ENCLOSE_STOP_BACKTRACK, StrNode::end, expand_case_fold_string(), EXPAND_STRING_MAX_LENGTH, get_head_value_node(), get_max_match_length(), get_min_match_length(), QtfrNode::greedy, QtfrNode::head_exact, IN_ALT, IN_NOT, IN_REPEAT, IN_VAR_REPEAT, IS_BACKREF_NEST_LEVEL, IS_IGNORECASE, IS_NODE_TYPE_SIMPLE, IS_NOT_NULL, IS_REPEAT_INFINITE, len, QtfrNode::lower, NANCHOR, NBREF, NCAR, NCDR, NENCLOSE, next_setup(), NQ_TARGET_IS_EMPTY, NQTFR, NST_IN_REPEAT, NST_MEM_BACKREFED, NST_STOP_BT_SIMPLE_REPEAT, NSTR, NSTRING_IS_RAW, NSTRING_LEN, NT_ALT, NT_ANCHOR, NT_BREF, NT_CALL, NT_CANY, NT_CCLASS, NT_CTYPE, NT_ENCLOSE, NT_LIST, NT_QTFR, NT_STR, NTYPE, NULL, NULL_NODE, ScanEnv::num_mem, onig_node_conv_to_str_node(), onig_node_free(), onig_node_str_cat(), ONIGERR_INVALID_BACKREF, ONIGERR_INVALID_LOOK_BEHIND_PATTERN, options(), re_pattern_buffer::options, quantifiers_memory_node_info(), EncloseNode::regnum, StrNode::s, SCANENV_MEM_NODES, SET_ENCLOSE_STATUS, setup_look_behind(), QtfrNode::state, AnchorNode::target, EncloseNode::target, QtfrNode::target, QtfrNode::target_empty_info, AnchorNode::type, EncloseNode::type, type, and QtfrNode::upper.
Referenced by onig_compile().
static UChar* str_dup | ( | UChar * | s, |
UChar * | end | ||
) | [static] |
Definition at line 52 of file regcomp.c.
References CHECK_NULL_RETURN, len, NULL, UChar, xmalloc, and xmemcpy.
Referenced by set_optimize_exact_info().
Definition at line 2748 of file regcomp.c.
References ANCHOR_LOOK_BEHIND, ANCHOR_LOOK_BEHIND_NOT, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, CLEAR_ENCLOSE_STATUS, get_min_match_length(), IS_ENCLOSE_MARK1, IS_ENCLOSE_MARK2, IS_NOT_NULL, min(), NANCHOR, NCALL, NCAR, NCDR, NENCLOSE, node, NQTFR, NST_MARK2, NT_ALT, NT_ANCHOR, NT_CALL, NT_ENCLOSE, NT_LIST, NT_QTFR, NTYPE, RECURSION_EXIST, RECURSION_INFINITE, SET_ENCLOSE_STATUS, AnchorNode::target, AnchorNode::type, and type.
Referenced by subexp_inf_recursive_check_trav().
Definition at line 2832 of file regcomp.c.
References ANCHOR_LOOK_BEHIND, ANCHOR_LOOK_BEHIND_NOT, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, CLEAR_ENCLOSE_STATUS, IS_ENCLOSE_RECURSION, IS_NOT_NULL, NANCHOR, NCAR, NCDR, NENCLOSE, NQTFR, NST_MARK1, NT_ALT, NT_ANCHOR, NT_ENCLOSE, NT_LIST, NT_QTFR, NTYPE, ONIGERR_NEVER_ENDING_RECURSION, SET_ENCLOSE_STATUS, subexp_inf_recursive_check(), EncloseNode::target, AnchorNode::target, AnchorNode::type, and type.
Referenced by onig_compile().
static int subexp_recursive_check | ( | Node * | node | ) | [static] |
Definition at line 2887 of file regcomp.c.
References ANCHOR_LOOK_BEHIND, ANCHOR_LOOK_BEHIND_NOT, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, CLEAR_ENCLOSE_STATUS, IS_ENCLOSE_MARK1, IS_ENCLOSE_MARK2, IS_NOT_NULL, NANCHOR, NCALL, NCAR, NCDR, NENCLOSE, NQTFR, NST_MARK2, NT_ALT, NT_ANCHOR, NT_CALL, NT_ENCLOSE, NT_LIST, NT_QTFR, NTYPE, SET_CALL_RECURSION, SET_ENCLOSE_STATUS, AnchorNode::target, and AnchorNode::type.
Referenced by subexp_recursive_check_trav().
Definition at line 2943 of file regcomp.c.
References ANCHOR_LOOK_BEHIND, ANCHOR_LOOK_BEHIND_NOT, ANCHOR_PREC_READ, ANCHOR_PREC_READ_NOT, CLEAR_ENCLOSE_STATUS, FOUND_CALLED_NODE, IS_ENCLOSE_CALLED, IS_ENCLOSE_RECURSION, IS_NOT_NULL, NANCHOR, NCAR, NCDR, NENCLOSE, NQTFR, NST_MARK1, NST_RECURSION, NT_ALT, NT_ANCHOR, NT_ENCLOSE, NT_LIST, NT_QTFR, NTYPE, SET_ENCLOSE_STATUS, subexp_recursive_check(), EncloseNode::target, AnchorNode::target, AnchorNode::type, and type.
Referenced by onig_compile().
Definition at line 67 of file regcomp.c.
References StrNode::buf, StrNode::capa, StrNode::end, len, NSTR, NT_STR, NTYPE, and StrNode::s.
Referenced by divide_look_behind_alternatives(), expand_case_fold_string(), and next_setup().
static int unset_addr_list_add | ( | UnsetAddrList * | uslist, |
int | offset, | ||
struct _Node * | node | ||
) | [static] |
Definition at line 184 of file regcomp.c.
References UnsetAddrList::alloc, CHECK_NULL_RETURN_MEMERR, node, UnsetAddrList::num, UnsetAddr::offset, size, UnsetAddr::target, UnsetAddrList::us, and xrealloc.
Referenced by compile_call().
static void unset_addr_list_end | ( | UnsetAddrList * | uslist | ) | [static] |
Definition at line 177 of file regcomp.c.
References IS_NOT_NULL, UnsetAddrList::us, and xfree().
Referenced by onig_compile().
static int unset_addr_list_fix | ( | UnsetAddrList * | uslist, |
regex_t * | reg | ||
) | [static] |
Definition at line 1969 of file regcomp.c.
References BBUF_WRITE, EncloseNode::call_addr, IS_ENCLOSE_ADDR_FIXED, NENCLOSE, UnsetAddrList::num, UnsetAddr::offset, ONIGERR_PARSER_BUG, SIZE_ABSADDR, UnsetAddr::target, and UnsetAddrList::us.
Referenced by onig_compile().
static int unset_addr_list_init | ( | UnsetAddrList * | uslist, |
int | size | ||
) | [static] |
Definition at line 164 of file regcomp.c.
References UnsetAddrList::alloc, CHECK_NULL_RETURN_MEMERR, UnsetAddrList::num, size, UnsetAddrList::us, and xmalloc.
Referenced by onig_compile().
Definition at line 3224 of file regcomp.c.
References buf, re_pattern_buffer::case_fold_flag, CHECK_NULL_RETURN_MEMERR, re_pattern_buffer::enc, StrNode::end, re_registers::end, len, NSTR, onig_node_str_set(), ONIGENC_MBC_CASE_FOLD, ONIGENC_MBC_CASE_FOLD_MAXLEN, StrNode::s, UChar, xfree(), xmalloc, and xrealloc.
Referenced by expand_case_fold_make_rem_string().
int onig_inited = 0 [static] |
OnigCaseFoldType OnigDefaultCaseFoldFlag = ONIGENC_CASE_FOLD_MIN |
unsigned char PadBuf[WORD_ALIGNMENT_SIZE] [static] |
Definition at line 48 of file regcomp.c.
Referenced by add_multi_byte_cclass().