/** * Create a new aggregating list expression * * @param expression values for this expression will be accumulated into a list * @return wrapper expression */ public static <E> AbstractGroupExpression<E, List<E>> list(Expression<E> expression) { return new GList<E>(expression); }
/** * Create a new aggregating list expression * * @param groupExpression values for this expression will be accumulated into a list * @param <E> * @param <F> * @return wrapper expression */ public static <E, F> AbstractGroupExpression<E, List<F>> list(GroupExpression<E, F> groupExpression) { return new MixinGroupExpression<E, F, List<F>>(groupExpression, new GList<F>(groupExpression)); }
/** * Create a new aggregating list expression * * @param expression values for this expression will be accumulated into a list * @return wrapper expression */ public static <E> AbstractGroupExpression<E, List<E>> list(Expression<E> expression) { return new GList<E>(expression); }
/** * Create a new aggregating list expression * * @param groupExpression values for this expression will be accumulated into a list * @param <E> * @param <F> * @return wrapper expression */ public static <E, F> AbstractGroupExpression<E, List<F>> list(GroupExpression<E, F> groupExpression) { return new MixinGroupExpression<E, F, List<F>>(groupExpression, new GList<F>(groupExpression)); }