Construct a {@code double} specialized predicate from the given predicate
function and describer.

@param condition The predicate function
@param describer The describer

@return A predicate
422957
public static ContractDoubleCondition conditionD(
    final DoublePredicate condition,
    final DoubleFunction<String> describer)
  {
    return ContractDoubleCondition.of(condition, describer);
  }
751575
public static long checkInvariantL(
    final long value,
    final ContractLongConditionType condition)
    throws InvariantViolationException
  {
    return checkInvariantL(value, condition.predicate(), condition.describer());
  }
818381
public static <T> Predicate<T> and(final Predicate<? super T> first, final Predicate<? super T> second) {
        return new Predicate<T>() {
            @Override
            public boolean test(final T testValue) {
                return first.test(testValue) && second.test(testValue);
            }
        };
    }
338212
public static <T extends Comparable<? super T>> Predicates<T> betweenInclusiveFrom(T from, T to)
    {
        Predicates.failIfDifferentTypes(from, to);
        return new BetweenInclusiveFrom<T>(from, to);
    }
739261
@Override
    public Predicate le(Expression<? extends Number> arg0, Number arg1)
    {
        // TODO Auto-generated method stub
        return new ComparisonPredicate(arg0, arg1, ConditionalOperator.LTE);
    }
919110
@Nonnull
	public static LLongPredicate longPredicateFrom(Consumer<LLongPredicateBuilder> buildingFunction) {
		LLongPredicateBuilder builder = new LLongPredicateBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
996895
public static <T> Predicate<T> constant(final boolean b) {
    return b
        ? Predicates.<Object, T>narrow(TRUE)
        : Predicates.<Object, T>narrow(FALSE);
  }
903353
@Beta
    public static <A, T> Predicate<T> sp(final Object mutex, final A a, final BiPredicate<A, T> biPredicate) {
        N.checkArgNotNull(mutex, "mutex");
        N.checkArgNotNull(biPredicate, "biPredicate");

        return new Predicate<T>() {
            @Override
            public boolean test(T t) {
                synchronized (mutex) {
                    return biPredicate.test(a, t);
                }
            }
        };
    }
1355071
@Nonnull
	public static <T> LObjIntLongPredicate<T> objIntLongPredicateFrom(Consumer<LObjIntLongPredicateBuilder<T>> buildingFunction) {
		LObjIntLongPredicateBuilder builder = new LObjIntLongPredicateBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
1265075
@Nonnull
	public static LIntPredicate intPredicateFrom(Consumer<LIntPredicateBuilder> buildingFunction) {
		LIntPredicateBuilder builder = new LIntPredicateBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
746115
public static <T extends ParameterDescription> ElementMatcher.Junction<T> hasGenericType(ElementMatcher<? super TypeDescription.Generic> matcher) {
        return new MethodParameterTypeMatcher<T>(matcher);
    }
675837
public static long checkPostconditionL(
    final long value,
    final ContractLongConditionType condition)
    throws PostconditionViolationException
  {
    return checkPostconditionL(
      value, condition.predicate(), condition.describer());
  }
1133079
@Nonnull
	public static LBiIntPredicate biIntPredicateFrom(Consumer<LBiIntPredicateBuilder> buildingFunction) {
		LBiIntPredicateBuilder builder = new LBiIntPredicateBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
970023
@Nonnull
	public static <T> Predicate<T> predicateFrom(Consumer<PredicateBuilder<T>> buildingFunction) {
		PredicateBuilder builder = new PredicateBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
198900
public static <T extends Comparable<T>> Predicate<T> between(
      final T low, final T high) {
    return new Predicate<T>() {
      @Override
      public boolean apply(T obj) {
        return obj != null
            && (low == null || obj.compareTo(low) >= 0)
            && (high == null || obj.compareTo(high) < 0);
      }
    };
  }
1113080
@Nonnull
	public static LBiSrtPredicate biSrtPredicateFrom(Consumer<LBiSrtPredicateBuilder> buildingFunction) {
		LBiSrtPredicateBuilder builder = new LBiSrtPredicateBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}
1080721
@Nonnull
	public static <T1, T2> LBiPredicate<T1, T2> biPredicateFrom(Consumer<LBiPredicateBuilder<T1, T2>> buildingFunction) {
		LBiPredicateBuilder builder = new LBiPredicateBuilder();
		buildingFunction.accept(builder);
		return builder.build();
	}