// 
// Decompiled by Procyon v0.6.0
// 

package it.unimi.dsi.fastutil.doubles;

import java.util.Objects;
import java.util.function.Predicate;

@FunctionalInterface
public interface DoublePredicate extends Predicate<Double>, java.util.function.DoublePredicate
{
    @Deprecated
    default boolean test(final Double t) {
        return this.test(t);
    }
    
    default DoublePredicate and(final java.util.function.DoublePredicate other) {
        Objects.requireNonNull(other);
        return t -> this.test(t) && other.test(t);
    }
    
    default DoublePredicate and(final DoublePredicate other) {
        return this.and((java.util.function.DoublePredicate)other);
    }
    
    @Deprecated
    default Predicate<Double> and(final Predicate<? super Double> other) {
        return super.and(other);
    }
    
    default DoublePredicate negate() {
        return t -> !this.test(t);
    }
    
    default DoublePredicate or(final java.util.function.DoublePredicate other) {
        Objects.requireNonNull(other);
        return t -> this.test(t) || other.test(t);
    }
    
    default DoublePredicate or(final DoublePredicate other) {
        return this.or((java.util.function.DoublePredicate)other);
    }
    
    @Deprecated
    default Predicate<Double> or(final Predicate<? super Double> other) {
        return super.or(other);
    }
}
