mirror of
https://github.com/php/php-src.git
synced 2024-10-19 23:44:13 +00:00
305 lines
12 KiB
C
305 lines
12 KiB
C
|
/**********************************************************************
|
||
|
|
||
|
onigcmpt200.h - Oniguruma (regular expression library)
|
||
|
|
||
|
Copyright (C) 2004 K.Kosako (kosako@sofnec.co.jp)
|
||
|
|
||
|
**********************************************************************/
|
||
|
#ifndef ONIGCMPT200_H
|
||
|
#define ONIGCMPT200_H
|
||
|
|
||
|
/* constants */
|
||
|
#define REG_MAX_ERROR_MESSAGE_LEN ONIG_MAX_ERROR_MESSAGE_LEN
|
||
|
|
||
|
#define RegCharEncoding OnigEncoding
|
||
|
|
||
|
#define REG_ENCODING_ASCII ONIG_ENCODING_ASCII
|
||
|
#define REG_ENCODING_ISO_8859_1 ONIG_ENCODING_ISO_8859_1
|
||
|
#define REG_ENCODING_ISO_8859_15 ONIG_ENCODING_ISO_8859_15
|
||
|
#define REG_ENCODING_UTF8 ONIG_ENCODING_UTF8
|
||
|
#define REG_ENCODING_EUC_JP ONIG_ENCODING_EUC_JP
|
||
|
#define REG_ENCODING_SJIS ONIG_ENCODING_SJIS
|
||
|
#define REG_ENCODING_BIG5 ONIG_ENCODING_BIG5
|
||
|
#define REG_ENCODING_UNDEF ONIG_ENCODING_UNDEF
|
||
|
|
||
|
/* Don't use REGCODE_XXXX. (obsoleted) */
|
||
|
#define REGCODE_UNDEF REG_ENCODING_UNDEF
|
||
|
#define REGCODE_ASCII REG_ENCODING_ASCII
|
||
|
#define REGCODE_UTF8 REG_ENCODING_UTF8
|
||
|
#define REGCODE_EUCJP REG_ENCODING_EUC_JP
|
||
|
#define REGCODE_SJIS REG_ENCODING_SJIS
|
||
|
|
||
|
typedef unsigned char* RegTransTableType;
|
||
|
#define RegOptionType OnigOptionType
|
||
|
#define RegDistance OnigDistance
|
||
|
|
||
|
#define REG_OPTION_DEFAULT ONIG_OPTION_DEFAULT
|
||
|
|
||
|
/* options */
|
||
|
#define REG_OPTION_NONE ONIG_OPTION_NONE
|
||
|
#define REG_OPTION_SINGLELINE ONIG_OPTION_SINGLELINE
|
||
|
#define REG_OPTION_MULTILINE ONIG_OPTION_MULTILINE
|
||
|
#define REG_OPTION_IGNORECASE ONIG_OPTION_IGNORECASE
|
||
|
#define REG_OPTION_EXTEND ONIG_OPTION_EXTEND
|
||
|
#define REG_OPTION_FIND_LONGEST ONIG_OPTION_FIND_LONGEST
|
||
|
#define REG_OPTION_FIND_NOT_EMPTY ONIG_OPTION_FIND_NOT_EMPTY
|
||
|
#define REG_OPTION_NEGATE_SINGLELINE ONIG_OPTION_NEGATE_SINGLELINE
|
||
|
#define REG_OPTION_DONT_CAPTURE_GROUP ONIG_OPTION_DONT_CAPTURE_GROUP
|
||
|
#define REG_OPTION_CAPTURE_GROUP ONIG_OPTION_CAPTURE_GROUP
|
||
|
#define REG_OPTION_NOTBOL ONIG_OPTION_NOTBOL
|
||
|
#define REG_OPTION_NOTEOL ONIG_OPTION_NOTEOL
|
||
|
#define REG_OPTION_POSIX_REGION ONIG_OPTION_POSIX_REGION
|
||
|
|
||
|
#define REG_OPTION_ON ONIG_OPTION_ON
|
||
|
#define REG_OPTION_OFF ONIG_OPTION_OFF
|
||
|
#define IS_REG_OPTION_ON ONIG_IS_OPTION_ON
|
||
|
|
||
|
/* syntax */
|
||
|
#define RegSyntaxType OnigSyntaxType
|
||
|
|
||
|
#define RegSyntaxPosixBasic OnigSyntaxPosixBasic
|
||
|
#define RegSyntaxPosixExtended OnigSyntaxPosixExtended
|
||
|
#define RegSyntaxEmacs OnigSyntaxEmacs
|
||
|
#define RegSyntaxGrep OnigSyntaxGrep
|
||
|
#define RegSyntaxGnuRegex OnigSyntaxGnuRegex
|
||
|
#define RegSyntaxJava OnigSyntaxJava
|
||
|
#define RegSyntaxPerl OnigSyntaxPerl
|
||
|
#define RegSyntaxRuby OnigSyntaxRuby
|
||
|
|
||
|
#define REG_SYNTAX_POSIX_BASIC ONIG_SYNTAX_POSIX_BASIC
|
||
|
#define REG_SYNTAX_POSIX_EXTENDED ONIG_SYNTAX_POSIX_EXTENDED
|
||
|
#define REG_SYNTAX_EMACS ONIG_SYNTAX_EMACS
|
||
|
#define REG_SYNTAX_GREP ONIG_SYNTAX_GREP
|
||
|
#define REG_SYNTAX_GNU_REGEX ONIG_SYNTAX_GNU_REGEX
|
||
|
#define REG_SYNTAX_JAVA ONIG_SYNTAX_JAVA
|
||
|
#define REG_SYNTAX_PERL ONIG_SYNTAX_PERL
|
||
|
#define REG_SYNTAX_RUBY ONIG_SYNTAX_RUBY
|
||
|
|
||
|
#define REG_SYNTAX_DEFAULT ONIG_SYNTAX_DEFAULT
|
||
|
#define RegDefaultSyntax OnigDefaultSyntax
|
||
|
|
||
|
/* syntax (operators) */
|
||
|
#define REG_SYN_OP_VARIABLE_META_CHARACTERS \
|
||
|
ONIG_SYN_OP_VARIABLE_META_CHARACTERS
|
||
|
#define REG_SYN_OP_DOT_ANYCHAR \
|
||
|
ONIG_SYN_OP_DOT_ANYCHAR
|
||
|
#define REG_SYN_OP_ASTERISK_ZERO_INF \
|
||
|
ONIG_SYN_OP_ASTERISK_ZERO_INF
|
||
|
#define REG_SYN_OP_ESC_ASTERISK_ZERO_INF \
|
||
|
ONIG_SYN_OP_ESC_ASTERISK_ZERO_INF
|
||
|
#define REG_SYN_OP_PLUS_ONE_INF \
|
||
|
ONIG_SYN_OP_PLUS_ONE_INF
|
||
|
#define REG_SYN_OP_ESC_PLUS_ONE_INF \
|
||
|
ONIG_SYN_OP_ESC_PLUS_ONE_INF
|
||
|
#define REG_SYN_OP_QMARK_ZERO_ONE \
|
||
|
ONIG_SYN_OP_QMARK_ZERO_ONE
|
||
|
#define REG_SYN_OP_ESC_QMARK_ZERO_ONE \
|
||
|
ONIG_SYN_OP_ESC_QMARK_ZERO_ONE
|
||
|
#define REG_SYN_OP_BRACE_INTERVAL \
|
||
|
ONIG_SYN_OP_BRACE_INTERVAL
|
||
|
#define REG_SYN_OP_ESC_BRACE_INTERVAL \
|
||
|
ONIG_SYN_OP_ESC_BRACE_INTERVAL
|
||
|
#define REG_SYN_OP_VBAR_ALT \
|
||
|
ONIG_SYN_OP_VBAR_ALT
|
||
|
#define REG_SYN_OP_ESC_VBAR_ALT \
|
||
|
ONIG_SYN_OP_ESC_VBAR_ALT
|
||
|
#define REG_SYN_OP_LPAREN_SUBEXP \
|
||
|
ONIG_SYN_OP_LPAREN_SUBEXP
|
||
|
#define REG_SYN_OP_ESC_LPAREN_SUBEXP \
|
||
|
ONIG_SYN_OP_ESC_LPAREN_SUBEXP
|
||
|
#define REG_SYN_OP_ESC_AZ_BUF_ANCHOR \
|
||
|
ONIG_SYN_OP_ESC_AZ_BUF_ANCHOR
|
||
|
#define REG_SYN_OP_ESC_CAPITAL_G_BEGIN_ANCHOR \
|
||
|
ONIG_SYN_OP_ESC_CAPITAL_G_BEGIN_ANCHOR
|
||
|
#define REG_SYN_OP_DECIMAL_BACKREF \
|
||
|
ONIG_SYN_OP_DECIMAL_BACKREF
|
||
|
#define REG_SYN_OP_BRACKET_CC \
|
||
|
ONIG_SYN_OP_BRACKET_CC
|
||
|
#define REG_SYN_OP_ESC_W_WORD \
|
||
|
ONIG_SYN_OP_ESC_W_WORD
|
||
|
#define REG_SYN_OP_ESC_LTGT_WORD_BEGIN_END \
|
||
|
ONIG_SYN_OP_ESC_LTGT_WORD_BEGIN_END
|
||
|
#define REG_SYN_OP_ESC_B_WORD_BOUND \
|
||
|
ONIG_SYN_OP_ESC_B_WORD_BOUND
|
||
|
#define REG_SYN_OP_ESC_S_WHITE_SPACE \
|
||
|
ONIG_SYN_OP_ESC_S_WHITE_SPACE
|
||
|
#define REG_SYN_OP_ESC_D_DIGIT \
|
||
|
ONIG_SYN_OP_ESC_D_DIGIT
|
||
|
#define REG_SYN_OP_LINE_ANCHOR \
|
||
|
ONIG_SYN_OP_LINE_ANCHOR
|
||
|
#define REG_SYN_OP_POSIX_BRACKET \
|
||
|
ONIG_SYN_OP_POSIX_BRACKET
|
||
|
#define REG_SYN_OP_QMARK_NON_GREEDY \
|
||
|
ONIG_SYN_OP_QMARK_NON_GREEDY
|
||
|
#define REG_SYN_OP_ESC_CONTROL_CHARS \
|
||
|
ONIG_SYN_OP_ESC_CONTROL_CHARS
|
||
|
#define REG_SYN_OP_ESC_C_CONTROL \
|
||
|
ONIG_SYN_OP_ESC_C_CONTROL
|
||
|
#define REG_SYN_OP_ESC_OCTAL3 \
|
||
|
ONIG_SYN_OP_ESC_OCTAL3
|
||
|
#define REG_SYN_OP_ESC_X_HEX2 \
|
||
|
ONIG_SYN_OP_ESC_X_HEX2
|
||
|
#define REG_SYN_OP_ESC_X_BRACE_HEX8 \
|
||
|
ONIG_SYN_OP_ESC_X_BRACE_HEX8
|
||
|
|
||
|
#define REG_SYN_OP2_ESC_CAPITAL_Q_QUOTE \
|
||
|
ONIG_SYN_OP2_ESC_CAPITAL_Q_QUOTE
|
||
|
#define REG_SYN_OP2_QMARK_GROUP_EFFECT \
|
||
|
ONIG_SYN_OP2_QMARK_GROUP_EFFECT
|
||
|
#define REG_SYN_OP2_OPTION_PERL \
|
||
|
ONIG_SYN_OP2_OPTION_PERL
|
||
|
#define REG_SYN_OP2_OPTION_RUBY \
|
||
|
ONIG_SYN_OP2_OPTION_RUBY
|
||
|
#define REG_SYN_OP2_PLUS_POSSESSIVE_REPEAT \
|
||
|
ONIG_SYN_OP2_PLUS_POSSESSIVE_REPEAT
|
||
|
#define REG_SYN_OP2_PLUS_POSSESSIVE_INTERVAL \
|
||
|
ONIG_SYN_OP2_PLUS_POSSESSIVE_INTERVAL
|
||
|
#define REG_SYN_OP2_CCLASS_SET_OP \
|
||
|
ONIG_SYN_OP2_CCLASS_SET_OP
|
||
|
#define REG_SYN_OP2_QMARK_LT_NAMED_GROUP \
|
||
|
ONIG_SYN_OP2_QMARK_LT_NAMED_GROUP
|
||
|
#define REG_SYN_OP2_ESC_K_NAMED_BACKREF \
|
||
|
ONIG_SYN_OP2_ESC_K_NAMED_BACKREF
|
||
|
#define REG_SYN_OP2_ESC_G_SUBEXP_CALL \
|
||
|
ONIG_SYN_OP2_ESC_G_SUBEXP_CALL
|
||
|
#define REG_SYN_OP2_ATMARK_CAPTURE_HISTORY \
|
||
|
ONIG_SYN_OP2_ATMARK_CAPTURE_HISTORY
|
||
|
#define REG_SYN_OP2_ESC_CAPITAL_C_BAR_CONTROL \
|
||
|
ONIG_SYN_OP2_ESC_CAPITAL_C_BAR_CONTROL
|
||
|
#define REG_SYN_OP2_ESC_CAPITAL_M_BAR_META \
|
||
|
ONIG_SYN_OP2_ESC_CAPITAL_M_BAR_META
|
||
|
#define REG_SYN_OP2_ESC_V_VTAB \
|
||
|
ONIG_SYN_OP2_ESC_V_VTAB
|
||
|
#define REG_SYN_OP2_ESC_U_HEX4 \
|
||
|
ONIG_SYN_OP2_ESC_U_HEX4
|
||
|
#define REG_SYN_OP2_ESC_GNU_BUF_ANCHOR \
|
||
|
ONIG_SYN_OP2_ESC_GNU_BUF_ANCHOR
|
||
|
|
||
|
#define REG_SYN_CONTEXT_INDEP_ANCHORS \
|
||
|
ONIG_SYN_CONTEXT_INDEP_ANCHORS
|
||
|
#define REG_SYN_CONTEXT_INDEP_REPEAT_OPS \
|
||
|
ONIG_SYN_CONTEXT_INDEP_REPEAT_OPS
|
||
|
#define REG_SYN_CONTEXT_INVALID_REPEAT_OPS \
|
||
|
ONIG_SYN_CONTEXT_INVALID_REPEAT_OPS
|
||
|
#define REG_SYN_ALLOW_UNMATCHED_CLOSE_SUBEXP \
|
||
|
ONIG_SYN_ALLOW_UNMATCHED_CLOSE_SUBEXP
|
||
|
#define REG_SYN_ALLOW_INVALID_INTERVAL \
|
||
|
ONIG_SYN_ALLOW_INVALID_INTERVAL
|
||
|
#define REG_SYN_STRICT_CHECK_BACKREF \
|
||
|
ONIG_SYN_STRICT_CHECK_BACKREF
|
||
|
#define REG_SYN_DIFFERENT_LEN_ALT_LOOK_BEHIND \
|
||
|
ONIG_SYN_DIFFERENT_LEN_ALT_LOOK_BEHIND
|
||
|
#define REG_SYN_CAPTURE_ONLY_NAMED_GROUP \
|
||
|
ONIG_SYN_CAPTURE_ONLY_NAMED_GROUP
|
||
|
#define REG_SYN_ALLOW_MULTIPLEX_DEFINITION_NAME \
|
||
|
ONIG_SYN_ALLOW_MULTIPLEX_DEFINITION_NAME
|
||
|
|
||
|
#define REG_SYN_NOT_NEWLINE_IN_NEGATIVE_CC \
|
||
|
ONIG_SYN_NOT_NEWLINE_IN_NEGATIVE_CC
|
||
|
#define REG_SYN_BACKSLASH_ESCAPE_IN_CC \
|
||
|
ONIG_SYN_BACKSLASH_ESCAPE_IN_CC
|
||
|
#define REG_SYN_ALLOW_EMPTY_RANGE_IN_CC \
|
||
|
ONIG_SYN_ALLOW_EMPTY_RANGE_IN_CC
|
||
|
#define REG_SYN_ALLOW_DOUBLE_RANGE_OP_IN_CC \
|
||
|
ONIG_SYN_ALLOW_DOUBLE_RANGE_OP_IN_CC
|
||
|
#define REG_SYN_WARN_CC_OP_NOT_ESCAPED \
|
||
|
ONIG_SYN_WARN_CC_OP_NOT_ESCAPED
|
||
|
#define REG_SYN_WARN_REDUNDANT_NESTED_REPEAT \
|
||
|
ONIG_SYN_WARN_REDUNDANT_NESTED_REPEAT
|
||
|
|
||
|
/* meta character specifiers (regex_set_meta_char()) */
|
||
|
#define REG_META_CHAR_ESCAPE ONIG_META_CHAR_ESCAPE
|
||
|
#define REG_META_CHAR_ANYCHAR ONIG_META_CHAR_ANYCHAR
|
||
|
#define REG_META_CHAR_ANYTIME ONIG_META_CHAR_ANYTIME
|
||
|
#define REG_META_CHAR_ZERO_OR_ONE_TIME ONIG_META_CHAR_ZERO_OR_ONE_TIME
|
||
|
#define REG_META_CHAR_ONE_OR_MORE_TIME ONIG_META_CHAR_ONE_OR_MORE_TIME
|
||
|
#define REG_META_CHAR_ANYCHAR_ANYTIME ONIG_META_CHAR_ANYCHAR_ANYTIME
|
||
|
|
||
|
#define REG_INEFFECTIVE_META_CHAR ONIG_INEFFECTIVE_META_CHAR
|
||
|
|
||
|
/* error codes */
|
||
|
#define REG_IS_PATTERN_ERROR ONIG_IS_PATTERN_ERROR
|
||
|
/* normal return */
|
||
|
#define REG_NORMAL ONIG_NORMAL
|
||
|
#define REG_MISMATCH ONIG_MISMATCH
|
||
|
#define REG_NO_SUPPORT_CONFIG ONIG_NO_SUPPORT_CONFIG
|
||
|
/* internal error */
|
||
|
#define REGERR_MEMORY ONIGERR_MEMORY
|
||
|
#define REGERR_MATCH_STACK_LIMIT_OVER ONIGERR_MATCH_STACK_LIMIT_OVER
|
||
|
#define REGERR_TYPE_BUG ONIGERR_TYPE_BUG
|
||
|
#define REGERR_PARSER_BUG ONIGERR_PARSER_BUG
|
||
|
#define REGERR_STACK_BUG ONIGERR_STACK_BUG
|
||
|
#define REGERR_UNDEFINED_BYTECODE ONIGERR_UNDEFINED_BYTECODE
|
||
|
#define REGERR_UNEXPECTED_BYTECODE ONIGERR_UNEXPECTED_BYTECODE
|
||
|
#define REGERR_DEFAULT_ENCODING_IS_NOT_SETTED \
|
||
|
ONIGERR_DEFAULT_ENCODING_IS_NOT_SETTED
|
||
|
#define REGERR_SPECIFIED_ENCODING_CANT_CONVERT_TO_WIDE_CHAR \
|
||
|
ONIGERR_SPECIFIED_ENCODING_CANT_CONVERT_TO_WIDE_CHAR
|
||
|
/* general error */
|
||
|
#define REGERR_INVALID_ARGUMENT ONIGERR_INVALID_ARGUMENT
|
||
|
/* errors related to thread */
|
||
|
#define REGERR_OVER_THREAD_PASS_LIMIT_COUNT \
|
||
|
ONIGERR_OVER_THREAD_PASS_LIMIT_COUNT
|
||
|
|
||
|
|
||
|
/* must be smaller than BIT_STATUS_BITS_NUM (unsigned int * 8) */
|
||
|
#define REG_MAX_CAPTURE_HISTORY_GROUP ONIG_MAX_CAPTURE_HISTORY_GROUP
|
||
|
#define REG_IS_CAPTURE_HISTORY_GROUP ONIG_IS_CAPTURE_HISTORY_GROUP
|
||
|
|
||
|
#define REG_REGION_NOTPOS ONIG_REGION_NOTPOS
|
||
|
|
||
|
#define RegRegion OnigRegion
|
||
|
#define RegErrorInfo OnigErrorInfo
|
||
|
#define RegRepeatRange OnigRepeatRange
|
||
|
|
||
|
#define RegWarnFunc OnigWarnFunc
|
||
|
#define regex_null_warn onig_null_warn
|
||
|
#define REG_NULL_WARN ONIG_NULL_WARN
|
||
|
|
||
|
/* regex_t state */
|
||
|
#define REG_STATE_NORMAL ONIG_STATE_NORMAL
|
||
|
#define REG_STATE_SEARCHING ONIG_STATE_SEARCHING
|
||
|
#define REG_STATE_COMPILING ONIG_STATE_COMPILING
|
||
|
#define REG_STATE_MODIFY ONIG_STATE_MODIFY
|
||
|
|
||
|
#define REG_STATE ONIG_STATE
|
||
|
|
||
|
/* Oniguruma Native API */
|
||
|
#define regex_init onig_init
|
||
|
#define regex_error_code_to_str onig_error_code_to_str
|
||
|
#define regex_set_warn_func onig_set_warn_func
|
||
|
#define regex_set_verb_warn_func onig_set_verb_warn_func
|
||
|
#define regex_new onig_new
|
||
|
#define regex_free onig_free
|
||
|
#define regex_recompile onig_recompile
|
||
|
#define regex_search onig_search
|
||
|
#define regex_match onig_match
|
||
|
#define regex_region_new onig_region_new
|
||
|
#define regex_region_free onig_region_free
|
||
|
#define regex_region_copy onig_region_copy
|
||
|
#define regex_region_clear onig_region_clear
|
||
|
#define regex_region_resize onig_region_resize
|
||
|
#define regex_name_to_group_numbers onig_name_to_group_numbers
|
||
|
#define regex_name_to_backref_number onig_name_to_backref_number
|
||
|
#define regex_foreach_name onig_foreach_name
|
||
|
#define regex_number_of_names onig_number_of_names
|
||
|
#define regex_get_encoding onig_get_encoding
|
||
|
#define regex_get_options onig_get_options
|
||
|
#define regex_get_syntax onig_get_syntax
|
||
|
#define regex_set_default_syntax onig_set_default_syntax
|
||
|
#define regex_copy_syntax onig_copy_syntax
|
||
|
#define regex_set_meta_char onig_set_meta_char
|
||
|
#define regex_end onig_end
|
||
|
#define regex_version onig_version
|
||
|
|
||
|
/* encoding API */
|
||
|
#define enc_get_prev_char_head onigenc_get_prev_char_head
|
||
|
#define enc_get_left_adjust_char_head onigenc_get_left_adjust_char_head
|
||
|
#define enc_get_right_adjust_char_head onigenc_get_right_adjust_char_head
|
||
|
/* obsoleted API */
|
||
|
#define regex_get_prev_char_head onigenc_get_prev_char_head
|
||
|
#define regex_get_left_adjust_char_head onigenc_get_left_adjust_char_head
|
||
|
#define regex_get_right_adjust_char_head onigenc_get_right_adjust_char_head
|
||
|
|
||
|
#endif /* ONIGCMPT200_H */
|