/[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 517 by ph10, Wed May 5 10:44:20 2010 UTC revision 518 by ph10, Tue May 18 15:47:01 2010 UTC
# Line 580  time, run time, or study time, respectiv Line 580  time, run time, or study time, respectiv
580     PCRE_DOTALL|PCRE_DOLLAR_ENDONLY|PCRE_EXTRA|PCRE_UNGREEDY|PCRE_UTF8| \     PCRE_DOTALL|PCRE_DOLLAR_ENDONLY|PCRE_EXTRA|PCRE_UNGREEDY|PCRE_UTF8| \
581     PCRE_NO_AUTO_CAPTURE|PCRE_NO_UTF8_CHECK|PCRE_AUTO_CALLOUT|PCRE_FIRSTLINE| \     PCRE_NO_AUTO_CAPTURE|PCRE_NO_UTF8_CHECK|PCRE_AUTO_CALLOUT|PCRE_FIRSTLINE| \
582     PCRE_DUPNAMES|PCRE_NEWLINE_BITS|PCRE_BSR_ANYCRLF|PCRE_BSR_UNICODE| \     PCRE_DUPNAMES|PCRE_NEWLINE_BITS|PCRE_BSR_ANYCRLF|PCRE_BSR_UNICODE| \
583     PCRE_JAVASCRIPT_COMPAT)     PCRE_JAVASCRIPT_COMPAT|PCRE_UCP)
584    
585  #define PUBLIC_EXEC_OPTIONS \  #define PUBLIC_EXEC_OPTIONS \
586    (PCRE_ANCHORED|PCRE_NOTBOL|PCRE_NOTEOL|PCRE_NOTEMPTY|PCRE_NOTEMPTY_ATSTART| \    (PCRE_ANCHORED|PCRE_NOTBOL|PCRE_NOTEOL|PCRE_NOTEMPTY|PCRE_NOTEMPTY_ATSTART| \
# Line 905  so that PCRE works on both ASCII and EBC Line 905  so that PCRE works on both ASCII and EBC
905  #define STRING_BSR_ANYCRLF_RIGHTPAR "BSR_ANYCRLF)"  #define STRING_BSR_ANYCRLF_RIGHTPAR "BSR_ANYCRLF)"
906  #define STRING_BSR_UNICODE_RIGHTPAR "BSR_UNICODE)"  #define STRING_BSR_UNICODE_RIGHTPAR "BSR_UNICODE)"
907  #define STRING_UTF8_RIGHTPAR        "UTF8)"  #define STRING_UTF8_RIGHTPAR        "UTF8)"
908    #define STRING_UCP_RIGHTPAR         "UCP)"
909    
910  #else  /* SUPPORT_UTF8 */  #else  /* SUPPORT_UTF8 */
911    
# Line 1158  only. */ Line 1159  only. */
1159  #define STRING_BSR_ANYCRLF_RIGHTPAR STR_B STR_S STR_R STR_UNDERSCORE STR_A STR_N STR_Y STR_C STR_R STR_L STR_F STR_RIGHT_PARENTHESIS  #define STRING_BSR_ANYCRLF_RIGHTPAR STR_B STR_S STR_R STR_UNDERSCORE STR_A STR_N STR_Y STR_C STR_R STR_L STR_F STR_RIGHT_PARENTHESIS
1160  #define STRING_BSR_UNICODE_RIGHTPAR STR_B STR_S STR_R STR_UNDERSCORE STR_U STR_N STR_I STR_C STR_O STR_D STR_E STR_RIGHT_PARENTHESIS  #define STRING_BSR_UNICODE_RIGHTPAR STR_B STR_S STR_R STR_UNDERSCORE STR_U STR_N STR_I STR_C STR_O STR_D STR_E STR_RIGHT_PARENTHESIS
1161  #define STRING_UTF8_RIGHTPAR        STR_U STR_T STR_F STR_8 STR_RIGHT_PARENTHESIS  #define STRING_UTF8_RIGHTPAR        STR_U STR_T STR_F STR_8 STR_RIGHT_PARENTHESIS
1162    #define STRING_UCP_RIGHTPAR         STR_U STR_C STR_P STR_RIGHT_PARENTHESIS
1163    
1164  #endif  /* SUPPORT_UTF8 */  #endif  /* SUPPORT_UTF8 */
1165    
# Line 1218  corresponds to "." in DOTALL mode rather Line 1220  corresponds to "." in DOTALL mode rather
1220  used for [^] in JavaScript compatibility mode. In non-DOTALL mode, "." behaves  used for [^] in JavaScript compatibility mode. In non-DOTALL mode, "." behaves
1221  like \N.  like \N.
1222    
1223    The special values ESC_DU, ESC_du, etc. are used instead of ESC_D, ESC_d, etc.
1224    when PCRE_UCP is set, when replacement of \d etc by \p sequences is required.
1225    They must be contiguous, and remain in order so that the replacements can be
1226    looked up from a table.
1227    
1228  The final escape must be ESC_REF as subsequent values are used for  The final escape must be ESC_REF as subsequent values are used for
1229  backreferences (\1, \2, \3, etc). There are two tests in the code for an escape  backreferences (\1, \2, \3, etc). There are two tests in the code for an escape
1230  greater than ESC_b and less than ESC_Z to detect the types that may be  greater than ESC_b and less than ESC_Z to detect the types that may be
# Line 1227  put in between that don't consume a char Line 1234  put in between that don't consume a char
1234    
1235  enum { ESC_A = 1, ESC_G, ESC_K, ESC_B, ESC_b, ESC_D, ESC_d, ESC_S, ESC_s,  enum { ESC_A = 1, ESC_G, ESC_K, ESC_B, ESC_b, ESC_D, ESC_d, ESC_S, ESC_s,
1236         ESC_W, ESC_w, ESC_N, ESC_dum, ESC_C, ESC_P, ESC_p, ESC_R, ESC_H,         ESC_W, ESC_w, ESC_N, ESC_dum, ESC_C, ESC_P, ESC_p, ESC_R, ESC_H,
1237         ESC_h, ESC_V, ESC_v, ESC_X, ESC_Z, ESC_z, ESC_E, ESC_Q, ESC_g, ESC_k,         ESC_h, ESC_V, ESC_v, ESC_X, ESC_Z, ESC_z,
1238           ESC_E, ESC_Q, ESC_g, ESC_k,
1239           ESC_DU, ESC_du, ESC_SU, ESC_su, ESC_WU, ESC_wu,
1240         ESC_REF };         ESC_REF };
1241    
   
1242  /* Opcode table: Starting from 1 (i.e. after OP_END), the values up to  /* Opcode table: Starting from 1 (i.e. after OP_END), the values up to
1243  OP_EOD must correspond in order to the list of escapes immediately above.  OP_EOD must correspond in order to the list of escapes immediately above.
1244    
# Line 1525  enum { ERR0, ERR1, ERR2, ERR3, ERR4, Line 1533  enum { ERR0, ERR1, ERR2, ERR3, ERR4,
1533         ERR30, ERR31, ERR32, ERR33, ERR34, ERR35, ERR36, ERR37, ERR38, ERR39,         ERR30, ERR31, ERR32, ERR33, ERR34, ERR35, ERR36, ERR37, ERR38, ERR39,
1534         ERR40, ERR41, ERR42, ERR43, ERR44, ERR45, ERR46, ERR47, ERR48, ERR49,         ERR40, ERR41, ERR42, ERR43, ERR44, ERR45, ERR46, ERR47, ERR48, ERR49,
1535         ERR50, ERR51, ERR52, ERR53, ERR54, ERR55, ERR56, ERR57, ERR58, ERR59,         ERR50, ERR51, ERR52, ERR53, ERR54, ERR55, ERR56, ERR57, ERR58, ERR59,
1536         ERR60, ERR61, ERR62, ERR63, ERR64, ERR65, ERR66, ERRCOUNT };         ERR60, ERR61, ERR62, ERR63, ERR64, ERR65, ERR66, ERR67, ERRCOUNT };
1537    
1538  /* The real format of the start of the pcre block; the index of names and the  /* The real format of the start of the pcre block; the index of names and the
1539  code vector run on as long as necessary after the end. We store an explicit  code vector run on as long as necessary after the end. We store an explicit
# Line 1668  typedef struct match_data { Line 1676  typedef struct match_data {
1676    BOOL   noteol;                /* NOTEOL flag */    BOOL   noteol;                /* NOTEOL flag */
1677    BOOL   utf8;                  /* UTF8 flag */    BOOL   utf8;                  /* UTF8 flag */
1678    BOOL   jscript_compat;        /* JAVASCRIPT_COMPAT flag */    BOOL   jscript_compat;        /* JAVASCRIPT_COMPAT flag */
1679      BOOL   use_ucp;               /* PCRE_UCP flag */
1680    BOOL   endonly;               /* Dollar not before final \n */    BOOL   endonly;               /* Dollar not before final \n */
1681    BOOL   notempty;              /* Empty string match not wanted */    BOOL   notempty;              /* Empty string match not wanted */
1682    BOOL   notempty_atstart;      /* Empty string match at start not wanted */    BOOL   notempty_atstart;      /* Empty string match at start not wanted */

Legend:
Removed from v.517  
changed lines
  Added in v.518

webmaster@exim.org
ViewVC Help
Powered by ViewVC 1.1.12