code: @SuppressWarnings("unchecked")
      public <A> A createAliasForExpr(Class<A> cl, Expression<? extends A> expr) {
          try {
              return (A) proxyCache.get(Pair.<Class<?>, Expression<?>>of(cl, expr));
          } catch (ExecutionException e) {
             throw new QueryException(e);
          }
      }
docs: Create an alias instance for the given class and Expression
  
  @param <A>
  @param cl type for alias
  @param expr underlying expression
  @return alias instance