| 6 |
and semantics are as close as possible to those of the Perl 5 language. |
and semantics are as close as possible to those of the Perl 5 language. |
| 7 |
|
|
| 8 |
Written by Philip Hazel |
Written by Philip Hazel |
| 9 |
Copyright (c) 1997-2007 University of Cambridge |
Copyright (c) 1997-2008 University of Cambridge |
| 10 |
|
|
| 11 |
----------------------------------------------------------------------------- |
----------------------------------------------------------------------------- |
| 12 |
Redistribution and use in source and binary forms, with or without |
Redistribution and use in source and binary forms, with or without |
| 43 |
|
|
| 44 |
|
|
| 45 |
#ifdef HAVE_CONFIG_H |
#ifdef HAVE_CONFIG_H |
| 46 |
#include <config.h> |
#include "config.h" |
| 47 |
#endif |
#endif |
| 48 |
|
|
| 49 |
#include "pcre_internal.h" |
#include "pcre_internal.h" |
| 217 |
tcode += 1 + LINK_SIZE; |
tcode += 1 + LINK_SIZE; |
| 218 |
break; |
break; |
| 219 |
|
|
| 220 |
|
/* SKIPZERO skips the bracket. */ |
| 221 |
|
|
| 222 |
|
case OP_SKIPZERO: |
| 223 |
|
tcode++; |
| 224 |
|
do tcode += GET(tcode,1); while (*tcode == OP_ALT); |
| 225 |
|
tcode += 1 + LINK_SIZE; |
| 226 |
|
break; |
| 227 |
|
|
| 228 |
/* Single-char * or ? sets the bit and tries the next item */ |
/* Single-char * or ? sets the bit and tries the next item */ |
| 229 |
|
|
| 230 |
case OP_STAR: |
case OP_STAR: |
| 349 |
switch(tcode[1]) |
switch(tcode[1]) |
| 350 |
{ |
{ |
| 351 |
case OP_ANY: |
case OP_ANY: |
| 352 |
|
case OP_ALLANY: |
| 353 |
return SSB_FAIL; |
return SSB_FAIL; |
| 354 |
|
|
| 355 |
case OP_NOT_DIGIT: |
case OP_NOT_DIGIT: |
| 504 |
NULL on error or if no optimization possible |
NULL on error or if no optimization possible |
| 505 |
*/ |
*/ |
| 506 |
|
|
| 507 |
PCRE_EXP_DEFN pcre_extra * |
PCRE_EXP_DEFN pcre_extra * PCRE_CALL_CONVENTION |
| 508 |
pcre_study(const pcre *external_re, int options, const char **errorptr) |
pcre_study(const pcre *external_re, int options, const char **errorptr) |
| 509 |
{ |
{ |
| 510 |
uschar start_bits[32]; |
uschar start_bits[32]; |