Converts from Regexp error code to RE2 error code. Maybe some day they will diverge. In any event, this hides the existence of Regexp from RE2 users.
| 69 | // Maybe some day they will diverge. In any event, this |
| 70 | // hides the existence of Regexp from RE2 users. |
| 71 | static RE2::ErrorCode RegexpErrorToRE2(re2::RegexpStatusCode code) { |
| 72 | switch (code) { |
| 73 | case re2::kRegexpSuccess: |
| 74 | return RE2::NoError; |
| 75 | case re2::kRegexpInternalError: |
| 76 | return RE2::ErrorInternal; |
| 77 | case re2::kRegexpBadEscape: |
| 78 | return RE2::ErrorBadEscape; |
| 79 | case re2::kRegexpBadCharClass: |
| 80 | return RE2::ErrorBadCharClass; |
| 81 | case re2::kRegexpBadCharRange: |
| 82 | return RE2::ErrorBadCharRange; |
| 83 | case re2::kRegexpMissingBracket: |
| 84 | return RE2::ErrorMissingBracket; |
| 85 | case re2::kRegexpMissingParen: |
| 86 | return RE2::ErrorMissingParen; |
| 87 | case re2::kRegexpUnexpectedParen: |
| 88 | return RE2::ErrorUnexpectedParen; |
| 89 | case re2::kRegexpTrailingBackslash: |
| 90 | return RE2::ErrorTrailingBackslash; |
| 91 | case re2::kRegexpRepeatArgument: |
| 92 | return RE2::ErrorRepeatArgument; |
| 93 | case re2::kRegexpRepeatSize: |
| 94 | return RE2::ErrorRepeatSize; |
| 95 | case re2::kRegexpRepeatOp: |
| 96 | return RE2::ErrorRepeatOp; |
| 97 | case re2::kRegexpBadPerlOp: |
| 98 | return RE2::ErrorBadPerlOp; |
| 99 | case re2::kRegexpBadUTF8: |
| 100 | return RE2::ErrorBadUTF8; |
| 101 | case re2::kRegexpBadNamedCapture: |
| 102 | return RE2::ErrorBadNamedCapture; |
| 103 | } |
| 104 | return RE2::ErrorInternal; |
| 105 | } |
| 106 | |
| 107 | static std::string trunc(const StringPiece& pattern) { |
| 108 | if (pattern.size() < 100) |