⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 oniguruma.h

📁 Mac OS X 平台一文本编辑器的源代码
💻 H
📖 第 1 页 / 共 3 页
字号:
#define ONIG_META_CHAR_ONE_OR_MORE_TIME     4#define ONIG_META_CHAR_ANYCHAR_ANYTIME      5#define ONIG_INEFFECTIVE_META_CHAR          0/* error codes */#define ONIG_IS_PATTERN_ERROR(ecode)   ((ecode) <= -100 && (ecode) > -1000)/* normal return */#define ONIG_NORMAL                                            0#define ONIG_MISMATCH                                         -1#define ONIG_NO_SUPPORT_CONFIG                                -2/* internal error */#define ONIGERR_MEMORY                                         -5#define ONIGERR_TYPE_BUG                                       -6#define ONIGERR_PARSER_BUG                                    -11#define ONIGERR_STACK_BUG                                     -12#define ONIGERR_UNDEFINED_BYTECODE                            -13#define ONIGERR_UNEXPECTED_BYTECODE                           -14#define ONIGERR_MATCH_STACK_LIMIT_OVER                        -15#define ONIGERR_DEFAULT_ENCODING_IS_NOT_SETTED                -21#define ONIGERR_SPECIFIED_ENCODING_CANT_CONVERT_TO_WIDE_CHAR  -22/* general error */#define ONIGERR_INVALID_ARGUMENT                              -30 /* syntax error */#define ONIGERR_END_PATTERN_AT_LEFT_BRACE                    -100#define ONIGERR_END_PATTERN_AT_LEFT_BRACKET                  -101#define ONIGERR_EMPTY_CHAR_CLASS                             -102#define ONIGERR_PREMATURE_END_OF_CHAR_CLASS                  -103#define ONIGERR_END_PATTERN_AT_ESCAPE                        -104#define ONIGERR_END_PATTERN_AT_META                          -105#define ONIGERR_END_PATTERN_AT_CONTROL                       -106#define ONIGERR_META_CODE_SYNTAX                             -108#define ONIGERR_CONTROL_CODE_SYNTAX                          -109#define ONIGERR_CHAR_CLASS_VALUE_AT_END_OF_RANGE             -110#define ONIGERR_CHAR_CLASS_VALUE_AT_START_OF_RANGE           -111#define ONIGERR_UNMATCHED_RANGE_SPECIFIER_IN_CHAR_CLASS      -112#define ONIGERR_TARGET_OF_REPEAT_OPERATOR_NOT_SPECIFIED      -113#define ONIGERR_TARGET_OF_REPEAT_OPERATOR_INVALID            -114#define ONIGERR_NESTED_REPEAT_OPERATOR                       -115#define ONIGERR_UNMATCHED_CLOSE_PARENTHESIS                  -116#define ONIGERR_END_PATTERN_WITH_UNMATCHED_PARENTHESIS       -117#define ONIGERR_END_PATTERN_IN_GROUP                         -118#define ONIGERR_UNDEFINED_GROUP_OPTION                       -119#define ONIGERR_INVALID_POSIX_BRACKET_TYPE                   -121#define ONIGERR_INVALID_LOOK_BEHIND_PATTERN                  -122#define ONIGERR_INVALID_REPEAT_RANGE_PATTERN                 -123/* values error (syntax error) */#define ONIGERR_TOO_BIG_NUMBER                               -200#define ONIGERR_TOO_BIG_NUMBER_FOR_REPEAT_RANGE              -201#define ONIGERR_UPPER_SMALLER_THAN_LOWER_IN_REPEAT_RANGE     -202#define ONIGERR_EMPTY_RANGE_IN_CHAR_CLASS                    -203#define ONIGERR_MISMATCH_CODE_LENGTH_IN_CLASS_RANGE          -204#define ONIGERR_TOO_MANY_MULTI_BYTE_RANGES                   -205#define ONIGERR_TOO_SHORT_MULTI_BYTE_STRING                  -206#define ONIGERR_TOO_BIG_BACKREF_NUMBER                       -207#define ONIGERR_INVALID_BACKREF                              -208#define ONIGERR_NUMBERED_BACKREF_OR_CALL_NOT_ALLOWED         -209#define ONIGERR_TOO_LONG_WIDE_CHAR_VALUE                     -212#define ONIGERR_EMPTY_GROUP_NAME                             -214#define ONIGERR_INVALID_GROUP_NAME                           -215#define ONIGERR_INVALID_CHAR_IN_GROUP_NAME                   -216#define ONIGERR_UNDEFINED_NAME_REFERENCE                     -217#define ONIGERR_UNDEFINED_GROUP_REFERENCE                    -218#define ONIGERR_MULTIPLEX_DEFINED_NAME                       -219#define ONIGERR_MULTIPLEX_DEFINITION_NAME_CALL               -220#define ONIGERR_NEVER_ENDING_RECURSION                       -221#define ONIGERR_GROUP_NUMBER_OVER_FOR_CAPTURE_HISTORY        -222#define ONIGERR_INVALID_CHAR_PROPERTY_NAME                   -223#define ONIGERR_INVALID_WIDE_CHAR_VALUE                      -400#define ONIGERR_TOO_BIG_WIDE_CHAR_VALUE                      -401#define ONIGERR_NOT_SUPPORTED_ENCODING_COMBINATION           -402/* errors related to thread */#define ONIGERR_OVER_THREAD_PASS_LIMIT_COUNT                -1001/* must be smaller than BIT_STATUS_BITS_NUM (unsigned int * 8) */#define ONIG_MAX_CAPTURE_HISTORY_GROUP   31#define ONIG_IS_CAPTURE_HISTORY_GROUP(r, i) \  ((i) <= ONIG_MAX_CAPTURE_HISTORY_GROUP && (r)->list && (r)->list[i])typedef struct OnigCaptureTreeNodeStruct {  int group;   /* group number */  int beg;  int end;  int allocated;  int num_childs;  struct OnigCaptureTreeNodeStruct** childs;} OnigCaptureTreeNode;/* match result region type */struct re_registers {  int  allocated;  int  num_regs;  int* beg;  int* end;  /* extended */  OnigCaptureTreeNode* history_root;  /* capture history tree root */};/* capture tree traverse */#define ONIG_TRAVERSE_CALLBACK_AT_FIRST   1#define ONIG_TRAVERSE_CALLBACK_AT_LAST    2#define ONIG_TRAVERSE_CALLBACK_AT_BOTH \  ( ONIG_TRAVERSE_CALLBACK_AT_FIRST | ONIG_TRAVERSE_CALLBACK_AT_LAST )#define ONIG_REGION_NOTPOS            -1typedef struct re_registers   OnigRegion;typedef struct {  OnigUChar* par;  OnigUChar* par_end;} OnigErrorInfo;typedef struct {  int lower;  int upper;} OnigRepeatRange;typedef void (*OnigWarnFunc) P_((const char* s));extern void onig_null_warn P_((const char* s));#define ONIG_NULL_WARN       onig_null_warn#define ONIG_CHAR_TABLE_SIZE   256/* regex_t state */#define ONIG_STATE_NORMAL              0#define ONIG_STATE_SEARCHING           1#define ONIG_STATE_COMPILING          -1#define ONIG_STATE_MODIFY             -2#define ONIG_STATE(reg) \  ((reg)->state > 0 ? ONIG_STATE_SEARCHING : (reg)->state)typedef struct re_pattern_buffer {  /* common members of BBuf(bytes-buffer) */  unsigned char* p;         /* compiled pattern */  unsigned int used;        /* used space for p */  unsigned int alloc;       /* allocated space for p */  int state;                     /* normal, searching, compiling */  int num_mem;                   /* used memory(...) num counted from 1 */  int num_repeat;                /* OP_REPEAT/OP_REPEAT_NG id-counter */  int num_null_check;            /* OP_NULL_CHECK_START/END id counter */  int num_call;                  /* number of subexp call */  unsigned int capture_history;  /* (?@...) flag (1-31) */  unsigned int bt_mem_start;     /* need backtrack flag */  unsigned int bt_mem_end;       /* need backtrack flag */  int stack_pop_level;  int repeat_range_alloc;  OnigRepeatRange* repeat_range;  OnigEncoding  enc;  OnigOptionType    options;  OnigSyntaxType*   syntax;  OnigAmbigType     ambig_flag;  void*             name_table;  /* optimization info (string search, char-map and anchors) */  int            optimize;          /* optimize flag */  int            threshold_len;     /* search str-length for apply optimize */  int            anchor;            /* BEGIN_BUF, BEGIN_POS, (SEMI_)END_BUF */  OnigDistance   anchor_dmin;       /* (SEMI_)END_BUF anchor distance */  OnigDistance   anchor_dmax;       /* (SEMI_)END_BUF anchor distance */  int            sub_anchor;        /* start-anchor for exact or map */  unsigned char *exact;  unsigned char *exact_end;  unsigned char  map[ONIG_CHAR_TABLE_SIZE]; /* used as BM skip or char-map */  int           *int_map;                   /* BM skip for exact_len > 255 */  int           *int_map_backward;          /* BM skip for backward search */  OnigDistance   dmin;                      /* min-distance of exact or map */  OnigDistance   dmax;                      /* max-distance of exact or map */  /* regex_t link chain */  struct re_pattern_buffer* chain;  /* escape compile-conflict */} regex_t;typedef struct {  int             num_of_elements;  OnigEncoding    pattern_enc;  OnigEncoding    target_enc;  OnigSyntaxType* syntax;  OnigOptionType  option;  OnigAmbigType   ambig_flag;} OnigCompileInfo;/* Oniguruma Native API */ONIG_EXTERNint onig_init P_((void));ONIG_EXTERNint onig_error_code_to_str PV_((OnigUChar* s, int err_code, ...));ONIG_EXTERNvoid onig_set_warn_func P_((OnigWarnFunc f));ONIG_EXTERNvoid onig_set_verb_warn_func P_((OnigWarnFunc f));ONIG_EXTERNint onig_new P_((regex_t**, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigOptionType option, OnigEncoding enc, OnigSyntaxType* syntax, OnigErrorInfo* einfo));ONIG_EXTERNint onig_new_deluxe P_((regex_t** reg, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigCompileInfo* ci, OnigErrorInfo* einfo));ONIG_EXTERNvoid onig_free P_((regex_t*));ONIG_EXTERNint onig_recompile P_((regex_t*, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigOptionType option, OnigEncoding enc, OnigSyntaxType* syntax, OnigErrorInfo* einfo));ONIG_EXTERNint onig_recompile_deluxe P_((regex_t* reg, const OnigUChar* pattern, const OnigUChar* pattern_end, OnigCompileInfo* ci, OnigErrorInfo* einfo));ONIG_EXTERNint onig_search P_((regex_t*, const OnigUChar* str, const OnigUChar* end, const OnigUChar* start, const OnigUChar* range, OnigRegion* region, OnigOptionType option));ONIG_EXTERNint onig_match P_((regex_t*, const OnigUChar* str, const OnigUChar* end, const OnigUChar* at, OnigRegion* region, OnigOptionType option));ONIG_EXTERNOnigRegion* onig_region_new P_((void));ONIG_EXTERNvoid onig_region_init P_((OnigRegion* region));ONIG_EXTERNvoid onig_region_free P_((OnigRegion* region, int free_self));ONIG_EXTERNvoid onig_region_copy P_((OnigRegion* to, OnigRegion* from));ONIG_EXTERNvoid onig_region_clear P_((OnigRegion* region));ONIG_EXTERNint onig_region_resize P_((OnigRegion* region, int n));ONIG_EXTERNint onig_region_set P_((OnigRegion* region, int at, int beg, int end));ONIG_EXTERNint onig_name_to_group_numbers P_((regex_t* reg, const OnigUChar* name, const OnigUChar* name_end, int** nums));ONIG_EXTERNint onig_name_to_backref_number P_((regex_t* reg, const OnigUChar* name, const OnigUChar* name_end, OnigRegion *region));ONIG_EXTERNint onig_foreach_name P_((regex_t* reg, int (*func)(const OnigUChar*, const OnigUChar*,int,int*,regex_t*,void*), void* arg));ONIG_EXTERNint onig_number_of_names P_((regex_t* reg));ONIG_EXTERNint onig_number_of_captures P_((regex_t* reg));ONIG_EXTERNint onig_number_of_capture_histories P_((regex_t* reg));ONIG_EXTERNOnigCaptureTreeNode* onig_get_capture_tree P_((OnigRegion* region));ONIG_EXTERNint onig_capture_tree_traverse P_((OnigRegion* region, int at, int(*callback_func)(int,int,int,int,int,void*), void* arg));ONIG_EXTERNOnigEncoding onig_get_encoding P_((regex_t* reg));ONIG_EXTERNOnigOptionType onig_get_options P_((regex_t* reg));ONIG_EXTERNOnigAmbigType onig_get_ambig_flag P_((regex_t* reg));ONIG_EXTERNOnigSyntaxType* onig_get_syntax P_((regex_t* reg));ONIG_EXTERNint onig_set_default_syntax P_((OnigSyntaxType* syntax));ONIG_EXTERNvoid onig_copy_syntax P_((OnigSyntaxType* to, OnigSyntaxType* from));ONIG_EXTERNunsigned int onig_get_syntax_op P_((OnigSyntaxType* syntax));ONIG_EXTERNunsigned int onig_get_syntax_op2 P_((OnigSyntaxType* syntax));ONIG_EXTERNunsigned int onig_get_syntax_behavior P_((OnigSyntaxType* syntax));ONIG_EXTERNOnigOptionType onig_get_syntax_options P_((OnigSyntaxType* syntax));ONIG_EXTERNvoid onig_set_syntax_op P_((OnigSyntaxType* syntax, unsigned int op));ONIG_EXTERNvoid onig_set_syntax_op2 P_((OnigSyntaxType* syntax, unsigned int op2));ONIG_EXTERNvoid onig_set_syntax_behavior P_((OnigSyntaxType* syntax, unsigned int behavior));ONIG_EXTERNvoid onig_set_syntax_options P_((OnigSyntaxType* syntax, OnigOptionType options));ONIG_EXTERNint onig_set_meta_char P_((OnigEncoding enc, unsigned int what, OnigCodePoint code));ONIG_EXTERNvoid onig_copy_encoding P_((OnigEncoding to, OnigEncoding from));ONIG_EXTERNOnigAmbigType onig_get_default_ambig_flag P_(());ONIG_EXTERNint onig_set_default_ambig_flag P_((OnigAmbigType ambig_flag));ONIG_EXTERNunsigned int onig_get_match_stack_limit_size P_((void));ONIG_EXTERNint onig_set_match_stack_limit_size P_((unsigned int size));ONIG_EXTERNint onig_end P_((void));ONIG_EXTERNconst char* onig_version P_((void));ONIG_EXTERNconst char* onig_copyright P_((void));#ifdef __cplusplus}#endif#endif /* ONIGURUMA_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -