Function onig_sys::onig_new_deluxe [] [src]

pub unsafe extern "C" fn onig_new_deluxe(
    reg: *mut OnigRegexMut,
    pattern: *const OnigUChar,
    pattern_end: *const OnigUChar,
    ci: *const OnigCompileInfo,
    einfo: *mut OnigErrorInfo
) -> c_int

Create a regex object. This function is deluxe version of onig_new().

int onig_new_deluxe(regex_t** reg, const UChar* pattern, const UChar* pattern_end, OnigCompileInfo* ci, OnigErrorInfo* einfo)

normal return: ONIG_NORMAL

arguments 1 reg: return address of regex object. 2 pattern: regex pattern string. 3 pattern_end: terminate address of pattern. (pattern + pattern length) 4 ci: compile time info.

ci->num_of_elements: number of elements in ci. (current version: 5) ci->pattern_enc: pattern string character encoding. ci->target_enc: target string character encoding. ci->syntax: address of pattern syntax definition. ci->option: compile time option. ci->case_fold_flag: character matching case fold bit flag for ONIG_OPTION_IGNORECASE mode.

ONIGENC_CASE_FOLD_MIN: minimum ONIGENC_CASE_FOLD_DEFAULT: minimum (onig_set_default_case_fold_flag())

5 err_info: address for return optional error info. Use this value as 3rd argument of onig_error_code_to_str().

Different character encoding combination is allowed for the following cases only.

pattern_enc: ASCII, ISO_8859_1 target_enc: UTF16_BE, UTF16_LE, UTF32_BE, UTF32_LE

pattern_enc: UTF16_BE/LE target_enc: UTF16_LE/BE

pattern_enc: UTF32_BE/LE target_enc: UTF32_LE/BE