/[pcre]/code/trunk/pcre_internal.h
ViewVC logotype

Diff of /code/trunk/pcre_internal.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 446 by ph10, Tue Sep 15 10:49:50 2009 UTC revision 447 by ph10, Tue Sep 15 18:17:54 2009 UTC
# Line 1364  enum { Line 1364  enum {
1364    
1365    OP_FAIL,           /* 109 */    OP_FAIL,           /* 109 */
1366    OP_ACCEPT,         /* 110 */    OP_ACCEPT,         /* 110 */
1367      OP_CLOSE,          /* 111 Used before OP_ACCEPT to close open captures */
1368    
1369    /* This is used to skip a subpattern with a {0} quantifier */    /* This is used to skip a subpattern with a {0} quantifier */
1370    
1371    OP_SKIPZERO        /* 111 */    OP_SKIPZERO        /* 112 */
1372  };  };
1373    
1374    
# Line 1393  for debugging. The macro is referenced o Line 1394  for debugging. The macro is referenced o
1394    "Once", "Bra", "CBra", "Cond", "SBra", "SCBra", "SCond",        \    "Once", "Bra", "CBra", "Cond", "SBra", "SCBra", "SCond",        \
1395    "Cond ref", "Cond rec", "Cond def", "Brazero", "Braminzero",    \    "Cond ref", "Cond rec", "Cond def", "Brazero", "Braminzero",    \
1396    "*PRUNE", "*SKIP", "*THEN", "*COMMIT", "*FAIL", "*ACCEPT",      \    "*PRUNE", "*SKIP", "*THEN", "*COMMIT", "*FAIL", "*ACCEPT",      \
1397    "Skip zero"    "Close", "Skip zero"
1398    
1399    
1400  /* This macro defines the length of fixed length operations in the compiled  /* This macro defines the length of fixed length operations in the compiled
# Line 1458  in UTF-8 mode. The code that uses this t Line 1459  in UTF-8 mode. The code that uses this t
1459    1,                             /* DEF                                    */ \    1,                             /* DEF                                    */ \
1460    1, 1,                          /* BRAZERO, BRAMINZERO                    */ \    1, 1,                          /* BRAZERO, BRAMINZERO                    */ \
1461    1, 1, 1, 1,                    /* PRUNE, SKIP, THEN, COMMIT,             */ \    1, 1, 1, 1,                    /* PRUNE, SKIP, THEN, COMMIT,             */ \
1462    1, 1, 1                        /* FAIL, ACCEPT, SKIPZERO                 */    1, 1, 3, 1                     /* FAIL, ACCEPT, CLOSE, SKIPZERO          */
1463    
1464    
1465  /* A magic value for OP_RREF to indicate the "any recursion" condition. */  /* A magic value for OP_RREF to indicate the "any recursion" condition. */
# Line 1521  typedef struct pcre_study_data { Line 1522  typedef struct pcre_study_data {
1522    uschar start_bits[32];    uschar start_bits[32];
1523  } pcre_study_data;  } pcre_study_data;
1524    
1525    /* Structure for building a chain of open capturing subpatterns during
1526    compiling, so that instructions to close them can be compiled when (*ACCEPT) is
1527    encountered. */
1528    
1529    typedef struct open_capitem {
1530      struct open_capitem *next;    /* Chain link */
1531      pcre_uint16 number;           /* Capture number */
1532    } open_capitem;
1533    
1534  /* Structure for passing "static" information around between the functions  /* Structure for passing "static" information around between the functions
1535  doing the compiling, so that they are thread-safe. */  doing the compiling, so that they are thread-safe. */
1536    
# Line 1533  typedef struct compile_data { Line 1543  typedef struct compile_data {
1543    const uschar *start_code;     /* The start of the compiled code */    const uschar *start_code;     /* The start of the compiled code */
1544    const uschar *start_pattern;  /* The start of the pattern */    const uschar *start_pattern;  /* The start of the pattern */
1545    const uschar *end_pattern;    /* The end of the pattern */    const uschar *end_pattern;    /* The end of the pattern */
1546      open_capitem *open_caps;      /* Chain of open capture items */
1547    uschar *hwm;                  /* High watermark of workspace */    uschar *hwm;                  /* High watermark of workspace */
1548    uschar *name_table;           /* The name/number table */    uschar *name_table;           /* The name/number table */
1549    int  names_found;             /* Number of entries so far */    int  names_found;             /* Number of entries so far */

Legend:
Removed from v.446  
changed lines
  Added in v.447

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12