Ignore:
Timestamp:
Oct 13, 2015, 3:57:17 PM (4 years ago)
Author:
nmedfort
Message:

First attempt at adding grapheme cluster mode to icgrep.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/re/re_parser.h

    r4829 r4831  
    2424    {intersectOp, setDiffOp, ampChar, hyphenChar, rangeHyphen, posixPropertyOpener, setOpener, setCloser, backSlash, emptyOperator};
    2525
    26 enum ModeFlagType
    27     {CASE_INSENSITIVE_MODE_FLAG = 1,
    28      MULTILINE_MODE_FLAG = 2,      // not currently implemented
    29      DOTALL_MODE_FLAG = 4,         // not currently implemented
    30      IGNORE_SPACE_MODE_FLAG = 8,   // not currently implemented
    31      UNIX_LINES_MODE_FLAG = 16};   // not currently implemented
     26enum ModeFlagType : unsigned {
     27    NONE = 0,
     28    CASE_INSENSITIVE_MODE_FLAG = 1,
     29    MULTILINE_MODE_FLAG = 2,      // not currently implemented
     30    DOTALL_MODE_FLAG = 4,         // not currently implemented
     31    IGNORE_SPACE_MODE_FLAG = 8,   // not currently implemented
     32    UNIX_LINES_MODE_FLAG = 16,    // not currently implemented
     33    GRAPHEME_CLUSTER_MODE = 32
     34};
    3235
    3336const int MAX_REPETITION_LOWER_BOUND = 1024;
     
    7174        inline const char_t operator*() const {
    7275            if (LLVM_UNLIKELY(mCursor == mEnd)) {
    73                 throw IncompleteRegularExpression();
     76                return 0;
    7477            }
    7578            return *mCursor;
Note: See TracChangeset for help on using the changeset viewer.