php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
pcre2_dfa_match.c File Reference
#include "pcre2_internal.h"

Go to the source code of this file.

Data Structures

struct  stateblock
 
struct  RWS_anchor
 

Macros

#define NLBLOCK   mb /* Block containing newline information */
 
#define PSSTART   start_subject /* Field containing processed string start */
 
#define PSEND   end_subject /* Field containing processed string end */
 
#define PUBLIC_DFA_MATCH_OPTIONS
 
#define OP_PROP_EXTRA   300
 
#define OP_EXTUNI_EXTRA   320
 
#define OP_ANYNL_EXTRA   340
 
#define OP_HSPACE_EXTRA   360
 
#define OP_VSPACE_EXTRA   380
 
#define INTS_PER_STATEBLOCK   (int)(sizeof(stateblock)/sizeof(int))
 
#define OVEC_UNIT   (sizeof(PCRE2_SIZE)/sizeof(int))
 
#define RWS_BASE_SIZE   (DFA_START_RWS_SIZE/sizeof(int)) /* Stack vector */
 
#define RWS_RSIZE   1000 /* Work size for recursion */
 
#define RWS_OVEC_RSIZE   (1000*OVEC_UNIT) /* Ovector for recursion */
 
#define RWS_OVEC_OSIZE   (2*OVEC_UNIT) /* Ovector in other cases */
 
#define RWS_ANCHOR_SIZE   (sizeof(RWS_anchor)/sizeof(int))
 
#define ADD_ACTIVE(x, y)
 
#define ADD_ACTIVE_DATA(x, y, z)
 
#define ADD_NEW(x, y)
 
#define ADD_NEW_DATA(x, y, z)
 
#define FF   (PCRE2_NOTEMPTY_SET|PCRE2_NE_ATST_SET)
 
#define OO   (PCRE2_NOTEMPTY|PCRE2_NOTEMPTY_ATSTART)
 

Typedefs

typedef struct stateblock stateblock
 
typedef struct RWS_anchor RWS_anchor
 

Functions

PCRE2_EXP_DEFN int PCRE2_CALL_CONVENTION pcre2_dfa_match (const pcre2_code *code, PCRE2_SPTR subject, PCRE2_SIZE length, PCRE2_SIZE start_offset, uint32_t options, pcre2_match_data *match_data, pcre2_match_context *mcontext, int *workspace, PCRE2_SIZE wscount)
 

Macro Definition Documentation

◆ ADD_ACTIVE

#define ADD_ACTIVE ( x,
y )
Value:
if (active_count++ < wscount) \
{ \
next_active_state->offset = (x); \
next_active_state->count = (y); \
next_active_state++; \
} \
#define PCRE2_ERROR_DFA_WSSIZE
Definition pcre2.h:384

Definition at line 483 of file pcre2_dfa_match.c.

◆ ADD_ACTIVE_DATA

#define ADD_ACTIVE_DATA ( x,
y,
z )
Value:
if (active_count++ < wscount) \
{ \
next_active_state->offset = (x); \
next_active_state->count = (y); \
next_active_state->data = (z); \
next_active_state++; \
} \

Definition at line 492 of file pcre2_dfa_match.c.

◆ ADD_NEW

#define ADD_NEW ( x,
y )
Value:
if (new_count++ < wscount) \
{ \
next_new_state->offset = (x); \
next_new_state->count = (y); \
next_new_state++; \
} \

Definition at line 502 of file pcre2_dfa_match.c.

◆ ADD_NEW_DATA

#define ADD_NEW_DATA ( x,
y,
z )
Value:
if (new_count++ < wscount) \
{ \
next_new_state->offset = (x); \
next_new_state->count = (y); \
next_new_state->data = (z); \
next_new_state++; \
} \

Definition at line 511 of file pcre2_dfa_match.c.

◆ FF

◆ INTS_PER_STATEBLOCK

#define INTS_PER_STATEBLOCK   (int)(sizeof(stateblock)/sizeof(int))

Definition at line 303 of file pcre2_dfa_match.c.

◆ NLBLOCK

#define NLBLOCK   mb /* Block containing newline information */

Definition at line 79 of file pcre2_dfa_match.c.

◆ OO

◆ OP_ANYNL_EXTRA

#define OP_ANYNL_EXTRA   340

Definition at line 103 of file pcre2_dfa_match.c.

◆ OP_EXTUNI_EXTRA

#define OP_EXTUNI_EXTRA   320

Definition at line 102 of file pcre2_dfa_match.c.

◆ OP_HSPACE_EXTRA

#define OP_HSPACE_EXTRA   360

Definition at line 104 of file pcre2_dfa_match.c.

◆ OP_PROP_EXTRA

#define OP_PROP_EXTRA   300

Definition at line 101 of file pcre2_dfa_match.c.

◆ OP_VSPACE_EXTRA

#define OP_VSPACE_EXTRA   380

Definition at line 105 of file pcre2_dfa_match.c.

◆ OVEC_UNIT

#define OVEC_UNIT   (sizeof(PCRE2_SIZE)/sizeof(int))

Definition at line 317 of file pcre2_dfa_match.c.

◆ PSEND

#define PSEND   end_subject /* Field containing processed string end */

Definition at line 81 of file pcre2_dfa_match.c.

◆ PSSTART

#define PSSTART   start_subject /* Field containing processed string start */

Definition at line 80 of file pcre2_dfa_match.c.

◆ PUBLIC_DFA_MATCH_OPTIONS

#define PUBLIC_DFA_MATCH_OPTIONS
Value:
#define PCRE2_ANCHORED
Definition pcre2.h:105
#define PCRE2_NOTEMPTY_ATSTART
Definition pcre2.h:179
#define PCRE2_ENDANCHORED
Definition pcre2.h:107
#define PCRE2_COPY_MATCHED_SUBJECT
Definition pcre2.h:190
#define PCRE2_PARTIAL_SOFT
Definition pcre2.h:180
#define PCRE2_NOTBOL
Definition pcre2.h:176
#define PCRE2_PARTIAL_HARD
Definition pcre2.h:181
#define PCRE2_DFA_RESTART
Definition pcre2.h:182
#define PCRE2_NO_UTF_CHECK
Definition pcre2.h:106
#define PCRE2_DFA_SHORTEST
Definition pcre2.h:183
#define PCRE2_NOTEMPTY
Definition pcre2.h:178
#define PCRE2_NOTEOL
Definition pcre2.h:177

Definition at line 85 of file pcre2_dfa_match.c.

◆ RWS_ANCHOR_SIZE

#define RWS_ANCHOR_SIZE   (sizeof(RWS_anchor)/sizeof(int))

Definition at line 332 of file pcre2_dfa_match.c.

◆ RWS_BASE_SIZE

#define RWS_BASE_SIZE   (DFA_START_RWS_SIZE/sizeof(int)) /* Stack vector */

Definition at line 319 of file pcre2_dfa_match.c.

◆ RWS_OVEC_OSIZE

#define RWS_OVEC_OSIZE   (2*OVEC_UNIT) /* Ovector in other cases */

Definition at line 322 of file pcre2_dfa_match.c.

◆ RWS_OVEC_RSIZE

#define RWS_OVEC_RSIZE   (1000*OVEC_UNIT) /* Ovector for recursion */

Definition at line 321 of file pcre2_dfa_match.c.

◆ RWS_RSIZE

#define RWS_RSIZE   1000 /* Work size for recursion */

Definition at line 320 of file pcre2_dfa_match.c.

Typedef Documentation

◆ RWS_anchor

typedef struct RWS_anchor RWS_anchor

◆ stateblock

typedef struct stateblock stateblock

Function Documentation

◆ pcre2_dfa_match()

PCRE2_EXP_DEFN int PCRE2_CALL_CONVENTION pcre2_dfa_match ( const pcre2_code * code,
PCRE2_SPTR subject,
PCRE2_SIZE length,
PCRE2_SIZE start_offset,
uint32_t options,
pcre2_match_data * match_data,
pcre2_match_context * mcontext,
int * workspace,
PCRE2_SIZE wscount )

Definition at line 3349 of file pcre2_dfa_match.c.