internal.h File Reference

#include "config.h"
#include <ctype.h>
#include <limits.h>
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "pcre.h"

Include dependency graph for internal.h:

Go to the source code of this file.

Data Structures

struct  real_pcre
struct  pcre_study_data
struct  compile_data
struct  branch_chain
struct  recursion_info
struct  match_data

Defines

#define memmove(a, b, c)   pcre_memmove(a, b, c)
#define PUTINC(a, n, d)   PUT(a,n,d), a += LINK_SIZE
#define PUT2(a, n, d)
#define GET2(a, n)   (((a)[n] << 8) | (a)[(n)+1])
#define PUT2INC(a, n, d)   PUT2(a,n,d), a += 2
#define PCRE_DEFINITION
#define offsetof(p_type, field)   ((size_t)&(((p_type *)0)->field))
#define PCRE_IMS   (PCRE_CASELESS|PCRE_MULTILINE|PCRE_DOTALL)
#define PCRE_FIRSTSET   0x40000000
#define PCRE_REQCHSET   0x20000000
#define PCRE_STARTLINE   0x10000000
#define PCRE_ICHANGED   0x08000000
#define PCRE_STUDY_MAPPED   0x01
#define PUBLIC_OPTIONS
#define PUBLIC_EXEC_OPTIONS   (PCRE_ANCHORED|PCRE_NOTBOL|PCRE_NOTEOL|PCRE_NOTEMPTY)
#define PUBLIC_STUDY_OPTIONS   0
#define MAGIC_NUMBER   0x50435245UL
#define REQ_UNSET   (-2)
#define REQ_NONE   (-1)
#define REQ_CASELESS   0x0100
#define REQ_VARY   0x0200
#define FALSE   0
#define TRUE   1
#define ESC_e   27
#define ESC_f   '\f'
#define ESC_n   NEWLINE
#define ESC_r   '\r'
#define ESC_t   '\t'
#define XCL_NOT   0x01
#define XCL_MAP   0x02
#define XCL_END   0
#define XCL_SINGLE   1
#define XCL_RANGE   2
#define OP_NAME_LIST
#define OP_LENGTHS
#define EXTRACT_BASIC_MAX   150
#define CREF_RECURSE   0xffff
#define ERR1   "\\ at end of pattern"
#define ERR2   "\\c at end of pattern"
#define ERR3   "unrecognized character follows \\"
#define ERR4   "numbers out of order in {} quantifier"
#define ERR5   "number too big in {} quantifier"
#define ERR6   "missing terminating ] for character class"
#define ERR7   "invalid escape sequence in character class"
#define ERR8   "range out of order in character class"
#define ERR9   "nothing to repeat"
#define ERR10   "operand of unlimited repeat could match the empty string"
#define ERR11   "internal error: unexpected repeat"
#define ERR12   "unrecognized character after (?"
#define ERR13   "POSIX named classes are supported only within a class"
#define ERR14   "missing )"
#define ERR15   "reference to non-existent subpattern"
#define ERR16   "erroffset passed as NULL"
#define ERR17   "unknown option bit(s) set"
#define ERR18   "missing ) after comment"
#define ERR19   "parentheses nested too deeply"
#define ERR20   "regular expression too large"
#define ERR21   "failed to get memory"
#define ERR22   "unmatched parentheses"
#define ERR23   "internal error: code overflow"
#define ERR24   "unrecognized character after (?<"
#define ERR25   "lookbehind assertion is not fixed length"
#define ERR26   "malformed number after (?("
#define ERR27   "conditional group contains more than two branches"
#define ERR28   "assertion expected after (?("
#define ERR29   "(?R or (?digits must be followed by )"
#define ERR30   "unknown POSIX class name"
#define ERR31   "POSIX collating elements are not supported"
#define ERR32   "this version of PCRE is not compiled with PCRE_UTF8 support"
#define ERR33   "spare error"
#define ERR34   "character value in \\x{...} sequence is too large"
#define ERR35   "invalid condition (?(0)"
#define ERR36   "\\C not allowed in lookbehind assertion"
#define ERR37   "PCRE does not support \\L, \\l, \\N, \\P, \\p, \\U, \\u, or \\X"
#define ERR38   "number after (?C is > 255"
#define ERR39   "closing ) for (?C expected"
#define ERR40   "recursive call could loop indefinitely"
#define ERR41   "unrecognized character after (?P"
#define ERR42   "syntax error after (?P"
#define ERR43   "two named groups have the same name"
#define ctype_space   0x01
#define ctype_letter   0x02
#define ctype_digit   0x04
#define ctype_xdigit   0x08
#define ctype_word   0x10
#define ctype_meta   0x80
#define cbit_space   0
#define cbit_xdigit   32
#define cbit_digit   64
#define cbit_upper   96
#define cbit_lower   128
#define cbit_word   160
#define cbit_graph   192
#define cbit_print   224
#define cbit_punct   256
#define cbit_cntrl   288
#define cbit_length   320
#define lcc_offset   0
#define fcc_offset   256
#define cbits_offset   512
#define ctypes_offset   (cbits_offset + cbit_length)
#define tables_length   (ctypes_offset + 256)
#define POSIX_MALLOC_THRESHOLD   10

Typedefs

typedef int BOOL
typedef unsigned char uschar

Enumerations

enum  {
  ESC_A = 1, ESC_G, ESC_B, ESC_b,
  ESC_D, ESC_d, ESC_S, ESC_s,
  ESC_W, ESC_w, ESC_dum1, ESC_C,
  ESC_Z, ESC_z, ESC_E, ESC_Q,
  ESC_REF
}
enum  {
  OP_END, OP_SOD, OP_SOM, OP_NOT_WORD_BOUNDARY,
  OP_WORD_BOUNDARY, OP_NOT_DIGIT, OP_DIGIT, OP_NOT_WHITESPACE,
  OP_WHITESPACE, OP_NOT_WORDCHAR, OP_WORDCHAR, OP_ANY,
  OP_ANYBYTE, OP_EODN, OP_EOD, OP_OPT,
  OP_CIRC, OP_DOLL, OP_CHARS, OP_NOT,
  OP_STAR, OP_MINSTAR, OP_PLUS, OP_MINPLUS,
  OP_QUERY, OP_MINQUERY, OP_UPTO, OP_MINUPTO,
  OP_EXACT, OP_NOTSTAR, OP_NOTMINSTAR, OP_NOTPLUS,
  OP_NOTMINPLUS, OP_NOTQUERY, OP_NOTMINQUERY, OP_NOTUPTO,
  OP_NOTMINUPTO, OP_NOTEXACT, OP_TYPESTAR, OP_TYPEMINSTAR,
  OP_TYPEPLUS, OP_TYPEMINPLUS, OP_TYPEQUERY, OP_TYPEMINQUERY,
  OP_TYPEUPTO, OP_TYPEMINUPTO, OP_TYPEEXACT, OP_CRSTAR,
  OP_CRMINSTAR, OP_CRPLUS, OP_CRMINPLUS, OP_CRQUERY,
  OP_CRMINQUERY, OP_CRRANGE, OP_CRMINRANGE, OP_CLASS,
  OP_NCLASS, OP_XCLASS, OP_REF, OP_RECURSE,
  OP_CALLOUT, OP_ALT, OP_KET, OP_KETRMAX,
  OP_KETRMIN, OP_ASSERT, OP_ASSERT_NOT, OP_ASSERTBACK,
  OP_ASSERTBACK_NOT, OP_REVERSE, OP_ONCE, OP_COND,
  OP_CREF, OP_BRAZERO, OP_BRAMINZERO, OP_BRANUMBER,
  OP_BRA
}

Functions

void * pcre_memmove (unsigned char *dest, const unsigned char *src, size_t n)


Define Documentation

#define cbit_cntrl   288
 

Definition at line 651 of file internal.h.

#define cbit_digit   64
 

Definition at line 644 of file internal.h.

Referenced by pcre_maketables(), and set_start_bits().

#define cbit_graph   192
 

Definition at line 648 of file internal.h.

#define cbit_length   320
 

Definition at line 652 of file internal.h.

Referenced by pcre_maketables().

#define cbit_lower   128
 

Definition at line 646 of file internal.h.

#define cbit_print   224
 

Definition at line 649 of file internal.h.

#define cbit_punct   256
 

Definition at line 650 of file internal.h.

#define cbit_space   0
 

Definition at line 642 of file internal.h.

Referenced by set_start_bits().

#define cbit_upper   96
 

Definition at line 645 of file internal.h.

#define cbit_word   160
 

Definition at line 647 of file internal.h.

Referenced by pcre_maketables(), and set_start_bits().

#define cbit_xdigit   32
 

Definition at line 643 of file internal.h.

#define cbits_offset   512
 

Definition at line 659 of file internal.h.

Referenced by pcre_compile(), and pcre_study().

#define CREF_RECURSE   0xffff
 

Definition at line 480 of file internal.h.

#define ctype_digit   0x04
 

Definition at line 634 of file internal.h.

Referenced by check_escape(), is_counted_repeat(), and read_repeat_counts().

#define ctype_letter   0x02
 

Definition at line 633 of file internal.h.

Referenced by check_posix_syntax(), and set_bit().

#define ctype_meta   0x80
 

Definition at line 637 of file internal.h.

#define ctype_space   0x01
 

Definition at line 632 of file internal.h.

Referenced by compile_branch().

#define ctype_word   0x10
 

Definition at line 636 of file internal.h.

Referenced by pcre_compile().

#define ctype_xdigit   0x08
 

Definition at line 635 of file internal.h.

Referenced by check_escape().

#define ctypes_offset   (cbits_offset + cbit_length)
 

Definition at line 660 of file internal.h.

Referenced by pcre_compile(), pcre_exec(), and pcre_study().

#define ERR1   "\\ at end of pattern"
 

Definition at line 487 of file internal.h.

Referenced by check_escape().

#define ERR10   "operand of unlimited repeat could match the empty string"
 

Definition at line 496 of file internal.h.

#define ERR11   "internal error: unexpected repeat"
 

Definition at line 497 of file internal.h.

#define ERR12   "unrecognized character after (?"
 

Definition at line 498 of file internal.h.

Referenced by pcre_compile().

#define ERR13   "POSIX named classes are supported only within a class"
 

Definition at line 499 of file internal.h.

#define ERR14   "missing )"
 

Definition at line 500 of file internal.h.

#define ERR15   "reference to non-existent subpattern"
 

Definition at line 501 of file internal.h.

#define ERR16   "erroffset passed as NULL"
 

Definition at line 502 of file internal.h.

Referenced by pcre_compile().

#define ERR17   "unknown option bit(s) set"
 

Definition at line 503 of file internal.h.

Referenced by pcre_compile().

#define ERR18   "missing ) after comment"
 

Definition at line 504 of file internal.h.

Referenced by pcre_compile().

#define ERR19   "parentheses nested too deeply"
 

Definition at line 505 of file internal.h.

#define ERR2   "\\c at end of pattern"
 

Definition at line 488 of file internal.h.

Referenced by check_escape().

#define ERR20   "regular expression too large"
 

Definition at line 506 of file internal.h.

#define ERR21   "failed to get memory"
 

Definition at line 507 of file internal.h.

#define ERR22   "unmatched parentheses"
 

Definition at line 508 of file internal.h.

#define ERR23   "internal error: code overflow"
 

Definition at line 509 of file internal.h.

#define ERR24   "unrecognized character after (?<"
 

Definition at line 510 of file internal.h.

Referenced by pcre_compile().

#define ERR25   "lookbehind assertion is not fixed length"
 

Definition at line 511 of file internal.h.

#define ERR26   "malformed number after (?("
 

Definition at line 512 of file internal.h.

Referenced by pcre_compile().

#define ERR27   "conditional group contains more than two branches"
 

Definition at line 513 of file internal.h.

#define ERR28   "assertion expected after (?("
 

Definition at line 514 of file internal.h.

Referenced by pcre_compile().

#define ERR29   "(?R or (?digits must be followed by )"
 

Definition at line 515 of file internal.h.

Referenced by pcre_compile().

#define ERR3   "unrecognized character follows \\"
 

Definition at line 489 of file internal.h.

Referenced by check_escape().

#define ERR30   "unknown POSIX class name"
 

Definition at line 516 of file internal.h.

#define ERR31   "POSIX collating elements are not supported"
 

Definition at line 517 of file internal.h.

#define ERR32   "this version of PCRE is not compiled with PCRE_UTF8 support"
 

Definition at line 518 of file internal.h.

Referenced by pcre_compile().

#define ERR33   "spare error"
 

Definition at line 519 of file internal.h.

#define ERR34   "character value in \\x{...} sequence is too large"
 

Definition at line 520 of file internal.h.

Referenced by check_escape().

#define ERR35   "invalid condition (?(0)"
 

Definition at line 521 of file internal.h.

#define ERR36   "\\C not allowed in lookbehind assertion"
 

Definition at line 522 of file internal.h.

#define ERR37   "PCRE does not support \\L, \\l, \\N, \\P, \\p, \\U, \\u, or \\X"
 

Definition at line 523 of file internal.h.

Referenced by check_escape().

#define ERR38   "number after (?C is > 255"
 

Definition at line 524 of file internal.h.

#define ERR39   "closing ) for (?C expected"
 

Definition at line 525 of file internal.h.

Referenced by pcre_compile().

#define ERR4   "numbers out of order in {} quantifier"
 

Definition at line 490 of file internal.h.

Referenced by read_repeat_counts().

#define ERR40   "recursive call could loop indefinitely"
 

Definition at line 526 of file internal.h.

#define ERR41   "unrecognized character after (?P"
 

Definition at line 527 of file internal.h.

Referenced by pcre_compile().

#define ERR42   "syntax error after (?P"
 

Definition at line 528 of file internal.h.

Referenced by pcre_compile().

#define ERR43   "two named groups have the same name"
 

Definition at line 529 of file internal.h.

#define ERR5   "number too big in {} quantifier"
 

Definition at line 491 of file internal.h.

Referenced by read_repeat_counts().

#define ERR6   "missing terminating ] for character class"
 

Definition at line 492 of file internal.h.

Referenced by pcre_compile().

#define ERR7   "invalid escape sequence in character class"
 

Definition at line 493 of file internal.h.

#define ERR8   "range out of order in character class"
 

Definition at line 494 of file internal.h.

#define ERR9   "nothing to repeat"
 

Definition at line 495 of file internal.h.

#define ESC_e   27
 

Definition at line 238 of file internal.h.

#define ESC_f   '\f'
 

Definition at line 242 of file internal.h.

#define ESC_n   NEWLINE
 

Definition at line 246 of file internal.h.

#define ESC_r   '\r'
 

Definition at line 250 of file internal.h.

#define ESC_t   '\t'
 

Definition at line 254 of file internal.h.

#define EXTRACT_BASIC_MAX   150
 

Definition at line 476 of file internal.h.

Referenced by find_bracket(), is_anchored(), is_startline(), and match().

#define FALSE   0
 

Definition at line 230 of file internal.h.

#define fcc_offset   256
 

Definition at line 658 of file internal.h.

Referenced by pcre_compile(), pcre_exec(), and pcre_study().

#define GET2 a,
 )     (((a)[n] << 8) | (a)[(n)+1])
 

Definition at line 151 of file internal.h.

Referenced by could_be_empty_branch(), find_bracket(), find_fixedlength(), is_anchored(), is_startline(), and match().

#define lcc_offset   0
 

Definition at line 657 of file internal.h.

Referenced by pcre_compile(), pcre_exec(), and pcre_study().

#define MAGIC_NUMBER   0x50435245UL
 

Definition at line 213 of file internal.h.

Referenced by pcre_exec(), pcre_fullinfo(), pcre_info(), and pcre_study().

#define memmove a,
b,
 )     pcre_memmove(a, b, c)
 

Definition at line 76 of file internal.h.

Referenced by appendcstring(), buildfilename(), coercetodouble(), copyctopstring(), copyptocstring(), get1resource(), htmlcontrolnavigate(), moveleft(), moveright(), and winAskDialog().

#define offsetof p_type,
field   )     ((size_t)&(((p_type *)0)->field))
 

Definition at line 176 of file internal.h.

Referenced by BuildAFPVolMountInfo(), and BuildAFPXVolMountInfo().

#define OP_LENGTHS
 

Definition at line 428 of file internal.h.

#define OP_NAME_LIST
 

Value:

"End", "\\A", "\\G", "\\B", "\\b", "\\D", "\\d",                \
  "\\S", "\\s", "\\W", "\\w", "Any", "Anybyte", "\\Z", "\\z",     \
  "Opt", "^", "$", "chars", "not",                                \
  "*", "*?", "+", "+?", "?", "??", "{", "{", "{",                 \
  "*", "*?", "+", "+?", "?", "??", "{", "{", "{",                 \
  "*", "*?", "+", "+?", "?", "??", "{", "{", "{",                 \
  "*", "*?", "+", "+?", "?", "??", "{", "{",                      \
  "class", "nclass", "xclass", "Ref", "Recurse", "Callout",       \
  "Alt", "Ket", "KetRmax", "KetRmin", "Assert", "Assert not",     \
  "AssertB", "AssertB not", "Reverse", "Once", "Cond", "Cond ref",\
  "Brazero", "Braminzero", "Branumber", "Bra"

Definition at line 405 of file internal.h.

#define PCRE_DEFINITION
 

Definition at line 167 of file internal.h.

#define PCRE_FIRSTSET   0x40000000
 

Definition at line 189 of file internal.h.

Referenced by pcre_exec(), pcre_fullinfo(), pcre_info(), and pcre_study().

#define PCRE_ICHANGED   0x08000000
 

Definition at line 192 of file internal.h.

Referenced by pcre_compile().

#define PCRE_IMS   (PCRE_CASELESS|PCRE_MULTILINE|PCRE_DOTALL)
 

Definition at line 181 of file internal.h.

#define PCRE_REQCHSET   0x20000000
 

Definition at line 190 of file internal.h.

Referenced by pcre_exec(), and pcre_fullinfo().

#define PCRE_STARTLINE   0x10000000
 

Definition at line 191 of file internal.h.

Referenced by pcre_exec(), pcre_fullinfo(), pcre_info(), and pcre_study().

#define PCRE_STUDY_MAPPED   0x01
 

Definition at line 196 of file internal.h.

Referenced by pcre_exec(), pcre_fullinfo(), and pcre_study().

#define POSIX_MALLOC_THRESHOLD   10
 

Definition at line 665 of file internal.h.

Referenced by pcre_config().

#define PUBLIC_EXEC_OPTIONS   (PCRE_ANCHORED|PCRE_NOTBOL|PCRE_NOTEOL|PCRE_NOTEMPTY)
 

Definition at line 206 of file internal.h.

Referenced by pcre_exec().

#define PUBLIC_OPTIONS
 

Value:

Definition at line 201 of file internal.h.

Referenced by pcre_compile(), pcre_fullinfo(), and pcre_info().

#define PUBLIC_STUDY_OPTIONS   0
 

Definition at line 209 of file internal.h.

Referenced by pcre_study().

#define PUT2 a,
n,
 ) 
 

Value:

a[n] = (d) >> 8; \
  a[(n)+1] = (d) & 255

Definition at line 147 of file internal.h.

#define PUT2INC a,
n,
 )     PUT2(a,n,d), a += 2
 

Definition at line 154 of file internal.h.

#define PUTINC a,
n,
 )     PUT(a,n,d), a += LINK_SIZE
 

Definition at line 140 of file internal.h.

#define REQ_CASELESS   0x0100
 

Definition at line 223 of file internal.h.

Referenced by compile_branch(), find_firstassertedchar(), and pcre_exec().

#define REQ_NONE   (-1)
 

Definition at line 218 of file internal.h.

#define REQ_UNSET   (-2)
 

Definition at line 217 of file internal.h.

Referenced by compile_branch(), and compile_regex().

#define REQ_VARY   0x0200
 

Definition at line 224 of file internal.h.

#define tables_length   (ctypes_offset + 256)
 

Definition at line 661 of file internal.h.

Referenced by pcre_maketables().

#define TRUE   1
 

Definition at line 231 of file internal.h.

#define XCL_END   0
 

Definition at line 277 of file internal.h.

#define XCL_MAP   0x02
 

Definition at line 275 of file internal.h.

#define XCL_NOT   0x01
 

Definition at line 274 of file internal.h.

#define XCL_RANGE   2
 

Definition at line 279 of file internal.h.

#define XCL_SINGLE   1
 

Definition at line 278 of file internal.h.


Typedef Documentation

typedef int BOOL
 

Definition at line 228 of file internal.h.

typedef unsigned char uschar
 

Definition at line 538 of file internal.h.


Enumeration Type Documentation

anonymous enum
 

Enumerator:
ESC_A 
ESC_G 
ESC_B 
ESC_b 
ESC_D 
ESC_d 
ESC_S 
ESC_s 
ESC_W 
ESC_w 
ESC_dum1 
ESC_C 
ESC_Z 
ESC_z 
ESC_E 
ESC_Q 
ESC_REF 

Definition at line 268 of file internal.h.

anonymous enum
 

Enumerator:
OP_END 
OP_SOD 
OP_SOM 
OP_NOT_WORD_BOUNDARY 
OP_WORD_BOUNDARY 
OP_NOT_DIGIT 
OP_DIGIT 
OP_NOT_WHITESPACE 
OP_WHITESPACE 
OP_NOT_WORDCHAR 
OP_WORDCHAR 
OP_ANY 
OP_ANYBYTE 
OP_EODN 
OP_EOD 
OP_OPT 
OP_CIRC 
OP_DOLL 
OP_CHARS 
OP_NOT 
OP_STAR 
OP_MINSTAR 
OP_PLUS 
OP_MINPLUS 
OP_QUERY 
OP_MINQUERY 
OP_UPTO 
OP_MINUPTO 
OP_EXACT 
OP_NOTSTAR 
OP_NOTMINSTAR 
OP_NOTPLUS 
OP_NOTMINPLUS 
OP_NOTQUERY 
OP_NOTMINQUERY 
OP_NOTUPTO 
OP_NOTMINUPTO 
OP_NOTEXACT 
OP_TYPESTAR 
OP_TYPEMINSTAR 
OP_TYPEPLUS 
OP_TYPEMINPLUS 
OP_TYPEQUERY 
OP_TYPEMINQUERY 
OP_TYPEUPTO 
OP_TYPEMINUPTO 
OP_TYPEEXACT 
OP_CRSTAR 
OP_CRMINSTAR 
OP_CRPLUS 
OP_CRMINPLUS 
OP_CRQUERY 
OP_CRMINQUERY 
OP_CRRANGE 
OP_CRMINRANGE 
OP_CLASS 
OP_NCLASS 
OP_XCLASS 
OP_REF 
OP_RECURSE 
OP_CALLOUT 
OP_ALT 
OP_KET 
OP_KETRMAX 
OP_KETRMIN 
OP_ASSERT 
OP_ASSERT_NOT 
OP_ASSERTBACK 
OP_ASSERTBACK_NOT 
OP_REVERSE 
OP_ONCE 
OP_COND 
OP_CREF 
OP_BRAZERO 
OP_BRAMINZERO 
OP_BRANUMBER 
OP_BRA 

Definition at line 288 of file internal.h.


Function Documentation

void* pcre_memmove unsigned char *  dest,
const unsigned char *  src,
size_t  n
 

Definition at line 69 of file internal.h.

References i.


Generated on Fri Jun 2 03:58:11 2006 for frontierkernel 10.1.10a by  doxygen 1.4.6