package railo.runtime.sql.old; public final class TokenMgrError extends Error { protected static final String addEscapes(String s) { StringBuffer stringbuffer = new StringBuffer(); for(int i = 0; i < s.length(); i++) { char c; switch(s.charAt(i)) { case 0: // '\0' break; case 8: // '\b' stringbuffer.append("\\b"); break; case 9: // '\t' stringbuffer.append("\\t"); break; case 10: // '\n' stringbuffer.append("\\n"); break; case 12: // '\f' stringbuffer.append("\\f"); break; case 13: // '\r' stringbuffer.append("\\r"); break; case 34: // '"' stringbuffer.append("\\\""); break; case 39: // '\'' stringbuffer.append("\\'"); break; case 92: // '\\' stringbuffer.append("\\\\"); break; default: if((c = s.charAt(i)) < ' ' || c > '~') { String s1 = "0000" + Integer.toString(c, 16); stringbuffer.append("\\u" + s1.substring(s1.length() - 4, s1.length())); } else { stringbuffer.append(c); } break; } } return stringbuffer.toString(); } private static final String LexicalError(boolean flag, int i, int j, int k, String s, char c) { return "Lexical error at line " + j + ", column " + k + ". Encountered: " + (flag ? "<EOF> " : "\"" + addEscapes(String.valueOf(c)) + "\"" + " (" + (int)c + "), ") + "after : \"" + addEscapes(s) + "\""; } public String getMessage() { return super.getMessage(); } public TokenMgrError() { } public TokenMgrError(String s, int i) { super(s); errorCode = i; } public TokenMgrError(boolean flag, int i, int j, int k, String s, char c, int l) { this(LexicalError(flag, i, j, k, s, c), l); } static final int LEXICAL_ERROR = 0; static final int STATIC_LEXER_ERROR = 1; static final int INVALID_LEXICAL_STATE = 2; static final int LOOP_DETECTED = 3; int errorCode; }