Showing content from http://www.ncbi.nlm.nih.gov/IEB/ToolBox/CPP_DOC/doxyhtml/pcre2__intmodedep_8h_source.html below:
NCBI C++ ToolKit: src/util/regexp/pcre2_intmodedep.h Source File
60 #undef FORWARDCHARTEST 74 #undef MAX_PATTERN_SIZE 75 #undef MAX_UTF_SINGLE_CU 102 #if PCRE2_CODE_UNIT_WIDTH == 8 106 (a[n] = (PCRE2_UCHAR)((d) >> 8)), \ 107 (a[(n)+1] = (PCRE2_UCHAR)((d) & 255)) 109 (unsigned int)(((a)[n] << 8) | (a)[(n)+1]) 110 #define MAX_PATTERN_SIZE (1 << 16) 114 (a[n] = (PCRE2_UCHAR)((d) >> 16)), \ 115 (a[(n)+1] = (PCRE2_UCHAR)((d) >> 8)), \ 116 (a[(n)+2] = (PCRE2_UCHAR)((d) & 255)) 118 (unsigned int)(((a)[n] << 16) | ((a)[(n)+1] << 8) | (a)[(n)+2]) 119 #define MAX_PATTERN_SIZE (1 << 24) 123 (a[n] = (PCRE2_UCHAR)((d) >> 24)), \ 124 (a[(n)+1] = (PCRE2_UCHAR)((d) >> 16)), \ 125 (a[(n)+2] = (PCRE2_UCHAR)((d) >> 8)), \ 126 (a[(n)+3] = (PCRE2_UCHAR)((d) & 255)) 128 (unsigned int)(((a)[n] << 24) | ((a)[(n)+1] << 16) | ((a)[(n)+2] << 8) | (a)[(n)+3]) 129 #define MAX_PATTERN_SIZE (1 << 30) 132 #error LINK_SIZE must be 2, 3, or 4 138 #elif PCRE2_CODE_UNIT_WIDTH == 16 144 (a[n] = (PCRE2_UCHAR)(d)) 147 #define MAX_PATTERN_SIZE (1 << 16) 149 #elif LINK_SIZE == 3 || LINK_SIZE == 4 153 (a[n] = (PCRE2_UCHAR)((d) >> 16)), \ 154 (a[(n)+1] = (PCRE2_UCHAR)((d) & 65535)) 156 (unsigned int)(((a)[n] << 16) | (a)[(n)+1]) 157 #define MAX_PATTERN_SIZE (1 << 30) 160 #error LINK_SIZE must be 2, 3, or 4 166 #elif PCRE2_CODE_UNIT_WIDTH == 32 173 #define MAX_PATTERN_SIZE (1 << 30) 176 #error Unsupported compiling mode 192 #if PCRE2_CODE_UNIT_WIDTH == 8 194 #define GET2(a,n) (unsigned int)(((a)[n] << 8) | (a)[(n)+1]) 195 #define PUT2(a,n,d) a[n] = (d) >> 8, a[(n)+1] = (d) & 255 199 #define GET2(a,n) a[n] 200 #define PUT2(a,n,d) a[n] = d 211 #if PCRE2_CODE_UNIT_WIDTH == 8 212 #define MAX_255(c) TRUE 213 #define MAX_MARK ((1u << 8) - 1) 214 #define TABLE_GET(c, table, default) ((table)[c]) 215 #ifdef SUPPORT_UNICODE 216 #define SUPPORT_WIDE_CHARS 217 #define CHMAX_255(c) ((c) <= 255u) 219 #define CHMAX_255(c) TRUE 223 #define CHMAX_255(c) ((c) <= 255u) 224 #define MAX_255(c) ((c) <= 255u) 225 #define MAX_MARK ((1u << 16) - 1) 226 #define SUPPORT_WIDE_CHARS 227 #define TABLE_GET(c, table, default) (MAX_255(c)? ((table)[c]):(default)) 243 #define UCHAR21(eptr) (*(eptr)) 244 #define UCHAR21TEST(eptr) (*(eptr)) 245 #define UCHAR21INC(eptr) (*(eptr)++) 246 #define UCHAR21INCTEST(eptr) (*(eptr)++) 255 #ifndef SUPPORT_UNICODE 261 #define GETCHAR(c, eptr) c = *eptr; 262 #define GETCHARTEST(c, eptr) c = *eptr; 263 #define GETCHARINC(c, eptr) c = *eptr++; 264 #define GETCHARINCTEST(c, eptr) c = *eptr++; 265 #define GETCHARLEN(c, eptr, len) c = *eptr; 266 #define PUTCHAR(c, p) (*p = c, 1) 277 #if PCRE2_CODE_UNIT_WIDTH == 8 278 #define MAYBE_UTF_MULTI 282 #define MAX_UTF_SINGLE_CU 127 286 #define HAS_EXTRALEN(c) HASUTF8EXTRALEN(c) 291 #define GET_EXTRALEN(c) (PRIV(utf8_table4)[(c) & 0x3fu]) 296 #define NOT_FIRSTCU(c) (((c) & 0xc0u) == 0x80u) 301 #define GETCHAR(c, eptr) \ 303 if (c >= 0xc0u) GETUTF8(c, eptr); 308 #define GETCHARTEST(c, eptr) \ 310 if (utf && c >= 0xc0u) GETUTF8(c, eptr); 315 #define GETCHARINC(c, eptr) \ 317 if (c >= 0xc0u) GETUTF8INC(c, eptr); 322 #define GETCHARINCTEST(c, eptr) \ 324 if (utf && c >= 0xc0u) GETUTF8INC(c, eptr); 329 #define GETCHARLEN(c, eptr, len) \ 331 if (c >= 0xc0u) GETUTF8LEN(c, eptr, len); 337 #define GETCHARLENTEST(c, eptr, len) \ 339 if (utf && c >= 0xc0u) GETUTF8LEN(c, eptr, len); 345 #define BACKCHAR(eptr) while((*eptr & 0xc0u) == 0x80u) eptr-- 348 #define FORWARDCHAR(eptr) while((*eptr & 0xc0u) == 0x80u) eptr++ 349 #define FORWARDCHARTEST(eptr,end) while(eptr < end && (*eptr & 0xc0u) == 0x80u) eptr++ 352 #define ACROSSCHAR(condition, eptr, action) \ 353 while((condition) && ((*eptr) & 0xc0u) == 0x80u) action 357 #define PUTCHAR(c, p) ((utf && c > MAX_UTF_SINGLE_CU)? \ 358 PRIV(ord2utf)(c,p) : (*p = c, 1)) 363 #elif PCRE2_CODE_UNIT_WIDTH == 16 364 #define MAYBE_UTF_MULTI 368 #define MAX_UTF_SINGLE_CU 65535 372 #define HAS_EXTRALEN(c) (((c) & 0xfc00u) == 0xd800u) 377 #define GET_EXTRALEN(c) 1 382 #define NOT_FIRSTCU(c) (((c) & 0xfc00u) == 0xdc00u) 387 #define GETUTF16(c, eptr) \ 388 { c = (((c & 0x3ffu) << 10) | (eptr[1] & 0x3ffu)) + 0x10000u; } 393 #define GETCHAR(c, eptr) \ 395 if ((c & 0xfc00u) == 0xd800u) GETUTF16(c, eptr); 400 #define GETCHARTEST(c, eptr) \ 402 if (utf && (c & 0xfc00u) == 0xd800u) GETUTF16(c, eptr); 407 #define GETUTF16INC(c, eptr) \ 408 { c = (((c & 0x3ffu) << 10) | (*eptr++ & 0x3ffu)) + 0x10000u; } 413 #define GETCHARINC(c, eptr) \ 415 if ((c & 0xfc00u) == 0xd800u) GETUTF16INC(c, eptr); 420 #define GETCHARINCTEST(c, eptr) \ 422 if (utf && (c & 0xfc00u) == 0xd800u) GETUTF16INC(c, eptr); 427 #define GETUTF16LEN(c, eptr, len) \ 428 { c = (((c & 0x3ffu) << 10) | (eptr[1] & 0x3ffu)) + 0x10000u; len++; } 434 #define GETCHARLEN(c, eptr, len) \ 436 if ((c & 0xfc00u) == 0xd800u) GETUTF16LEN(c, eptr, len); 442 #define GETCHARLENTEST(c, eptr, len) \ 444 if (utf && (c & 0xfc00u) == 0xd800u) GETUTF16LEN(c, eptr, len); 451 #define BACKCHAR(eptr) if ((*eptr & 0xfc00u) == 0xdc00u) eptr-- 454 #define FORWARDCHAR(eptr) if ((*eptr & 0xfc00u) == 0xdc00u) eptr++ 455 #define FORWARDCHARTEST(eptr,end) if (eptr < end && (*eptr & 0xfc00u) == 0xdc00u) eptr++ 458 #define ACROSSCHAR(condition, eptr, action) \ 459 if ((condition) && ((*eptr) & 0xfc00u) == 0xdc00u) action 463 #define PUTCHAR(c, p) ((utf && c > MAX_UTF_SINGLE_CU)? \ 464 PRIV(ord2utf)(c,p) : (*p = c, 1)) 474 #define MAX_UTF_SINGLE_CU (0x10ffffu) 475 #define HAS_EXTRALEN(c) (0) 476 #define GET_EXTRALEN(c) (0) 477 #define NOT_FIRSTCU(c) (0) 482 #define GETCHAR(c, eptr) \ 488 #define GETCHARTEST(c, eptr) \ 494 #define GETCHARINC(c, eptr) \ 500 #define GETCHARINCTEST(c, eptr) \ 507 #define GETCHARLEN(c, eptr, len) \ 514 #define GETCHARLENTEST(c, eptr, len) \ 524 #define BACKCHAR(eptr) do { } while (0) 528 #define FORWARDCHAR(eptr) do { } while (0) 529 #define FORWARDCHARTEST(eptr,end) do { } while (0) 533 #define ACROSSCHAR(condition, eptr, action) do { } while (0) 537 #define PUTCHAR(c, p) (*p = c, 1) 545 #define CU2BYTES(x) ((x)*((PCRE2_CODE_UNIT_WIDTH/8))) 546 #define BYTES2CU(x) ((x)/((PCRE2_CODE_UNIT_WIDTH/8))) 547 #define PUTINC(a,n,d) PUT(a,n,d), a += LINK_SIZE 548 #define PUT2INC(a,n,d) PUT2(a,n,d), a += IMM2_SIZE 585 void
*jit_callback_data;
614 #undef CODE_BLOCKSIZE_TYPE 615 #define CODE_BLOCKSIZE_TYPE PCRE2_SIZE 617 #undef LOOKBEHIND_MAX 618 #define LOOKBEHIND_MAX UINT16_MAX 679 #ifndef PCRE2_PCRE2TEST 816 #if PCRE2_CODE_UNIT_WIDTH == 8 818 #elif PCRE2_CODE_UNIT_WIDTH == 16 859 #define HEAPFRAME_ALIGNMENT offsetof(heapframe_align, frame)
unsigned int
A callback function used to compare two keys in a database.
#define pcre2_substitute_callout_block
#define pcre2_jit_callback
#define pcre2_callout_block
struct recurse_cache recurse_cache
struct recurse_check recurse_check
struct pcre2_real_convert_context pcre2_real_convert_context
struct heapframe_align heapframe_align
struct match_block match_block
struct pcre2_real_compile_context pcre2_real_compile_context
struct pcre2_real_match_data pcre2_real_match_data
struct pcre2_real_match_context pcre2_real_match_context
#define CODE_BLOCKSIZE_TYPE
struct branch_chain branch_chain
struct named_group named_group
struct pcre2_real_jit_stack pcre2_real_jit_stack
struct pcre2_real_code pcre2_real_code
struct heapframe heapframe
struct pcre2_real_general_context pcre2_real_general_context
char check_heapframe_size[((sizeof(heapframe) % sizeof(PCRE2_SIZE))==0)?(+1):(-1)]
struct dfa_match_block dfa_match_block
struct compile_block compile_block
struct parsed_recurse_check parsed_recurse_check
struct dfa_recursion_info dfa_recursion_info
static PCRE2_JIT_STACK * jit_callback(void *arg)
PCRE2_UCHAR * current_branch
struct branch_chain * outer
uint32_t * parsed_pattern_end
PCRE2_SIZE workspace_size
uint32_t class_range_start
uint32_t * parsed_pattern
pcre2_real_compile_context * cx
PCRE2_SIZE small_ref_offset[10]
uint32_t max_varlookbehind
uint32_t named_group_list_size
named_group * named_groups
uint32_t external_options
PCRE2_SPTR start_workspace
int(* callout)(pcre2_callout_block *, void *)
dfa_recursion_info * recursive
PCRE2_SPTR start_used_ptr
uint32_t match_call_count
uint32_t match_limit_depth
PCRE2_SPTR subject_position
struct dfa_recursion_info * prevrec
PCRE2_SIZE last_group_offset
uint32_t group_frame_type
PCRE2_SPTR recurse_last_used
PCRE2_SIZE ovector[131072]
PCRE2_SPTR verb_ecode_ptr
uint32_t verb_current_recurse
int(* callout)(pcre2_callout_block *, void *)
uint32_t match_call_count
uint32_t match_limit_depth
PCRE2_SPTR start_used_ptr
PCRE2_SPTR true_end_subject
PCRE2_SIZE end_offset_top
struct parsed_recurse_check * prev
uint16_t newline_convention
int(* stack_guard)(uint32_t, void *)
uint16_t newline_convention
PCRE2_SIZE max_pattern_length
PCRE2_SIZE max_pattern_compiled_length
uint32_t parens_nest_limit
uint32_t max_varlookbehind
int(* callout)(pcre2_callout_block *, void *)
void * substitute_callout_data
int(* substitute_callout)(pcre2_substitute_callout_block *, void *)
PCRE2_SIZE heapframes_size
struct heapframe * heapframes
const pcre2_real_code * code
PCRE2_SIZE subject_length
PCRE2_SIZE ovector[131072]
struct recurse_check * prev
RetroSearch is an open source project built by @garambo
| Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4