亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? pcre_internal.h

?? SDL文件。SDL_ERROwenjian.....
?? H
?? 第 1 頁 / 共 4 頁
字號:
  1+LINK_SIZE,                   /* Assert                                 */ \
  1+LINK_SIZE,                   /* Assert not                             */ \
  1+LINK_SIZE,                   /* Assert behind                          */ \
  1+LINK_SIZE,                   /* Assert behind not                      */ \
  1+LINK_SIZE,                   /* Reverse                                */ \
  1+LINK_SIZE,                   /* ONCE                                   */ \
  1+LINK_SIZE,                   /* BRA                                    */ \
  3+LINK_SIZE,                   /* CBRA                                   */ \
  1+LINK_SIZE,                   /* COND                                   */ \
  1+LINK_SIZE,                   /* SBRA                                   */ \
  3+LINK_SIZE,                   /* SCBRA                                  */ \
  1+LINK_SIZE,                   /* SCOND                                  */ \
  3,                             /* CREF                                   */ \
  3,                             /* RREF                                   */ \
  1,                             /* DEF                                    */ \
  1, 1,                          /* BRAZERO, BRAMINZERO                    */ \
  1, 1, 1, 1,                    /* PRUNE, SKIP, THEN, COMMIT,             */ \
  1, 1                           /* FAIL, ACCEPT                           */


/* A magic value for OP_RREF to indicate the "any recursion" condition. */

#define RREF_ANY  0xffff

/* Error code numbers. They are given names so that they can more easily be
tracked. */

enum { ERR0,  ERR1,  ERR2,  ERR3,  ERR4,  ERR5,  ERR6,  ERR7,  ERR8,  ERR9,
       ERR10, ERR11, ERR12, ERR13, ERR14, ERR15, ERR16, ERR17, ERR18, ERR19,
       ERR20, ERR21, ERR22, ERR23, ERR24, ERR25, ERR26, ERR27, ERR28, ERR29,
       ERR30, ERR31, ERR32, ERR33, ERR34, ERR35, ERR36, ERR37, ERR38, ERR39,
       ERR40, ERR41, ERR42, ERR43, ERR44, ERR45, ERR46, ERR47, ERR48, ERR49,
       ERR50, ERR51, ERR52, ERR53, ERR54, ERR55, ERR56, ERR57, ERR58, ERR59,
       ERR60, ERR61 };

/* The real format of the start of the pcre block; the index of names and the
code vector run on as long as necessary after the end. We store an explicit
offset to the name table so that if a regex is compiled on one host, saved, and
then run on another where the size of pointers is different, all might still
be well. For the case of compiled-on-4 and run-on-8, we include an extra
pointer that is always NULL. For future-proofing, a few dummy fields were
originally included - even though you can never get this planning right - but
there is only one left now.

NOTE NOTE NOTE:
Because people can now save and re-use compiled patterns, any additions to this
structure should be made at the end, and something earlier (e.g. a new
flag in the options or one of the dummy fields) should indicate that the new
fields are present. Currently PCRE always sets the dummy fields to zero.
NOTE NOTE NOTE:
*/

typedef struct real_pcre {
  pcre_uint32 magic_number;
  pcre_uint32 size;               /* Total that was malloced */
  pcre_uint32 options;            /* Public options */
  pcre_uint16 flags;              /* Private flags */
  pcre_uint16 dummy1;             /* For future use */
  pcre_uint16 top_bracket;
  pcre_uint16 top_backref;
  pcre_uint16 first_byte;
  pcre_uint16 req_byte;
  pcre_uint16 name_table_offset;  /* Offset to name table that follows */
  pcre_uint16 name_entry_size;    /* Size of any name items */
  pcre_uint16 name_count;         /* Number of name items */
  pcre_uint16 ref_count;          /* Reference count */

  const unsigned char *tables;    /* Pointer to tables or NULL for std */
  const unsigned char *nullpad;   /* NULL padding */
} real_pcre;

/* The format of the block used to store data from pcre_study(). The same
remark (see NOTE above) about extending this structure applies. */

typedef struct pcre_study_data {
  pcre_uint32 size;               /* Total that was malloced */
  pcre_uint32 options;
  uschar start_bits[32];
} pcre_study_data;

/* Structure for passing "static" information around between the functions
doing the compiling, so that they are thread-safe. */

typedef struct compile_data {
  const uschar *lcc;            /* Points to lower casing table */
  const uschar *fcc;            /* Points to case-flipping table */
  const uschar *cbits;          /* Points to character type table */
  const uschar *ctypes;         /* Points to table of type maps */
  const uschar *start_workspace;/* The start of working space */
  const uschar *start_code;     /* The start of the compiled code */
  const uschar *start_pattern;  /* The start of the pattern */
  const uschar *end_pattern;    /* The end of the pattern */
  uschar *hwm;                  /* High watermark of workspace */
  uschar *name_table;           /* The name/number table */
  int  names_found;             /* Number of entries so far */
  int  name_entry_size;         /* Size of each entry */
  int  bracount;                /* Count of capturing parens */
  int  top_backref;             /* Maximum back reference */
  unsigned int backref_map;     /* Bitmap of low back refs */
  int  external_options;        /* External (initial) options */
  int  external_flags;          /* External flag bits to be set */
  int  req_varyopt;             /* "After variable item" flag for reqbyte */
  BOOL had_accept;              /* (*ACCEPT) encountered */
  int  nltype;                  /* Newline type */
  int  nllen;                   /* Newline string length */
  uschar nl[4];                 /* Newline string when fixed length */
} compile_data;

/* Structure for maintaining a chain of pointers to the currently incomplete
branches, for testing for left recursion. */

typedef struct branch_chain {
  struct branch_chain *outer;
  uschar *current;
} branch_chain;

/* Structure for items in a linked list that represents an explicit recursive
call within the pattern. */

typedef struct recursion_info {
  struct recursion_info *prevrec; /* Previous recursion record (or NULL) */
  int group_num;                /* Number of group that was called */
  const uschar *after_call;     /* "Return value": points after the call in the expr */
  USPTR save_start;             /* Old value of mstart */
  int *offset_save;             /* Pointer to start of saved offsets */
  int saved_max;                /* Number of saved offsets */
} recursion_info;

/* Structure for building a chain of data for holding the values of the subject
pointer at the start of each subpattern, so as to detect when an empty string
has been matched by a subpattern - to break infinite loops. */

typedef struct eptrblock {
  struct eptrblock *epb_prev;
  USPTR epb_saved_eptr;
} eptrblock;


/* Structure for passing "static" information around between the functions
doing traditional NFA matching, so that they are thread-safe. */

typedef struct match_data {
  unsigned long int match_call_count;      /* As it says */
  unsigned long int match_limit;           /* As it says */
  unsigned long int match_limit_recursion; /* As it says */
  int   *offset_vector;         /* Offset vector */
  int    offset_end;            /* One past the end */
  int    offset_max;            /* The maximum usable for return data */
  int    nltype;                /* Newline type */
  int    nllen;                 /* Newline string length */
  uschar nl[4];                 /* Newline string when fixed */
  const uschar *lcc;            /* Points to lower casing table */
  const uschar *ctypes;         /* Points to table of type maps */
  BOOL   offset_overflow;       /* Set if too many extractions */
  BOOL   notbol;                /* NOTBOL flag */
  BOOL   noteol;                /* NOTEOL flag */
  BOOL   utf8;                  /* UTF8 flag */
  BOOL   endonly;               /* Dollar not before final \n */
  BOOL   notempty;              /* Empty string match not wanted */
  BOOL   partial;               /* PARTIAL flag */
  BOOL   hitend;                /* Hit the end of the subject at some point */
  BOOL   bsr_anycrlf;           /* \R is just any CRLF, not full Unicode */
  const uschar *start_code;     /* For use when recursing */
  USPTR  start_subject;         /* Start of the subject string */
  USPTR  end_subject;           /* End of the subject string */
  USPTR  start_match_ptr;       /* Start of matched string */
  USPTR  end_match_ptr;         /* Subject position at end match */
  int    end_offset_top;        /* Highwater mark at end of match */
  int    capture_last;          /* Most recent capture number */
  int    start_offset;          /* The start offset value */
  eptrblock *eptrchain;         /* Chain of eptrblocks for tail recursions */
  int    eptrn;                 /* Next free eptrblock */
  recursion_info *recursive;    /* Linked list of recursion data */
  void  *callout_data;          /* To pass back to callouts */
} match_data;

/* A similar structure is used for the same purpose by the DFA matching
functions. */

typedef struct dfa_match_data {
  const uschar *start_code;     /* Start of the compiled pattern */
  const uschar *start_subject;  /* Start of the subject string */
  const uschar *end_subject;    /* End of subject string */
  const uschar *tables;         /* Character tables */
  int   moptions;               /* Match options */
  int   poptions;               /* Pattern options */
  int    nltype;                /* Newline type */
  int    nllen;                 /* Newline string length */
  uschar nl[4];                 /* Newline string when fixed */
  void  *callout_data;          /* To pass back to callouts */
} dfa_match_data;

/* Bit definitions for entries in the pcre_ctypes table. */

#define ctype_space   0x01
#define ctype_letter  0x02
#define ctype_digit   0x04
#define ctype_xdigit  0x08
#define ctype_word    0x10   /* alphameric or '_' */
#define ctype_meta    0x80   /* regexp meta char or zero (end pattern) */

/* Offsets for the bitmap tables in pcre_cbits. Each table contains a set
of bits for a class map. Some classes are built by combining these tables. */

#define cbit_space     0      /* [:space:] or \s */
#define cbit_xdigit   32      /* [:xdigit:] */
#define cbit_digit    64      /* [:digit:] or \d */
#define cbit_upper    96      /* [:upper:] */
#define cbit_lower   128      /* [:lower:] */
#define cbit_word    160      /* [:word:] or \w */
#define cbit_graph   192      /* [:graph:] */
#define cbit_print   224      /* [:print:] */
#define cbit_punct   256      /* [:punct:] */
#define cbit_cntrl   288      /* [:cntrl:] */
#define cbit_length  320      /* Length of the cbits table */

/* Offsets of the various tables from the base tables pointer, and
total length. */

#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)

/* Layout of the UCP type table that translates property names into types and
codes. Each entry used to point directly to a name, but to reduce the number of
relocations in shared libraries, it now has an offset into a single string
instead. */

typedef struct {
  pcre_uint16 name_offset;
  pcre_uint16 type;
  pcre_uint16 value;
} ucp_type_table;


/* Internal shared data tables. These are tables that are used by more than one
of the exported public functions. They have to be "external" in the C sense,
but are not part of the PCRE public API. The data for these tables is in the
pcre_tables.c module. */

extern const int    _pcre_utf8_table1[];
extern const int    _pcre_utf8_table2[];
extern const int    _pcre_utf8_table3[];
extern const uschar _pcre_utf8_table4[];

extern const int    _pcre_utf8_table1_size;

extern const char   _pcre_utt_names[];
extern const ucp_type_table _pcre_utt[];
extern const int _pcre_utt_size;

extern const uschar _pcre_default_tables[];

extern const uschar _pcre_OP_lengths[];


/* Internal shared functions. These are functions that are used by more than
one of the exported public functions. They have to be "external" in the C
sense, but are not part of the PCRE public API. */

extern BOOL         _pcre_is_newline(const uschar *, int, const uschar *,
                      int *, BOOL);
extern int          _pcre_ord2utf8(int, uschar *);
extern real_pcre   *_pcre_try_flipped(const real_pcre *, real_pcre *,
                      const pcre_study_data *, pcre_study_data *);
extern int          _pcre_ucp_findprop(const unsigned int, int *, int *);
extern unsigned int _pcre_ucp_othercase(const unsigned int);
extern int          _pcre_valid_utf8(const uschar *, int);
extern BOOL         _pcre_was_newline(const uschar *, int, const uschar *,
                      int *, BOOL);
extern BOOL         _pcre_xclass(int, const uschar *);

#endif

/* End of pcre_internal.h */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
av在线免费不卡| 欧美日韩国产一级片| 亚洲成人av电影| 国产女人aaa级久久久级| 欧美日韩国产系列| aa级大片欧美| 韩日欧美一区二区三区| 亚洲国产综合91精品麻豆| 国产亚洲成年网址在线观看| 91精品午夜视频| 在线观看视频欧美| 99re66热这里只有精品3直播| 另类综合日韩欧美亚洲| 午夜在线成人av| 亚洲免费在线电影| 中文字幕一区二区三区四区| 久久久久久亚洲综合影院红桃| 欧美一区二区三区在线看| 色综合天天综合网国产成人综合天| 黑人巨大精品欧美一区| 麻豆精品国产91久久久久久| 三级在线观看一区二区| 一区二区三区蜜桃| 亚洲精品视频在线看| 成人欧美一区二区三区视频网页| 国产日韩精品一区二区浪潮av| 欧美大白屁股肥臀xxxxxx| 欧美日韩视频在线第一区 | 精品少妇一区二区三区免费观看| 欧美日韩一区二区不卡| 91片在线免费观看| 99国产精品久| 国产真实乱偷精品视频免| 蜜臀久久99精品久久久久宅男| 亚洲成人自拍网| 日韩中文欧美在线| 日本一不卡视频| 日韩主播视频在线| 毛片av一区二区| 久草这里只有精品视频| 狠狠色丁香婷综合久久| 国产乱码精品1区2区3区| 精品在线免费视频| 国产精品一色哟哟哟| 成人小视频免费观看| 波多野结衣在线一区| 菠萝蜜视频在线观看一区| 91丝袜美女网| 欧美少妇xxx| 欧美一区二区三区视频在线| 日韩一区二区中文字幕| 精品国产制服丝袜高跟| 久久一二三国产| 国产拍揄自揄精品视频麻豆| 日韩理论片在线| 一级做a爱片久久| 五月婷婷另类国产| 美女尤物国产一区| 高清在线观看日韩| 色呦呦网站一区| 在线播放/欧美激情| 精品国产伦一区二区三区观看方式| 国产网红主播福利一区二区| 亚洲桃色在线一区| 香蕉影视欧美成人| 国产一本一道久久香蕉| 91美女片黄在线观看| 欧美高清视频一二三区| 精品精品国产高清a毛片牛牛| 欧美韩国日本不卡| 亚洲国产日韩精品| 国产自产视频一区二区三区| 99久久综合色| 欧美另类z0zxhd电影| 久久先锋影音av鲁色资源网| 亚洲精品国产视频| 极品少妇xxxx精品少妇| 色综合久久中文字幕综合网 | 国产精品丝袜久久久久久app| 一区二区在线看| 紧缚捆绑精品一区二区| 96av麻豆蜜桃一区二区| 欧美大片日本大片免费观看| 国产色婷婷亚洲99精品小说| 亚洲国产va精品久久久不卡综合| 麻豆精品视频在线观看免费| 91婷婷韩国欧美一区二区| 精品国产乱码久久久久久1区2区| **性色生活片久久毛片| 蜜桃久久久久久| 色吊一区二区三区| 久久久青草青青国产亚洲免观| 亚洲午夜一区二区| 国产成人综合在线播放| 在线不卡免费av| 亚洲三级理论片| 国产精品99久久久久久有的能看| 欧美三级在线看| 1区2区3区精品视频| 理论电影国产精品| 欧美唯美清纯偷拍| 中文字幕一区二区视频| 韩国v欧美v日本v亚洲v| 欧美日韩亚洲综合一区二区三区| 国产精品美女久久久久aⅴ| 激情综合网激情| 在线看国产日韩| 亚洲三级在线免费| 成人黄色av电影| 久久九九99视频| 九九九精品视频| 91精品欧美一区二区三区综合在| 亚洲男人电影天堂| 不卡的电影网站| 国产精品情趣视频| 国产一区二区91| 久久综合久久久久88| 毛片一区二区三区| 日韩三级电影网址| 人人狠狠综合久久亚洲| 欧美日韩一区视频| 一区二区三区日韩| 91小视频免费观看| 中文字幕日本乱码精品影院| 国产美女在线精品| 久久精品一区二区三区av| 九九精品一区二区| 精品国产乱码久久久久久图片| 日本中文字幕一区| 日韩欧美一级精品久久| 日一区二区三区| 4438x亚洲最大成人网| 天天操天天综合网| 欧美一区二区三区电影| 奇米精品一区二区三区四区 | 亚洲人成网站影音先锋播放| 97精品超碰一区二区三区| 中文字幕在线不卡一区二区三区| gogo大胆日本视频一区| 综合网在线视频| 在线亚洲免费视频| 亚洲成人激情av| 678五月天丁香亚洲综合网| 免费视频最近日韩| 久久久久久电影| 成人av午夜电影| 亚洲乱码日产精品bd| 欧洲亚洲精品在线| 日本视频一区二区三区| 精品欧美一区二区久久| 丁香激情综合五月| 亚洲欧洲制服丝袜| 91麻豆精品国产| 国内不卡的二区三区中文字幕| 国产日韩av一区| 色女孩综合影院| 日日夜夜一区二区| 欧美精品一区二区高清在线观看| 国产精品资源在线观看| 亚洲色图制服丝袜| 欧美欧美午夜aⅴ在线观看| 看电视剧不卡顿的网站| 国产精品青草综合久久久久99| 色综合天天综合色综合av | 欧美顶级少妇做爰| 寂寞少妇一区二区三区| 亚洲国产精品一区二区www| 欧美三级日韩三级| 久久精品国产网站| ●精品国产综合乱码久久久久 | 56国语精品自产拍在线观看| 国产乱对白刺激视频不卡| 亚洲色图欧洲色图| 日韩午夜在线影院| 成人app网站| 麻豆91精品视频| 综合在线观看色| 精品美女一区二区三区| 99精品热视频| 另类小说图片综合网| 亚洲激情av在线| 久久综合久久久久88| 欧美特级限制片免费在线观看| 久久国产精品无码网站| 亚洲日本在线天堂| 精品福利视频一区二区三区| 91丨porny丨首页| 韩国av一区二区| 亚洲超碰97人人做人人爱| 久久久精品影视| 7799精品视频| 99精品欧美一区| 久久草av在线| 亚洲一区二区三区四区中文字幕| 久久免费看少妇高潮| 欧美精品xxxxbbbb| 91麻豆国产香蕉久久精品| 精品一区二区av| 亚洲电影第三页| 国产精品久久777777|