/[pcre]/code/trunk/pcre_xclass.c
ViewVC logotype

Diff of /code/trunk/pcre_xclass.c

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

revision 384 by ph10, Sun Mar 8 16:27:43 2009 UTC revision 517 by ph10, Wed May 5 10:44:20 2010 UTC
# Line 6  Line 6 
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-2009 University of Cambridge             Copyright (c) 1997-2010 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
# Line 112  while ((t = *data++) != XCL_END) Line 112  while ((t = *data++) != XCL_END)
112        break;        break;
113    
114        case PT_LAMP:        case PT_LAMP:
115        if ((prop->chartype == ucp_Lu || prop->chartype == ucp_Ll || prop->chartype == ucp_Lt) ==        if ((prop->chartype == ucp_Lu || prop->chartype == ucp_Ll ||
116            (t == XCL_PROP)) return !negated;             prop->chartype == ucp_Lt) == (t == XCL_PROP)) return !negated;
117        break;        break;
118    
119        case PT_GC:        case PT_GC:
120        if ((data[1] == _pcre_ucp_gentype[prop->chartype]) == (t == XCL_PROP)) return !negated;        if ((data[1] == _pcre_ucp_gentype[prop->chartype]) == (t == XCL_PROP))
121            return !negated;
122        break;        break;
123    
124        case PT_PC:        case PT_PC:
# Line 127  while ((t = *data++) != XCL_END) Line 128  while ((t = *data++) != XCL_END)
128        case PT_SC:        case PT_SC:
129        if ((data[1] == prop->script) == (t == XCL_PROP)) return !negated;        if ((data[1] == prop->script) == (t == XCL_PROP)) return !negated;
130        break;        break;
131    
132          case PT_ALNUM:
133          if ((_pcre_ucp_gentype[prop->chartype] == ucp_L ||
134               _pcre_ucp_gentype[prop->chartype] == ucp_N) == (t == XCL_PROP))
135            return !negated;
136          break;
137    
138          case PT_SPACE:    /* Perl space */
139          if ((_pcre_ucp_gentype[prop->chartype] == ucp_Z ||
140               c == CHAR_HT || c == CHAR_NL || c == CHAR_FF || c == CHAR_CR)
141                 == (t == XCL_PROP))
142            return !negated;
143          break;
144    
145          case PT_PXSPACE:  /* POSIX space */
146          if ((_pcre_ucp_gentype[prop->chartype] == ucp_Z ||
147               c == CHAR_HT || c == CHAR_NL || c == CHAR_VT ||
148               c == CHAR_FF || c == CHAR_CR) == (t == XCL_PROP))
149            return !negated;
150          break;
151    
152          case PT_WORD:
153          if ((_pcre_ucp_gentype[prop->chartype] == ucp_L ||
154               _pcre_ucp_gentype[prop->chartype] == ucp_N || c == CHAR_UNDERSCORE)
155                 == (t == XCL_PROP))
156            return !negated;
157          break;
158    
159        /* This should never occur, but compilers may mutter if there is no        /* This should never occur, but compilers may mutter if there is no
160        default. */        default. */

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

  ViewVC Help
Powered by ViewVC 1.1.5