String preparedRender(String template, StatementContext ctx) {
        try {
            return Optional.ofNullable(
                            templateCache.getWithLoader(
                                    new StatementCacheKey(templateEngine, template),
                                    cacheLoaderFunction(ctx)))
                    .orElse(cx -> templateEngine.render(template, cx)) // fall-back to old behavior
                    .apply(ctx);
        } catch (final IllegalArgumentException e) {
            throw new UnableToCreateStatementException("Exception rendering SQL template", e, ctx);
        }
    }
Returns cache statistics for the internal template cache. This returns a cache specific object,
so the user needs to know what caching library is in use.

@param <T> the type of the cache statistics object
core/src/main/java/org/jdbi/v3/core/statement/SqlStatements.java