Package jaque.expressions

Examples of jaque.expressions.Expression


    return Expression.invoke((InvocableExpression) e.getMethod()
        .apply(this), Collections.unmodifiableList(newArgs));
  }

  public Expression visit(MemberExpression e) {
    Expression instance = e.getInstance();
    if (instance != null) {
      instance = stripQuotes(instance.apply(this));
      if (instance.getExpressionType() == ExpressionType.Lambda)
        return instance;
      if (instance != e.getInstance())
        return Expression.member(e.getExpressionType(), instance, e
            .getMember(), e.getResultType(), e.getParameters());
    }
View Full Code Here


      final Queryable<E> source) {
    LambdaExpression<?> lambda = LambdaExpression.parse(predicate);
    Class<E> eType = source.getElementType();
    if (eType == null)
      eType = (Class<E>) lambda.getParameters().get(0).getResultType();
    Expression e = invoke(null, _where, quote(lambda), source
        .getExpression());
    return source.getFactory().createQueryable(eType, e);
  }
View Full Code Here

  @SuppressWarnings("unchecked")
  public static <T, Result> Queryable<Result> select(
      final Function<? extends Result, ? super T> transform,
      final Queryable<T> source) {
    LambdaExpression<?> lambda = LambdaExpression.parse(transform);
    Expression e = invoke(null, _select, quote(lambda), source
        .getExpression());
    return (Queryable<Result>) source.getFactory().createQueryable(
        lambda.getResultType(), e);
  }
View Full Code Here

  @SuppressWarnings("unchecked")
  public static <T, Result> Queryable<Result> selectMany(
      final Function<Iterable<Result>, ? super T> transform,
      final Queryable<T> source) {
    LambdaExpression<?> lambda = LambdaExpression.parse(transform);
    Expression e = invoke(null, _selectMany, quote(lambda), source
        .getExpression());
    return (Queryable<Result>) source.getFactory().createQueryable(null, e);
  }
View Full Code Here

    return (Queryable<Result>) source.getFactory().createQueryable(null, e);
  }

  public static <T> Queryable<T> skip(final int count,
      final Queryable<T> source) {
    Expression e = invoke(null, _skip, constant(count, Integer.TYPE),
        source.getExpression());
    return source.getFactory().createQueryable(source.getElementType(), e);
  }
View Full Code Here

      final Queryable<E> source) {
    LambdaExpression<?> lambda = LambdaExpression.parse(predicate);
    // Class<E> eType = source.getElementType();
    // if (eType == null)
    // eType = (Class<E>) lambda.getParameters().get(0).getResultType();
    Expression e = invoke(null, _all, quote(lambda), source.getExpression());
    return source.getFactory().createQueryable(Boolean.TYPE, e).single();
  }
View Full Code Here

  public static <E> boolean any(final Function<Boolean, ? super E> predicate,
      final Queryable<E> source) {
    LambdaExpression<?> lambda = LambdaExpression.parse(predicate);

    Expression e = invoke(null, _any, quote(lambda), source.getExpression());
    return source.getFactory().createQueryable(Boolean.TYPE, e).single();
  }
View Full Code Here

    Expression e = invoke(null, _any, quote(lambda), source.getExpression());
    return source.getFactory().createQueryable(Boolean.TYPE, e).single();
  }

  public static <T extends Number> Number average(final Queryable<T> source) {
    Expression e = invoke(null, _average1, source.getExpression());
    return (Number) source.getFactory().createQueryable(Number.class, e)
        .single();
  }
View Full Code Here

  }

  public static <T, E extends Number> Number average(
      final Function<E, ? super T> selector, final Queryable<T> source) {
    LambdaExpression<?> lambda = LambdaExpression.parse(selector);
    Expression e = invoke(null, _average2, quote(lambda), source
        .getExpression());
    return (Number) source.getFactory().createQueryable(Number.class, e)
        .single();
  }
View Full Code Here

  }

  public static <T extends Comparable<? super T>> boolean contains(
      final T value, final Queryable<T> source) {

    Expression e = invoke(null, _contains1, constant(value), source
        .getExpression());
    return source.getFactory().createQueryable(Boolean.TYPE, e).single();
  }
View Full Code Here

TOP

Related Classes of jaque.expressions.Expression

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.