modules/jooby-jdbi/src/main/java/org/skife/jdbi/v2/ExpandedStmtRewriter.java
@Override
  public RewrittenStatement rewrite(final String sql, final Binding params,
      final StatementContext ctx)
  {
    final ParsedStatement stmt = new ParsedStatement();
    try {
      final String parsedSql = parseString(sql, stmt, params);
      return new MyRewrittenStatement(parsedSql, stmt, ctx);
    } catch (IllegalArgumentException e) {
      throw new UnableToCreateStatementException(
          "Exception parsing for named parameter replacement", e, ctx);
    }

  }
@Override
  public RewrittenStatement rewrite(final String sql, final Binding params,
      final StatementContext ctx)
  {
    final ParsedStatement stmt = new ParsedStatement();
    try {
      final String parsedSql = parseString(sql, stmt, params);
      return new MyRewrittenStatement(parsedSql, stmt, ctx);
    } catch (IllegalArgumentException e) {
      throw new UnableToCreateStatementException(
          "Exception parsing for named parameter replacement", e, ctx);
    }

  }
Munge up the SQL as desired. Responsible for figuring out ow to bind any
arguments in to the resultant prepared statement.

@param sql The SQL to rewrite
@param params contains the arguments which have been bound to this statement.
@param ctx The statement context for the statement being executed
@return somethign which can provde the actual SQL to prepare a statement from
and which can bind the correct arguments to that prepared statement