/* automatically generated by rust-bindgen */

pub const PCRE2_MAJOR: u32 = 10;
pub const PCRE2_MINOR: u32 = 32;
pub const PCRE2_DATE: u32 = 1999;
pub const PCRE2_HAVE_STDINT_H: u32 = 1;
pub const PCRE2_HAVE_INTTYPES_H: u32 = 1;
pub const PCRE2_ANCHORED: u32 = 2147483648;
pub const PCRE2_NO_UTF_CHECK: u32 = 1073741824;
pub const PCRE2_ENDANCHORED: u32 = 536870912;
pub const PCRE2_ALLOW_EMPTY_CLASS: u32 = 1;
pub const PCRE2_ALT_BSUX: u32 = 2;
pub const PCRE2_AUTO_CALLOUT: u32 = 4;
pub const PCRE2_CASELESS: u32 = 8;
pub const PCRE2_DOLLAR_ENDONLY: u32 = 16;
pub const PCRE2_DOTALL: u32 = 32;
pub const PCRE2_DUPNAMES: u32 = 64;
pub const PCRE2_EXTENDED: u32 = 128;
pub const PCRE2_FIRSTLINE: u32 = 256;
pub const PCRE2_MATCH_UNSET_BACKREF: u32 = 512;
pub const PCRE2_MULTILINE: u32 = 1024;
pub const PCRE2_NEVER_UCP: u32 = 2048;
pub const PCRE2_NEVER_UTF: u32 = 4096;
pub const PCRE2_NO_AUTO_CAPTURE: u32 = 8192;
pub const PCRE2_NO_AUTO_POSSESS: u32 = 16384;
pub const PCRE2_NO_DOTSTAR_ANCHOR: u32 = 32768;
pub const PCRE2_NO_START_OPTIMIZE: u32 = 65536;
pub const PCRE2_UCP: u32 = 131072;
pub const PCRE2_UNGREEDY: u32 = 262144;
pub const PCRE2_UTF: u32 = 524288;
pub const PCRE2_NEVER_BACKSLASH_C: u32 = 1048576;
pub const PCRE2_ALT_CIRCUMFLEX: u32 = 2097152;
pub const PCRE2_ALT_VERBNAMES: u32 = 4194304;
pub const PCRE2_USE_OFFSET_LIMIT: u32 = 8388608;
pub const PCRE2_EXTENDED_MORE: u32 = 16777216;
pub const PCRE2_LITERAL: u32 = 33554432;
pub const PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES: u32 = 1;
pub const PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL: u32 = 2;
pub const PCRE2_EXTRA_MATCH_WORD: u32 = 4;
pub const PCRE2_EXTRA_MATCH_LINE: u32 = 8;
pub const PCRE2_JIT_COMPLETE: u32 = 1;
pub const PCRE2_JIT_PARTIAL_SOFT: u32 = 2;
pub const PCRE2_JIT_PARTIAL_HARD: u32 = 4;
pub const PCRE2_NOTBOL: u32 = 1;
pub const PCRE2_NOTEOL: u32 = 2;
pub const PCRE2_NOTEMPTY: u32 = 4;
pub const PCRE2_NOTEMPTY_ATSTART: u32 = 8;
pub const PCRE2_PARTIAL_SOFT: u32 = 16;
pub const PCRE2_PARTIAL_HARD: u32 = 32;
pub const PCRE2_DFA_RESTART: u32 = 64;
pub const PCRE2_DFA_SHORTEST: u32 = 128;
pub const PCRE2_SUBSTITUTE_GLOBAL: u32 = 256;
pub const PCRE2_SUBSTITUTE_EXTENDED: u32 = 512;
pub const PCRE2_SUBSTITUTE_UNSET_EMPTY: u32 = 1024;
pub const PCRE2_SUBSTITUTE_UNKNOWN_UNSET: u32 = 2048;
pub const PCRE2_SUBSTITUTE_OVERFLOW_LENGTH: u32 = 4096;
pub const PCRE2_NO_JIT: u32 = 8192;
pub const PCRE2_CONVERT_UTF: u32 = 1;
pub const PCRE2_CONVERT_NO_UTF_CHECK: u32 = 2;
pub const PCRE2_CONVERT_POSIX_BASIC: u32 = 4;
pub const PCRE2_CONVERT_POSIX_EXTENDED: u32 = 8;
pub const PCRE2_CONVERT_GLOB: u32 = 16;
pub const PCRE2_CONVERT_GLOB_NO_WILD_SEPARATOR: u32 = 48;
pub const PCRE2_CONVERT_GLOB_NO_STARSTAR: u32 = 80;
pub const PCRE2_NEWLINE_CR: u32 = 1;
pub const PCRE2_NEWLINE_LF: u32 = 2;
pub const PCRE2_NEWLINE_CRLF: u32 = 3;
pub const PCRE2_NEWLINE_ANY: u32 = 4;
pub const PCRE2_NEWLINE_ANYCRLF: u32 = 5;
pub const PCRE2_NEWLINE_NUL: u32 = 6;
pub const PCRE2_BSR_UNICODE: u32 = 1;
pub const PCRE2_BSR_ANYCRLF: u32 = 2;
pub const PCRE2_ERROR_END_BACKSLASH: u32 = 101;
pub const PCRE2_ERROR_END_BACKSLASH_C: u32 = 102;
pub const PCRE2_ERROR_UNKNOWN_ESCAPE: u32 = 103;
pub const PCRE2_ERROR_QUANTIFIER_OUT_OF_ORDER: u32 = 104;
pub const PCRE2_ERROR_QUANTIFIER_TOO_BIG: u32 = 105;
pub const PCRE2_ERROR_MISSING_SQUARE_BRACKET: u32 = 106;
pub const PCRE2_ERROR_ESCAPE_INVALID_IN_CLASS: u32 = 107;
pub const PCRE2_ERROR_CLASS_RANGE_ORDER: u32 = 108;
pub const PCRE2_ERROR_QUANTIFIER_INVALID: u32 = 109;
pub const PCRE2_ERROR_INTERNAL_UNEXPECTED_REPEAT: u32 = 110;
pub const PCRE2_ERROR_INVALID_AFTER_PARENS_QUERY: u32 = 111;
pub const PCRE2_ERROR_POSIX_CLASS_NOT_IN_CLASS: u32 = 112;
pub const PCRE2_ERROR_POSIX_NO_SUPPORT_COLLATING: u32 = 113;
pub const PCRE2_ERROR_MISSING_CLOSING_PARENTHESIS: u32 = 114;
pub const PCRE2_ERROR_BAD_SUBPATTERN_REFERENCE: u32 = 115;
pub const PCRE2_ERROR_NULL_PATTERN: u32 = 116;
pub const PCRE2_ERROR_BAD_OPTIONS: u32 = 117;
pub const PCRE2_ERROR_MISSING_COMMENT_CLOSING: u32 = 118;
pub const PCRE2_ERROR_PARENTHESES_NEST_TOO_DEEP: u32 = 119;
pub const PCRE2_ERROR_PATTERN_TOO_LARGE: u32 = 120;
pub const PCRE2_ERROR_HEAP_FAILED: u32 = 121;
pub const PCRE2_ERROR_UNMATCHED_CLOSING_PARENTHESIS: u32 = 122;
pub const PCRE2_ERROR_INTERNAL_CODE_OVERFLOW: u32 = 123;
pub const PCRE2_ERROR_MISSING_CONDITION_CLOSING: u32 = 124;
pub const PCRE2_ERROR_LOOKBEHIND_NOT_FIXED_LENGTH: u32 = 125;
pub const PCRE2_ERROR_ZERO_RELATIVE_REFERENCE: u32 = 126;
pub const PCRE2_ERROR_TOO_MANY_CONDITION_BRANCHES: u32 = 127;
pub const PCRE2_ERROR_CONDITION_ASSERTION_EXPECTED: u32 = 128;
pub const PCRE2_ERROR_BAD_RELATIVE_REFERENCE: u32 = 129;
pub const PCRE2_ERROR_UNKNOWN_POSIX_CLASS: u32 = 130;
pub const PCRE2_ERROR_INTERNAL_STUDY_ERROR: u32 = 131;
pub const PCRE2_ERROR_UNICODE_NOT_SUPPORTED: u32 = 132;
pub const PCRE2_ERROR_PARENTHESES_STACK_CHECK: u32 = 133;
pub const PCRE2_ERROR_CODE_POINT_TOO_BIG: u32 = 134;
pub const PCRE2_ERROR_LOOKBEHIND_TOO_COMPLICATED: u32 = 135;
pub const PCRE2_ERROR_LOOKBEHIND_INVALID_BACKSLASH_C: u32 = 136;
pub const PCRE2_ERROR_UNSUPPORTED_ESCAPE_SEQUENCE: u32 = 137;
pub const PCRE2_ERROR_CALLOUT_NUMBER_TOO_BIG: u32 = 138;
pub const PCRE2_ERROR_MISSING_CALLOUT_CLOSING: u32 = 139;
pub const PCRE2_ERROR_ESCAPE_INVALID_IN_VERB: u32 = 140;
pub const PCRE2_ERROR_UNRECOGNIZED_AFTER_QUERY_P: u32 = 141;
pub const PCRE2_ERROR_MISSING_NAME_TERMINATOR: u32 = 142;
pub const PCRE2_ERROR_DUPLICATE_SUBPATTERN_NAME: u32 = 143;
pub const PCRE2_ERROR_INVALID_SUBPATTERN_NAME: u32 = 144;
pub const PCRE2_ERROR_UNICODE_PROPERTIES_UNAVAILABLE: u32 = 145;
pub const PCRE2_ERROR_MALFORMED_UNICODE_PROPERTY: u32 = 146;
pub const PCRE2_ERROR_UNKNOWN_UNICODE_PROPERTY: u32 = 147;
pub const PCRE2_ERROR_SUBPATTERN_NAME_TOO_LONG: u32 = 148;
pub const PCRE2_ERROR_TOO_MANY_NAMED_SUBPATTERNS: u32 = 149;
pub const PCRE2_ERROR_CLASS_INVALID_RANGE: u32 = 150;
pub const PCRE2_ERROR_OCTAL_BYTE_TOO_BIG: u32 = 151;
pub const PCRE2_ERROR_INTERNAL_OVERRAN_WORKSPACE: u32 = 152;
pub const PCRE2_ERROR_INTERNAL_MISSING_SUBPATTERN: u32 = 153;
pub const PCRE2_ERROR_DEFINE_TOO_MANY_BRANCHES: u32 = 154;
pub const PCRE2_ERROR_BACKSLASH_O_MISSING_BRACE: u32 = 155;
pub const PCRE2_ERROR_INTERNAL_UNKNOWN_NEWLINE: u32 = 156;
pub const PCRE2_ERROR_BACKSLASH_G_SYNTAX: u32 = 157;
pub const PCRE2_ERROR_PARENS_QUERY_R_MISSING_CLOSING: u32 = 158;
pub const PCRE2_ERROR_VERB_ARGUMENT_NOT_ALLOWED: u32 = 159;
pub const PCRE2_ERROR_VERB_UNKNOWN: u32 = 160;
pub const PCRE2_ERROR_SUBPATTERN_NUMBER_TOO_BIG: u32 = 161;
pub const PCRE2_ERROR_SUBPATTERN_NAME_EXPECTED: u32 = 162;
pub const PCRE2_ERROR_INTERNAL_PARSED_OVERFLOW: u32 = 163;
pub const PCRE2_ERROR_INVALID_OCTAL: u32 = 164;
pub const PCRE2_ERROR_SUBPATTERN_NAMES_MISMATCH: u32 = 165;
pub const PCRE2_ERROR_MARK_MISSING_ARGUMENT: u32 = 166;
pub const PCRE2_ERROR_INVALID_HEXADECIMAL: u32 = 167;
pub const PCRE2_ERROR_BACKSLASH_C_SYNTAX: u32 = 168;
pub const PCRE2_ERROR_BACKSLASH_K_SYNTAX: u32 = 169;
pub const PCRE2_ERROR_INTERNAL_BAD_CODE_LOOKBEHINDS: u32 = 170;
pub const PCRE2_ERROR_BACKSLASH_N_IN_CLASS: u32 = 171;
pub const PCRE2_ERROR_CALLOUT_STRING_TOO_LONG: u32 = 172;
pub const PCRE2_ERROR_UNICODE_DISALLOWED_CODE_POINT: u32 = 173;
pub const PCRE2_ERROR_UTF_IS_DISABLED: u32 = 174;
pub const PCRE2_ERROR_UCP_IS_DISABLED: u32 = 175;
pub const PCRE2_ERROR_VERB_NAME_TOO_LONG: u32 = 176;
pub const PCRE2_ERROR_BACKSLASH_U_CODE_POINT_TOO_BIG: u32 = 177;
pub const PCRE2_ERROR_MISSING_OCTAL_OR_HEX_DIGITS: u32 = 178;
pub const PCRE2_ERROR_VERSION_CONDITION_SYNTAX: u32 = 179;
pub const PCRE2_ERROR_INTERNAL_BAD_CODE_AUTO_POSSESS: u32 = 180;
pub const PCRE2_ERROR_CALLOUT_NO_STRING_DELIMITER: u32 = 181;
pub const PCRE2_ERROR_CALLOUT_BAD_STRING_DELIMITER: u32 = 182;
pub const PCRE2_ERROR_BACKSLASH_C_CALLER_DISABLED: u32 = 183;
pub const PCRE2_ERROR_QUERY_BARJX_NEST_TOO_DEEP: u32 = 184;
pub const PCRE2_ERROR_BACKSLASH_C_LIBRARY_DISABLED: u32 = 185;
pub const PCRE2_ERROR_PATTERN_TOO_COMPLICATED: u32 = 186;
pub const PCRE2_ERROR_LOOKBEHIND_TOO_LONG: u32 = 187;
pub const PCRE2_ERROR_PATTERN_STRING_TOO_LONG: u32 = 188;
pub const PCRE2_ERROR_INTERNAL_BAD_CODE: u32 = 189;
pub const PCRE2_ERROR_INTERNAL_BAD_CODE_IN_SKIP: u32 = 190;
pub const PCRE2_ERROR_NO_SURROGATES_IN_UTF16: u32 = 191;
pub const PCRE2_ERROR_BAD_LITERAL_OPTIONS: u32 = 192;
pub const PCRE2_ERROR_SUPPORTED_ONLY_IN_UNICODE: u32 = 193;
pub const PCRE2_ERROR_INVALID_HYPHEN_IN_OPTIONS: u32 = 194;
pub const PCRE2_ERROR_NOMATCH: i32 = -1;
pub const PCRE2_ERROR_PARTIAL: i32 = -2;
pub const PCRE2_ERROR_UTF8_ERR1: i32 = -3;
pub const PCRE2_ERROR_UTF8_ERR2: i32 = -4;
pub const PCRE2_ERROR_UTF8_ERR3: i32 = -5;
pub const PCRE2_ERROR_UTF8_ERR4: i32 = -6;
pub const PCRE2_ERROR_UTF8_ERR5: i32 = -7;
pub const PCRE2_ERROR_UTF8_ERR6: i32 = -8;
pub const PCRE2_ERROR_UTF8_ERR7: i32 = -9;
pub const PCRE2_ERROR_UTF8_ERR8: i32 = -10;
pub const PCRE2_ERROR_UTF8_ERR9: i32 = -11;
pub const PCRE2_ERROR_UTF8_ERR10: i32 = -12;
pub const PCRE2_ERROR_UTF8_ERR11: i32 = -13;
pub const PCRE2_ERROR_UTF8_ERR12: i32 = -14;
pub const PCRE2_ERROR_UTF8_ERR13: i32 = -15;
pub const PCRE2_ERROR_UTF8_ERR14: i32 = -16;
pub const PCRE2_ERROR_UTF8_ERR15: i32 = -17;
pub const PCRE2_ERROR_UTF8_ERR16: i32 = -18;
pub const PCRE2_ERROR_UTF8_ERR17: i32 = -19;
pub const PCRE2_ERROR_UTF8_ERR18: i32 = -20;
pub const PCRE2_ERROR_UTF8_ERR19: i32 = -21;
pub const PCRE2_ERROR_UTF8_ERR20: i32 = -22;
pub const PCRE2_ERROR_UTF8_ERR21: i32 = -23;
pub const PCRE2_ERROR_UTF16_ERR1: i32 = -24;
pub const PCRE2_ERROR_UTF16_ERR2: i32 = -25;
pub const PCRE2_ERROR_UTF16_ERR3: i32 = -26;
pub const PCRE2_ERROR_UTF32_ERR1: i32 = -27;
pub const PCRE2_ERROR_UTF32_ERR2: i32 = -28;
pub const PCRE2_ERROR_BADDATA: i32 = -29;
pub const PCRE2_ERROR_MIXEDTABLES: i32 = -30;
pub const PCRE2_ERROR_BADMAGIC: i32 = -31;
pub const PCRE2_ERROR_BADMODE: i32 = -32;
pub const PCRE2_ERROR_BADOFFSET: i32 = -33;
pub const PCRE2_ERROR_BADOPTION: i32 = -34;
pub const PCRE2_ERROR_BADREPLACEMENT: i32 = -35;
pub const PCRE2_ERROR_BADUTFOFFSET: i32 = -36;
pub const PCRE2_ERROR_CALLOUT: i32 = -37;
pub const PCRE2_ERROR_DFA_BADRESTART: i32 = -38;
pub const PCRE2_ERROR_DFA_RECURSE: i32 = -39;
pub const PCRE2_ERROR_DFA_UCOND: i32 = -40;
pub const PCRE2_ERROR_DFA_UFUNC: i32 = -41;
pub const PCRE2_ERROR_DFA_UITEM: i32 = -42;
pub const PCRE2_ERROR_DFA_WSSIZE: i32 = -43;
pub const PCRE2_ERROR_INTERNAL: i32 = -44;
pub const PCRE2_ERROR_JIT_BADOPTION: i32 = -45;
pub const PCRE2_ERROR_JIT_STACKLIMIT: i32 = -46;
pub const PCRE2_ERROR_MATCHLIMIT: i32 = -47;
pub const PCRE2_ERROR_NOMEMORY: i32 = -48;
pub const PCRE2_ERROR_NOSUBSTRING: i32 = -49;
pub const PCRE2_ERROR_NOUNIQUESUBSTRING: i32 = -50;
pub const PCRE2_ERROR_NULL: i32 = -51;
pub const PCRE2_ERROR_RECURSELOOP: i32 = -52;
pub const PCRE2_ERROR_DEPTHLIMIT: i32 = -53;
pub const PCRE2_ERROR_RECURSIONLIMIT: i32 = -53;
pub const PCRE2_ERROR_UNAVAILABLE: i32 = -54;
pub const PCRE2_ERROR_UNSET: i32 = -55;
pub const PCRE2_ERROR_BADOFFSETLIMIT: i32 = -56;
pub const PCRE2_ERROR_BADREPESCAPE: i32 = -57;
pub const PCRE2_ERROR_REPMISSINGBRACE: i32 = -58;
pub const PCRE2_ERROR_BADSUBSTITUTION: i32 = -59;
pub const PCRE2_ERROR_BADSUBSPATTERN: i32 = -60;
pub const PCRE2_ERROR_TOOMANYREPLACE: i32 = -61;
pub const PCRE2_ERROR_BADSERIALIZEDDATA: i32 = -62;
pub const PCRE2_ERROR_HEAPLIMIT: i32 = -63;
pub const PCRE2_ERROR_CONVERT_SYNTAX: i32 = -64;
pub const PCRE2_ERROR_INTERNAL_DUPMATCH: i32 = -65;
pub const PCRE2_INFO_ALLOPTIONS: u32 = 0;
pub const PCRE2_INFO_ARGOPTIONS: u32 = 1;
pub const PCRE2_INFO_BACKREFMAX: u32 = 2;
pub const PCRE2_INFO_BSR: u32 = 3;
pub const PCRE2_INFO_CAPTURECOUNT: u32 = 4;
pub const PCRE2_INFO_FIRSTCODEUNIT: u32 = 5;
pub const PCRE2_INFO_FIRSTCODETYPE: u32 = 6;
pub const PCRE2_INFO_FIRSTBITMAP: u32 = 7;
pub const PCRE2_INFO_HASCRORLF: u32 = 8;
pub const PCRE2_INFO_JCHANGED: u32 = 9;
pub const PCRE2_INFO_JITSIZE: u32 = 10;
pub const PCRE2_INFO_LASTCODEUNIT: u32 = 11;
pub const PCRE2_INFO_LASTCODETYPE: u32 = 12;
pub const PCRE2_INFO_MATCHEMPTY: u32 = 13;
pub const PCRE2_INFO_MATCHLIMIT: u32 = 14;
pub const PCRE2_INFO_MAXLOOKBEHIND: u32 = 15;
pub const PCRE2_INFO_MINLENGTH: u32 = 16;
pub const PCRE2_INFO_NAMECOUNT: u32 = 17;
pub const PCRE2_INFO_NAMEENTRYSIZE: u32 = 18;
pub const PCRE2_INFO_NAMETABLE: u32 = 19;
pub const PCRE2_INFO_NEWLINE: u32 = 20;
pub const PCRE2_INFO_DEPTHLIMIT: u32 = 21;
pub const PCRE2_INFO_RECURSIONLIMIT: u32 = 21;
pub const PCRE2_INFO_SIZE: u32 = 22;
pub const PCRE2_INFO_HASBACKSLASHC: u32 = 23;
pub const PCRE2_INFO_FRAMESIZE: u32 = 24;
pub const PCRE2_INFO_HEAPLIMIT: u32 = 25;
pub const PCRE2_INFO_EXTRAOPTIONS: u32 = 26;
pub const PCRE2_CONFIG_BSR: u32 = 0;
pub const PCRE2_CONFIG_JIT: u32 = 1;
pub const PCRE2_CONFIG_JITTARGET: u32 = 2;
pub const PCRE2_CONFIG_LINKSIZE: u32 = 3;
pub const PCRE2_CONFIG_MATCHLIMIT: u32 = 4;
pub const PCRE2_CONFIG_NEWLINE: u32 = 5;
pub const PCRE2_CONFIG_PARENSLIMIT: u32 = 6;
pub const PCRE2_CONFIG_DEPTHLIMIT: u32 = 7;
pub const PCRE2_CONFIG_RECURSIONLIMIT: u32 = 7;
pub const PCRE2_CONFIG_STACKRECURSE: u32 = 8;
pub const PCRE2_CONFIG_UNICODE: u32 = 9;
pub const PCRE2_CONFIG_UNICODE_VERSION: u32 = 10;
pub const PCRE2_CONFIG_VERSION: u32 = 11;
pub const PCRE2_CONFIG_HEAPLIMIT: u32 = 12;
pub const PCRE2_CONFIG_NEVER_BACKSLASH_C: u32 = 13;
pub const PCRE2_CONFIG_COMPILED_WIDTHS: u32 = 14;
pub const PCRE2_SIZE_MAX: i32 = -1;
pub const PCRE2_CALLOUT_STARTMATCH: u32 = 1;
pub const PCRE2_CALLOUT_BACKTRACK: u32 = 2;
pub const PCRE2_LOCAL_WIDTH: u32 = 8;
pub type __uint8_t = ::libc::c_uchar;
pub type __uint16_t = ::libc::c_ushort;
pub type __int32_t = ::libc::c_int;
pub type __uint32_t = ::libc::c_uint;
pub type PCRE2_UCHAR8 = u8;
pub type PCRE2_UCHAR16 = u16;
pub type PCRE2_UCHAR32 = u32;
pub type PCRE2_SPTR8 = *const PCRE2_UCHAR8;
pub type PCRE2_SPTR16 = *const PCRE2_UCHAR16;
pub type PCRE2_SPTR32 = *const PCRE2_UCHAR32;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_general_context_8 {
    _unused: [u8; 0],
}
pub type pcre2_general_context_8 = pcre2_real_general_context_8;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_compile_context_8 {
    _unused: [u8; 0],
}
pub type pcre2_compile_context_8 = pcre2_real_compile_context_8;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_match_context_8 {
    _unused: [u8; 0],
}
pub type pcre2_match_context_8 = pcre2_real_match_context_8;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_convert_context_8 {
    _unused: [u8; 0],
}
pub type pcre2_convert_context_8 = pcre2_real_convert_context_8;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_code_8 {
    _unused: [u8; 0],
}
pub type pcre2_code_8 = pcre2_real_code_8;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_match_data_8 {
    _unused: [u8; 0],
}
pub type pcre2_match_data_8 = pcre2_real_match_data_8;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_jit_stack_8 {
    _unused: [u8; 0],
}
pub type pcre2_jit_stack_8 = pcre2_real_jit_stack_8;
pub type pcre2_jit_callback_8 = ::std::option::Option<
    unsafe extern "C" fn(arg1: *mut ::libc::c_void) -> *mut pcre2_jit_stack_8,
>;
extern "C" {
    pub fn pcre2_config_8(arg1: u32, arg2: *mut ::libc::c_void) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_general_context_copy_8(
        arg1: *mut pcre2_general_context_8,
    ) -> *mut pcre2_general_context_8;
}
extern "C" {
    pub fn pcre2_general_context_create_8(
        arg1: ::std::option::Option<
            unsafe extern "C" fn(arg1: usize, arg2: *mut ::libc::c_void) -> *mut ::libc::c_void,
        >,
        arg2: ::std::option::Option<
            unsafe extern "C" fn(arg1: *mut ::libc::c_void, arg2: *mut ::libc::c_void),
        >,
        arg3: *mut ::libc::c_void,
    ) -> *mut pcre2_general_context_8;
}
extern "C" {
    pub fn pcre2_general_context_free_8(arg1: *mut pcre2_general_context_8);
}
extern "C" {
    pub fn pcre2_compile_context_copy_8(
        arg1: *mut pcre2_compile_context_8,
    ) -> *mut pcre2_compile_context_8;
}
extern "C" {
    pub fn pcre2_compile_context_create_8(
        arg1: *mut pcre2_general_context_8,
    ) -> *mut pcre2_compile_context_8;
}
extern "C" {
    pub fn pcre2_compile_context_free_8(arg1: *mut pcre2_compile_context_8);
}
extern "C" {
    pub fn pcre2_set_bsr_8(arg1: *mut pcre2_compile_context_8, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_character_tables_8(
        arg1: *mut pcre2_compile_context_8,
        arg2: *const ::libc::c_uchar,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_compile_extra_options_8(
        arg1: *mut pcre2_compile_context_8,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_max_pattern_length_8(
        arg1: *mut pcre2_compile_context_8,
        arg2: usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_newline_8(arg1: *mut pcre2_compile_context_8, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_parens_nest_limit_8(
        arg1: *mut pcre2_compile_context_8,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_compile_recursion_guard_8(
        arg1: *mut pcre2_compile_context_8,
        arg2: ::std::option::Option<
            unsafe extern "C" fn(arg1: u32, arg2: *mut ::libc::c_void) -> ::libc::c_int,
        >,
        arg3: *mut ::libc::c_void,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_convert_context_copy_8(
        arg1: *mut pcre2_convert_context_8,
    ) -> *mut pcre2_convert_context_8;
}
extern "C" {
    pub fn pcre2_convert_context_create_8(
        arg1: *mut pcre2_general_context_8,
    ) -> *mut pcre2_convert_context_8;
}
extern "C" {
    pub fn pcre2_convert_context_free_8(arg1: *mut pcre2_convert_context_8);
}
extern "C" {
    pub fn pcre2_set_glob_escape_8(arg1: *mut pcre2_convert_context_8, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_glob_separator_8(
        arg1: *mut pcre2_convert_context_8,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_pattern_convert_8(
        arg1: PCRE2_SPTR8,
        arg2: usize,
        arg3: u32,
        arg4: *mut *mut PCRE2_UCHAR8,
        arg5: *mut usize,
        arg6: *mut pcre2_convert_context_8,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_converted_pattern_free_8(arg1: *mut PCRE2_UCHAR8);
}
extern "C" {
    pub fn pcre2_match_context_copy_8(
        arg1: *mut pcre2_match_context_8,
    ) -> *mut pcre2_match_context_8;
}
extern "C" {
    pub fn pcre2_match_context_create_8(
        arg1: *mut pcre2_general_context_8,
    ) -> *mut pcre2_match_context_8;
}
extern "C" {
    pub fn pcre2_match_context_free_8(arg1: *mut pcre2_match_context_8);
}
extern "C" {
    pub fn pcre2_set_depth_limit_8(arg1: *mut pcre2_match_context_8, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_heap_limit_8(arg1: *mut pcre2_match_context_8, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_match_limit_8(arg1: *mut pcre2_match_context_8, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_offset_limit_8(arg1: *mut pcre2_match_context_8, arg2: usize)
        -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_recursion_limit_8(
        arg1: *mut pcre2_match_context_8,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_recursion_memory_management_8(
        arg1: *mut pcre2_match_context_8,
        arg2: ::std::option::Option<
            unsafe extern "C" fn(arg1: usize, arg2: *mut ::libc::c_void) -> *mut ::libc::c_void,
        >,
        arg3: ::std::option::Option<
            unsafe extern "C" fn(arg1: *mut ::libc::c_void, arg2: *mut ::libc::c_void),
        >,
        arg4: *mut ::libc::c_void,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_compile_8(
        arg1: PCRE2_SPTR8,
        arg2: usize,
        arg3: u32,
        arg4: *mut ::libc::c_int,
        arg5: *mut usize,
        arg6: *mut pcre2_compile_context_8,
    ) -> *mut pcre2_code_8;
}
extern "C" {
    pub fn pcre2_code_free_8(arg1: *mut pcre2_code_8);
}
extern "C" {
    pub fn pcre2_code_copy_8(arg1: *const pcre2_code_8) -> *mut pcre2_code_8;
}
extern "C" {
    pub fn pcre2_code_copy_with_tables_8(arg1: *const pcre2_code_8) -> *mut pcre2_code_8;
}
extern "C" {
    pub fn pcre2_pattern_info_8(
        arg1: *const pcre2_code_8,
        arg2: u32,
        arg3: *mut ::libc::c_void,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_match_data_create_8(
        arg1: u32,
        arg2: *mut pcre2_general_context_8,
    ) -> *mut pcre2_match_data_8;
}
extern "C" {
    pub fn pcre2_match_data_create_from_pattern_8(
        arg1: *const pcre2_code_8,
        arg2: *mut pcre2_general_context_8,
    ) -> *mut pcre2_match_data_8;
}
extern "C" {
    pub fn pcre2_dfa_match_8(
        arg1: *const pcre2_code_8,
        arg2: PCRE2_SPTR8,
        arg3: usize,
        arg4: usize,
        arg5: u32,
        arg6: *mut pcre2_match_data_8,
        arg7: *mut pcre2_match_context_8,
        arg8: *mut ::libc::c_int,
        arg9: usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_match_8(
        arg1: *const pcre2_code_8,
        arg2: PCRE2_SPTR8,
        arg3: usize,
        arg4: usize,
        arg5: u32,
        arg6: *mut pcre2_match_data_8,
        arg7: *mut pcre2_match_context_8,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_match_data_free_8(arg1: *mut pcre2_match_data_8);
}
extern "C" {
    pub fn pcre2_get_mark_8(arg1: *mut pcre2_match_data_8) -> PCRE2_SPTR8;
}
extern "C" {
    pub fn pcre2_get_ovector_count_8(arg1: *mut pcre2_match_data_8) -> u32;
}
extern "C" {
    pub fn pcre2_get_ovector_pointer_8(arg1: *mut pcre2_match_data_8) -> *mut usize;
}
extern "C" {
    pub fn pcre2_get_startchar_8(arg1: *mut pcre2_match_data_8) -> usize;
}
extern "C" {
    pub fn pcre2_substring_copy_byname_8(
        arg1: *mut pcre2_match_data_8,
        arg2: PCRE2_SPTR8,
        arg3: *mut PCRE2_UCHAR8,
        arg4: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_copy_bynumber_8(
        arg1: *mut pcre2_match_data_8,
        arg2: u32,
        arg3: *mut PCRE2_UCHAR8,
        arg4: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_free_8(arg1: *mut PCRE2_UCHAR8);
}
extern "C" {
    pub fn pcre2_substring_get_byname_8(
        arg1: *mut pcre2_match_data_8,
        arg2: PCRE2_SPTR8,
        arg3: *mut *mut PCRE2_UCHAR8,
        arg4: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_get_bynumber_8(
        arg1: *mut pcre2_match_data_8,
        arg2: u32,
        arg3: *mut *mut PCRE2_UCHAR8,
        arg4: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_length_byname_8(
        arg1: *mut pcre2_match_data_8,
        arg2: PCRE2_SPTR8,
        arg3: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_length_bynumber_8(
        arg1: *mut pcre2_match_data_8,
        arg2: u32,
        arg3: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_nametable_scan_8(
        arg1: *const pcre2_code_8,
        arg2: PCRE2_SPTR8,
        arg3: *mut PCRE2_SPTR8,
        arg4: *mut PCRE2_SPTR8,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_number_from_name_8(
        arg1: *const pcre2_code_8,
        arg2: PCRE2_SPTR8,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_list_free_8(arg1: *mut PCRE2_SPTR8);
}
extern "C" {
    pub fn pcre2_substring_list_get_8(
        arg1: *mut pcre2_match_data_8,
        arg2: *mut *mut *mut PCRE2_UCHAR8,
        arg3: *mut *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_serialize_encode_8(
        arg1: *mut *const pcre2_code_8,
        arg2: i32,
        arg3: *mut *mut u8,
        arg4: *mut usize,
        arg5: *mut pcre2_general_context_8,
    ) -> i32;
}
extern "C" {
    pub fn pcre2_serialize_decode_8(
        arg1: *mut *mut pcre2_code_8,
        arg2: i32,
        arg3: *const u8,
        arg4: *mut pcre2_general_context_8,
    ) -> i32;
}
extern "C" {
    pub fn pcre2_serialize_get_number_of_codes_8(arg1: *const u8) -> i32;
}
extern "C" {
    pub fn pcre2_serialize_free_8(arg1: *mut u8);
}
extern "C" {
    pub fn pcre2_substitute_8(
        arg1: *const pcre2_code_8,
        arg2: PCRE2_SPTR8,
        arg3: usize,
        arg4: usize,
        arg5: u32,
        arg6: *mut pcre2_match_data_8,
        arg7: *mut pcre2_match_context_8,
        arg8: PCRE2_SPTR8,
        arg9: usize,
        arg10: *mut PCRE2_UCHAR8,
        arg11: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_jit_compile_8(arg1: *mut pcre2_code_8, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_jit_match_8(
        arg1: *const pcre2_code_8,
        arg2: PCRE2_SPTR8,
        arg3: usize,
        arg4: usize,
        arg5: u32,
        arg6: *mut pcre2_match_data_8,
        arg7: *mut pcre2_match_context_8,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_jit_free_unused_memory_8(arg1: *mut pcre2_general_context_8);
}
extern "C" {
    pub fn pcre2_jit_stack_create_8(
        arg1: usize,
        arg2: usize,
        arg3: *mut pcre2_general_context_8,
    ) -> *mut pcre2_jit_stack_8;
}
extern "C" {
    pub fn pcre2_jit_stack_assign_8(
        arg1: *mut pcre2_match_context_8,
        arg2: pcre2_jit_callback_8,
        arg3: *mut ::libc::c_void,
    );
}
extern "C" {
    pub fn pcre2_jit_stack_free_8(arg1: *mut pcre2_jit_stack_8);
}
extern "C" {
    pub fn pcre2_get_error_message_8(
        arg1: ::libc::c_int,
        arg2: *mut PCRE2_UCHAR8,
        arg3: usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_maketables_8(arg1: *mut pcre2_general_context_8) -> *const u8;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_general_context_16 {
    _unused: [u8; 0],
}
pub type pcre2_general_context_16 = pcre2_real_general_context_16;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_compile_context_16 {
    _unused: [u8; 0],
}
pub type pcre2_compile_context_16 = pcre2_real_compile_context_16;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_match_context_16 {
    _unused: [u8; 0],
}
pub type pcre2_match_context_16 = pcre2_real_match_context_16;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_convert_context_16 {
    _unused: [u8; 0],
}
pub type pcre2_convert_context_16 = pcre2_real_convert_context_16;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_code_16 {
    _unused: [u8; 0],
}
pub type pcre2_code_16 = pcre2_real_code_16;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_match_data_16 {
    _unused: [u8; 0],
}
pub type pcre2_match_data_16 = pcre2_real_match_data_16;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_jit_stack_16 {
    _unused: [u8; 0],
}
pub type pcre2_jit_stack_16 = pcre2_real_jit_stack_16;
pub type pcre2_jit_callback_16 = ::std::option::Option<
    unsafe extern "C" fn(arg1: *mut ::libc::c_void) -> *mut pcre2_jit_stack_16,
>;
extern "C" {
    pub fn pcre2_config_16(arg1: u32, arg2: *mut ::libc::c_void) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_general_context_copy_16(
        arg1: *mut pcre2_general_context_16,
    ) -> *mut pcre2_general_context_16;
}
extern "C" {
    pub fn pcre2_general_context_create_16(
        arg1: ::std::option::Option<
            unsafe extern "C" fn(arg1: usize, arg2: *mut ::libc::c_void) -> *mut ::libc::c_void,
        >,
        arg2: ::std::option::Option<
            unsafe extern "C" fn(arg1: *mut ::libc::c_void, arg2: *mut ::libc::c_void),
        >,
        arg3: *mut ::libc::c_void,
    ) -> *mut pcre2_general_context_16;
}
extern "C" {
    pub fn pcre2_general_context_free_16(arg1: *mut pcre2_general_context_16);
}
extern "C" {
    pub fn pcre2_compile_context_copy_16(
        arg1: *mut pcre2_compile_context_16,
    ) -> *mut pcre2_compile_context_16;
}
extern "C" {
    pub fn pcre2_compile_context_create_16(
        arg1: *mut pcre2_general_context_16,
    ) -> *mut pcre2_compile_context_16;
}
extern "C" {
    pub fn pcre2_compile_context_free_16(arg1: *mut pcre2_compile_context_16);
}
extern "C" {
    pub fn pcre2_set_bsr_16(arg1: *mut pcre2_compile_context_16, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_character_tables_16(
        arg1: *mut pcre2_compile_context_16,
        arg2: *const ::libc::c_uchar,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_compile_extra_options_16(
        arg1: *mut pcre2_compile_context_16,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_max_pattern_length_16(
        arg1: *mut pcre2_compile_context_16,
        arg2: usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_newline_16(arg1: *mut pcre2_compile_context_16, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_parens_nest_limit_16(
        arg1: *mut pcre2_compile_context_16,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_compile_recursion_guard_16(
        arg1: *mut pcre2_compile_context_16,
        arg2: ::std::option::Option<
            unsafe extern "C" fn(arg1: u32, arg2: *mut ::libc::c_void) -> ::libc::c_int,
        >,
        arg3: *mut ::libc::c_void,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_convert_context_copy_16(
        arg1: *mut pcre2_convert_context_16,
    ) -> *mut pcre2_convert_context_16;
}
extern "C" {
    pub fn pcre2_convert_context_create_16(
        arg1: *mut pcre2_general_context_16,
    ) -> *mut pcre2_convert_context_16;
}
extern "C" {
    pub fn pcre2_convert_context_free_16(arg1: *mut pcre2_convert_context_16);
}
extern "C" {
    pub fn pcre2_set_glob_escape_16(
        arg1: *mut pcre2_convert_context_16,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_glob_separator_16(
        arg1: *mut pcre2_convert_context_16,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_pattern_convert_16(
        arg1: PCRE2_SPTR16,
        arg2: usize,
        arg3: u32,
        arg4: *mut *mut PCRE2_UCHAR16,
        arg5: *mut usize,
        arg6: *mut pcre2_convert_context_16,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_converted_pattern_free_16(arg1: *mut PCRE2_UCHAR16);
}
extern "C" {
    pub fn pcre2_match_context_copy_16(
        arg1: *mut pcre2_match_context_16,
    ) -> *mut pcre2_match_context_16;
}
extern "C" {
    pub fn pcre2_match_context_create_16(
        arg1: *mut pcre2_general_context_16,
    ) -> *mut pcre2_match_context_16;
}
extern "C" {
    pub fn pcre2_match_context_free_16(arg1: *mut pcre2_match_context_16);
}
extern "C" {
    pub fn pcre2_set_depth_limit_16(arg1: *mut pcre2_match_context_16, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_heap_limit_16(arg1: *mut pcre2_match_context_16, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_match_limit_16(arg1: *mut pcre2_match_context_16, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_offset_limit_16(
        arg1: *mut pcre2_match_context_16,
        arg2: usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_recursion_limit_16(
        arg1: *mut pcre2_match_context_16,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_recursion_memory_management_16(
        arg1: *mut pcre2_match_context_16,
        arg2: ::std::option::Option<
            unsafe extern "C" fn(arg1: usize, arg2: *mut ::libc::c_void) -> *mut ::libc::c_void,
        >,
        arg3: ::std::option::Option<
            unsafe extern "C" fn(arg1: *mut ::libc::c_void, arg2: *mut ::libc::c_void),
        >,
        arg4: *mut ::libc::c_void,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_compile_16(
        arg1: PCRE2_SPTR16,
        arg2: usize,
        arg3: u32,
        arg4: *mut ::libc::c_int,
        arg5: *mut usize,
        arg6: *mut pcre2_compile_context_16,
    ) -> *mut pcre2_code_16;
}
extern "C" {
    pub fn pcre2_code_free_16(arg1: *mut pcre2_code_16);
}
extern "C" {
    pub fn pcre2_code_copy_16(arg1: *const pcre2_code_16) -> *mut pcre2_code_16;
}
extern "C" {
    pub fn pcre2_code_copy_with_tables_16(arg1: *const pcre2_code_16) -> *mut pcre2_code_16;
}
extern "C" {
    pub fn pcre2_pattern_info_16(
        arg1: *const pcre2_code_16,
        arg2: u32,
        arg3: *mut ::libc::c_void,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_match_data_create_16(
        arg1: u32,
        arg2: *mut pcre2_general_context_16,
    ) -> *mut pcre2_match_data_16;
}
extern "C" {
    pub fn pcre2_match_data_create_from_pattern_16(
        arg1: *const pcre2_code_16,
        arg2: *mut pcre2_general_context_16,
    ) -> *mut pcre2_match_data_16;
}
extern "C" {
    pub fn pcre2_dfa_match_16(
        arg1: *const pcre2_code_16,
        arg2: PCRE2_SPTR16,
        arg3: usize,
        arg4: usize,
        arg5: u32,
        arg6: *mut pcre2_match_data_16,
        arg7: *mut pcre2_match_context_16,
        arg8: *mut ::libc::c_int,
        arg9: usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_match_16(
        arg1: *const pcre2_code_16,
        arg2: PCRE2_SPTR16,
        arg3: usize,
        arg4: usize,
        arg5: u32,
        arg6: *mut pcre2_match_data_16,
        arg7: *mut pcre2_match_context_16,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_match_data_free_16(arg1: *mut pcre2_match_data_16);
}
extern "C" {
    pub fn pcre2_get_mark_16(arg1: *mut pcre2_match_data_16) -> PCRE2_SPTR16;
}
extern "C" {
    pub fn pcre2_get_ovector_count_16(arg1: *mut pcre2_match_data_16) -> u32;
}
extern "C" {
    pub fn pcre2_get_ovector_pointer_16(arg1: *mut pcre2_match_data_16) -> *mut usize;
}
extern "C" {
    pub fn pcre2_get_startchar_16(arg1: *mut pcre2_match_data_16) -> usize;
}
extern "C" {
    pub fn pcre2_substring_copy_byname_16(
        arg1: *mut pcre2_match_data_16,
        arg2: PCRE2_SPTR16,
        arg3: *mut PCRE2_UCHAR16,
        arg4: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_copy_bynumber_16(
        arg1: *mut pcre2_match_data_16,
        arg2: u32,
        arg3: *mut PCRE2_UCHAR16,
        arg4: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_free_16(arg1: *mut PCRE2_UCHAR16);
}
extern "C" {
    pub fn pcre2_substring_get_byname_16(
        arg1: *mut pcre2_match_data_16,
        arg2: PCRE2_SPTR16,
        arg3: *mut *mut PCRE2_UCHAR16,
        arg4: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_get_bynumber_16(
        arg1: *mut pcre2_match_data_16,
        arg2: u32,
        arg3: *mut *mut PCRE2_UCHAR16,
        arg4: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_length_byname_16(
        arg1: *mut pcre2_match_data_16,
        arg2: PCRE2_SPTR16,
        arg3: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_length_bynumber_16(
        arg1: *mut pcre2_match_data_16,
        arg2: u32,
        arg3: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_nametable_scan_16(
        arg1: *const pcre2_code_16,
        arg2: PCRE2_SPTR16,
        arg3: *mut PCRE2_SPTR16,
        arg4: *mut PCRE2_SPTR16,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_number_from_name_16(
        arg1: *const pcre2_code_16,
        arg2: PCRE2_SPTR16,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_list_free_16(arg1: *mut PCRE2_SPTR16);
}
extern "C" {
    pub fn pcre2_substring_list_get_16(
        arg1: *mut pcre2_match_data_16,
        arg2: *mut *mut *mut PCRE2_UCHAR16,
        arg3: *mut *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_serialize_encode_16(
        arg1: *mut *const pcre2_code_16,
        arg2: i32,
        arg3: *mut *mut u8,
        arg4: *mut usize,
        arg5: *mut pcre2_general_context_16,
    ) -> i32;
}
extern "C" {
    pub fn pcre2_serialize_decode_16(
        arg1: *mut *mut pcre2_code_16,
        arg2: i32,
        arg3: *const u8,
        arg4: *mut pcre2_general_context_16,
    ) -> i32;
}
extern "C" {
    pub fn pcre2_serialize_get_number_of_codes_16(arg1: *const u8) -> i32;
}
extern "C" {
    pub fn pcre2_serialize_free_16(arg1: *mut u8);
}
extern "C" {
    pub fn pcre2_substitute_16(
        arg1: *const pcre2_code_16,
        arg2: PCRE2_SPTR16,
        arg3: usize,
        arg4: usize,
        arg5: u32,
        arg6: *mut pcre2_match_data_16,
        arg7: *mut pcre2_match_context_16,
        arg8: PCRE2_SPTR16,
        arg9: usize,
        arg10: *mut PCRE2_UCHAR16,
        arg11: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_jit_compile_16(arg1: *mut pcre2_code_16, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_jit_match_16(
        arg1: *const pcre2_code_16,
        arg2: PCRE2_SPTR16,
        arg3: usize,
        arg4: usize,
        arg5: u32,
        arg6: *mut pcre2_match_data_16,
        arg7: *mut pcre2_match_context_16,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_jit_free_unused_memory_16(arg1: *mut pcre2_general_context_16);
}
extern "C" {
    pub fn pcre2_jit_stack_create_16(
        arg1: usize,
        arg2: usize,
        arg3: *mut pcre2_general_context_16,
    ) -> *mut pcre2_jit_stack_16;
}
extern "C" {
    pub fn pcre2_jit_stack_assign_16(
        arg1: *mut pcre2_match_context_16,
        arg2: pcre2_jit_callback_16,
        arg3: *mut ::libc::c_void,
    );
}
extern "C" {
    pub fn pcre2_jit_stack_free_16(arg1: *mut pcre2_jit_stack_16);
}
extern "C" {
    pub fn pcre2_get_error_message_16(
        arg1: ::libc::c_int,
        arg2: *mut PCRE2_UCHAR16,
        arg3: usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_maketables_16(arg1: *mut pcre2_general_context_16) -> *const u8;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_general_context_32 {
    _unused: [u8; 0],
}
pub type pcre2_general_context_32 = pcre2_real_general_context_32;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_compile_context_32 {
    _unused: [u8; 0],
}
pub type pcre2_compile_context_32 = pcre2_real_compile_context_32;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_match_context_32 {
    _unused: [u8; 0],
}
pub type pcre2_match_context_32 = pcre2_real_match_context_32;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_convert_context_32 {
    _unused: [u8; 0],
}
pub type pcre2_convert_context_32 = pcre2_real_convert_context_32;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_code_32 {
    _unused: [u8; 0],
}
pub type pcre2_code_32 = pcre2_real_code_32;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_match_data_32 {
    _unused: [u8; 0],
}
pub type pcre2_match_data_32 = pcre2_real_match_data_32;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct pcre2_real_jit_stack_32 {
    _unused: [u8; 0],
}
pub type pcre2_jit_stack_32 = pcre2_real_jit_stack_32;
pub type pcre2_jit_callback_32 = ::std::option::Option<
    unsafe extern "C" fn(arg1: *mut ::libc::c_void) -> *mut pcre2_jit_stack_32,
>;
extern "C" {
    pub fn pcre2_config_32(arg1: u32, arg2: *mut ::libc::c_void) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_general_context_copy_32(
        arg1: *mut pcre2_general_context_32,
    ) -> *mut pcre2_general_context_32;
}
extern "C" {
    pub fn pcre2_general_context_create_32(
        arg1: ::std::option::Option<
            unsafe extern "C" fn(arg1: usize, arg2: *mut ::libc::c_void) -> *mut ::libc::c_void,
        >,
        arg2: ::std::option::Option<
            unsafe extern "C" fn(arg1: *mut ::libc::c_void, arg2: *mut ::libc::c_void),
        >,
        arg3: *mut ::libc::c_void,
    ) -> *mut pcre2_general_context_32;
}
extern "C" {
    pub fn pcre2_general_context_free_32(arg1: *mut pcre2_general_context_32);
}
extern "C" {
    pub fn pcre2_compile_context_copy_32(
        arg1: *mut pcre2_compile_context_32,
    ) -> *mut pcre2_compile_context_32;
}
extern "C" {
    pub fn pcre2_compile_context_create_32(
        arg1: *mut pcre2_general_context_32,
    ) -> *mut pcre2_compile_context_32;
}
extern "C" {
    pub fn pcre2_compile_context_free_32(arg1: *mut pcre2_compile_context_32);
}
extern "C" {
    pub fn pcre2_set_bsr_32(arg1: *mut pcre2_compile_context_32, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_character_tables_32(
        arg1: *mut pcre2_compile_context_32,
        arg2: *const ::libc::c_uchar,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_compile_extra_options_32(
        arg1: *mut pcre2_compile_context_32,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_max_pattern_length_32(
        arg1: *mut pcre2_compile_context_32,
        arg2: usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_newline_32(arg1: *mut pcre2_compile_context_32, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_parens_nest_limit_32(
        arg1: *mut pcre2_compile_context_32,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_compile_recursion_guard_32(
        arg1: *mut pcre2_compile_context_32,
        arg2: ::std::option::Option<
            unsafe extern "C" fn(arg1: u32, arg2: *mut ::libc::c_void) -> ::libc::c_int,
        >,
        arg3: *mut ::libc::c_void,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_convert_context_copy_32(
        arg1: *mut pcre2_convert_context_32,
    ) -> *mut pcre2_convert_context_32;
}
extern "C" {
    pub fn pcre2_convert_context_create_32(
        arg1: *mut pcre2_general_context_32,
    ) -> *mut pcre2_convert_context_32;
}
extern "C" {
    pub fn pcre2_convert_context_free_32(arg1: *mut pcre2_convert_context_32);
}
extern "C" {
    pub fn pcre2_set_glob_escape_32(
        arg1: *mut pcre2_convert_context_32,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_glob_separator_32(
        arg1: *mut pcre2_convert_context_32,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_pattern_convert_32(
        arg1: PCRE2_SPTR32,
        arg2: usize,
        arg3: u32,
        arg4: *mut *mut PCRE2_UCHAR32,
        arg5: *mut usize,
        arg6: *mut pcre2_convert_context_32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_converted_pattern_free_32(arg1: *mut PCRE2_UCHAR32);
}
extern "C" {
    pub fn pcre2_match_context_copy_32(
        arg1: *mut pcre2_match_context_32,
    ) -> *mut pcre2_match_context_32;
}
extern "C" {
    pub fn pcre2_match_context_create_32(
        arg1: *mut pcre2_general_context_32,
    ) -> *mut pcre2_match_context_32;
}
extern "C" {
    pub fn pcre2_match_context_free_32(arg1: *mut pcre2_match_context_32);
}
extern "C" {
    pub fn pcre2_set_depth_limit_32(arg1: *mut pcre2_match_context_32, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_heap_limit_32(arg1: *mut pcre2_match_context_32, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_match_limit_32(arg1: *mut pcre2_match_context_32, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_offset_limit_32(
        arg1: *mut pcre2_match_context_32,
        arg2: usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_recursion_limit_32(
        arg1: *mut pcre2_match_context_32,
        arg2: u32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_set_recursion_memory_management_32(
        arg1: *mut pcre2_match_context_32,
        arg2: ::std::option::Option<
            unsafe extern "C" fn(arg1: usize, arg2: *mut ::libc::c_void) -> *mut ::libc::c_void,
        >,
        arg3: ::std::option::Option<
            unsafe extern "C" fn(arg1: *mut ::libc::c_void, arg2: *mut ::libc::c_void),
        >,
        arg4: *mut ::libc::c_void,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_compile_32(
        arg1: PCRE2_SPTR32,
        arg2: usize,
        arg3: u32,
        arg4: *mut ::libc::c_int,
        arg5: *mut usize,
        arg6: *mut pcre2_compile_context_32,
    ) -> *mut pcre2_code_32;
}
extern "C" {
    pub fn pcre2_code_free_32(arg1: *mut pcre2_code_32);
}
extern "C" {
    pub fn pcre2_code_copy_32(arg1: *const pcre2_code_32) -> *mut pcre2_code_32;
}
extern "C" {
    pub fn pcre2_code_copy_with_tables_32(arg1: *const pcre2_code_32) -> *mut pcre2_code_32;
}
extern "C" {
    pub fn pcre2_pattern_info_32(
        arg1: *const pcre2_code_32,
        arg2: u32,
        arg3: *mut ::libc::c_void,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_match_data_create_32(
        arg1: u32,
        arg2: *mut pcre2_general_context_32,
    ) -> *mut pcre2_match_data_32;
}
extern "C" {
    pub fn pcre2_match_data_create_from_pattern_32(
        arg1: *const pcre2_code_32,
        arg2: *mut pcre2_general_context_32,
    ) -> *mut pcre2_match_data_32;
}
extern "C" {
    pub fn pcre2_dfa_match_32(
        arg1: *const pcre2_code_32,
        arg2: PCRE2_SPTR32,
        arg3: usize,
        arg4: usize,
        arg5: u32,
        arg6: *mut pcre2_match_data_32,
        arg7: *mut pcre2_match_context_32,
        arg8: *mut ::libc::c_int,
        arg9: usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_match_32(
        arg1: *const pcre2_code_32,
        arg2: PCRE2_SPTR32,
        arg3: usize,
        arg4: usize,
        arg5: u32,
        arg6: *mut pcre2_match_data_32,
        arg7: *mut pcre2_match_context_32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_match_data_free_32(arg1: *mut pcre2_match_data_32);
}
extern "C" {
    pub fn pcre2_get_mark_32(arg1: *mut pcre2_match_data_32) -> PCRE2_SPTR32;
}
extern "C" {
    pub fn pcre2_get_ovector_count_32(arg1: *mut pcre2_match_data_32) -> u32;
}
extern "C" {
    pub fn pcre2_get_ovector_pointer_32(arg1: *mut pcre2_match_data_32) -> *mut usize;
}
extern "C" {
    pub fn pcre2_get_startchar_32(arg1: *mut pcre2_match_data_32) -> usize;
}
extern "C" {
    pub fn pcre2_substring_copy_byname_32(
        arg1: *mut pcre2_match_data_32,
        arg2: PCRE2_SPTR32,
        arg3: *mut PCRE2_UCHAR32,
        arg4: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_copy_bynumber_32(
        arg1: *mut pcre2_match_data_32,
        arg2: u32,
        arg3: *mut PCRE2_UCHAR32,
        arg4: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_free_32(arg1: *mut PCRE2_UCHAR32);
}
extern "C" {
    pub fn pcre2_substring_get_byname_32(
        arg1: *mut pcre2_match_data_32,
        arg2: PCRE2_SPTR32,
        arg3: *mut *mut PCRE2_UCHAR32,
        arg4: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_get_bynumber_32(
        arg1: *mut pcre2_match_data_32,
        arg2: u32,
        arg3: *mut *mut PCRE2_UCHAR32,
        arg4: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_length_byname_32(
        arg1: *mut pcre2_match_data_32,
        arg2: PCRE2_SPTR32,
        arg3: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_length_bynumber_32(
        arg1: *mut pcre2_match_data_32,
        arg2: u32,
        arg3: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_nametable_scan_32(
        arg1: *const pcre2_code_32,
        arg2: PCRE2_SPTR32,
        arg3: *mut PCRE2_SPTR32,
        arg4: *mut PCRE2_SPTR32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_number_from_name_32(
        arg1: *const pcre2_code_32,
        arg2: PCRE2_SPTR32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_substring_list_free_32(arg1: *mut PCRE2_SPTR32);
}
extern "C" {
    pub fn pcre2_substring_list_get_32(
        arg1: *mut pcre2_match_data_32,
        arg2: *mut *mut *mut PCRE2_UCHAR32,
        arg3: *mut *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_serialize_encode_32(
        arg1: *mut *const pcre2_code_32,
        arg2: i32,
        arg3: *mut *mut u8,
        arg4: *mut usize,
        arg5: *mut pcre2_general_context_32,
    ) -> i32;
}
extern "C" {
    pub fn pcre2_serialize_decode_32(
        arg1: *mut *mut pcre2_code_32,
        arg2: i32,
        arg3: *const u8,
        arg4: *mut pcre2_general_context_32,
    ) -> i32;
}
extern "C" {
    pub fn pcre2_serialize_get_number_of_codes_32(arg1: *const u8) -> i32;
}
extern "C" {
    pub fn pcre2_serialize_free_32(arg1: *mut u8);
}
extern "C" {
    pub fn pcre2_substitute_32(
        arg1: *const pcre2_code_32,
        arg2: PCRE2_SPTR32,
        arg3: usize,
        arg4: usize,
        arg5: u32,
        arg6: *mut pcre2_match_data_32,
        arg7: *mut pcre2_match_context_32,
        arg8: PCRE2_SPTR32,
        arg9: usize,
        arg10: *mut PCRE2_UCHAR32,
        arg11: *mut usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_jit_compile_32(arg1: *mut pcre2_code_32, arg2: u32) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_jit_match_32(
        arg1: *const pcre2_code_32,
        arg2: PCRE2_SPTR32,
        arg3: usize,
        arg4: usize,
        arg5: u32,
        arg6: *mut pcre2_match_data_32,
        arg7: *mut pcre2_match_context_32,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_jit_free_unused_memory_32(arg1: *mut pcre2_general_context_32);
}
extern "C" {
    pub fn pcre2_jit_stack_create_32(
        arg1: usize,
        arg2: usize,
        arg3: *mut pcre2_general_context_32,
    ) -> *mut pcre2_jit_stack_32;
}
extern "C" {
    pub fn pcre2_jit_stack_assign_32(
        arg1: *mut pcre2_match_context_32,
        arg2: pcre2_jit_callback_32,
        arg3: *mut ::libc::c_void,
    );
}
extern "C" {
    pub fn pcre2_jit_stack_free_32(arg1: *mut pcre2_jit_stack_32);
}
extern "C" {
    pub fn pcre2_get_error_message_32(
        arg1: ::libc::c_int,
        arg2: *mut PCRE2_UCHAR32,
        arg3: usize,
    ) -> ::libc::c_int;
}
extern "C" {
    pub fn pcre2_maketables_32(arg1: *mut pcre2_general_context_32) -> *const u8;
}
