/** * Converts a string to a string with one or two carets in it. For example, * <code>addCarets("values (foo)", 1, 9, 1, 12)</code> yields "values * (^foo^)". */ public static String addCarets( String sql, int line, int col, int endLine, int endCol) { String sqlWithCarets; int cut = lineColToIndex(sql, line, col); sqlWithCarets = sql.substring(0, cut) + "^" + sql.substring(cut); if ((col != endCol) || (line != endLine)) { cut = lineColToIndex(sqlWithCarets, endLine, endCol); ++cut; // for caret if (cut < sqlWithCarets.length()) { sqlWithCarets = sqlWithCarets.substring(0, cut) + "^" + sqlWithCarets.substring(cut); } else { sqlWithCarets += "^"; } } return sqlWithCarets; }
/** * Converts a string to a string with one or two carets in it. For example, * <code>addCarets("values (foo)", 1, 9, 1, 12)</code> yields "values * (^foo^)". */ public static String addCarets( String sql, int line, int col, int endLine, int endCol) { String sqlWithCarets; int cut = lineColToIndex(sql, line, col); sqlWithCarets = sql.substring(0, cut) + "^" + sql.substring(cut); if ((col != endCol) || (line != endLine)) { cut = lineColToIndex(sqlWithCarets, endLine, endCol); ++cut; // for caret if (cut < sqlWithCarets.length()) { sqlWithCarets = sqlWithCarets.substring(0, cut) + "^" + sqlWithCarets.substring(cut); } else { sqlWithCarets += "^"; } } return sqlWithCarets; }
final SqlParserPos pos = literal.getParserPosition(); final int start = SqlParserUtil.lineColToIndex( sql, pos.getLineNum(), pos.getColumnNum()); final int end = SqlParserUtil.lineColToIndex( sql, pos.getEndLineNum(),
final SqlParserPos pos = literal.getParserPosition(); final int start = SqlParserUtil.lineColToIndex( sql, pos.getLineNum(), pos.getColumnNum()); final int end = SqlParserUtil.lineColToIndex( sql, pos.getEndLineNum(),