use of org.jdbi.v3.core.internal.lexer.ColonStatementLexer in project jdbi by jdbi.
the class ColonPrefixSqlParser method internalParse.
@Override
ParsedSql internalParse(String sql) {
ParsedSql.Builder parsedSql = ParsedSql.builder();
ColonStatementLexer lexer = new ColonStatementLexer(CharStreams.fromString(sql));
lexer.addErrorListener(new ErrorListener());
Token t = lexer.nextToken();
while (t.getType() != EOF) {
switch(t.getType()) {
case COMMENT:
case LITERAL:
case QUOTED_TEXT:
case DOUBLE_QUOTED_TEXT:
parsedSql.append(t.getText());
break;
case NAMED_PARAM:
parsedSql.appendNamedParameter(t.getText().substring(1));
break;
case POSITIONAL_PARAM:
parsedSql.appendPositionalParameter();
break;
case ESCAPED_TEXT:
parsedSql.append(t.getText().substring(1));
break;
default:
break;
}
t = lexer.nextToken();
}
return parsedSql.build();
}
Aggregations