// }
}
} catch (IndexOutOfBoundsException e) {
+// reset end position for error reporting
+ currentPosition-=2;
throw new InvalidInputException(UNTERMINATED_STRING);
} catch (InvalidInputException e) {
if (e.getMessage().equals(INVALID_ESCAPE)) {
// }
}
} catch (IndexOutOfBoundsException e) {
+ // reset end position for error reporting
+ currentPosition-=2;
throw new InvalidInputException(UNTERMINATED_STRING);
} catch (InvalidInputException e) {
if (e.getMessage().equals(INVALID_ESCAPE)) {
// }
}
} catch (IndexOutOfBoundsException e) {
+// reset end position for error reporting
+ currentPosition-=2;
throw new InvalidInputException(UNTERMINATED_STRING);
} catch (InvalidInputException e) {
if (e.getMessage().equals(INVALID_ESCAPE)) {
case '\'' :
if (tokenizeStrings) {
consumeStringConstant();
- return TokenNameStringConstant;
+ return TokenNameStringSingleQuote;
}
return TokenNameEncapsedString1;
case '"' :
return TokenNameAT;
case '\'' :
consumeStringConstant();
- return TokenNameStringConstant;
+ return TokenNameStringSingleQuote;
case '"' :
if (tokenizeStrings) {
consumeStringLiteral();
- return TokenNameStringLiteral;
+ return TokenNameStringDoubleQuote;
}
return TokenNameEncapsedString2;
case '`' :
return TokenNameCOMMENT_BLOCK;
}
} catch (IndexOutOfBoundsException e) {
+// reset end position for error reporting
+ currentPosition-=2;
throw new InvalidInputException(UNTERMINATED_COMMENT);
}
break;
public char[] getSource() {
return this.source;
}
+ public static boolean isIdentifierOrKeyword(int token) {
+ return (token == TokenNameIdentifier) || (token > TokenNameKEYWORD);
+ }
final char[] optimizedCurrentTokenSource1() {
//return always the same char[] build only once
//optimization at no speed cost of 99.5 % of the singleCharIdentifier
return "Integer(" + new String(getCurrentTokenSource()) + ")"; //$NON-NLS-1$ //$NON-NLS-2$
case TokenNameDoubleLiteral :
return "Double(" + new String(getCurrentTokenSource()) + ")"; //$NON-NLS-1$ //$NON-NLS-2$
- case TokenNameStringLiteral :
+ case TokenNameStringDoubleQuote :
return "StringLiteral(" + new String(getCurrentTokenSource()) + ")"; //$NON-NLS-1$ //$NON-NLS-2$
- case TokenNameStringConstant :
+ case TokenNameStringSingleQuote :
return "StringConstant(" + new String(getCurrentTokenSource()) + ")"; //$NON-NLS-1$ //$NON-NLS-2$
case TokenNameStringInterpolated :
return "StringInterpolated(" + new String(getCurrentTokenSource())