Package fj.function

Class Booleans


  • public final class Booleans
    extends java.lang.Object
    Curried logical functions.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> and
      Curried form of logical "and" (conjunction).
      static F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> if_
      Curried form of logical "if" (reverse material implication).
      static F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> iff
      Curried form of logical "if and only if" (biconditional, equivalence).
      static F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> implies
      Curried form of logical "only if" (material implication).
      static F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> nif
      Curried form of logical "not if" (reverse nonimplication).
      static F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> nimp
      Curried form of logical "not implies" (nonimplication).
      static F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> nor
      Curried form of logical "not or".
      static F<java.lang.Boolean,​java.lang.Boolean> not
      Logical negation.
      static F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> or
      Curried form of logical "inclusive or" (disjunction).
      static F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> xor
      Curried form of logical xor (nonequivalence).
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private Booleans()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static boolean and​(List<java.lang.Boolean> l)
      Returns true if all the elements of the given list are true.
      static boolean and​(Stream<java.lang.Boolean> l)
      Returns true if all the elements of the given stream are true.
      static <A> F<A,​java.lang.Boolean> and​(F<A,​java.lang.Boolean> p1, F<A,​java.lang.Boolean> p2)
      composes the given predicate using conjunction
      static <A> F<A,​java.lang.Boolean> andAll​(List<F<A,​java.lang.Boolean>> l)
      Returns a composed predicate of given List of predicates
      static <A> F<A,​java.lang.Boolean> andAll​(Stream<F<A,​java.lang.Boolean>> l)
      Returns composed predicate
      static <A> F<java.lang.Boolean,​F<A,​F<A,​A>>> cond()
      Curried form of conditional.
      static <A,​B>
      F<B,​java.lang.Boolean>
      contramap​(F<B,​A> f, F<A,​java.lang.Boolean> p)
      maps given function to the predicate function
      static <A,​B>
      F<B,​java.lang.Boolean>
      is​(F<B,​A> f, F<A,​java.lang.Boolean> p)
      alias for contramap
      static <A,​B>
      F<B,​java.lang.Boolean>
      isnot​(F<B,​A> f, F<A,​java.lang.Boolean> p)
      returns inverse of contramap
      static <A> F<A,​java.lang.Boolean> not​(F<A,​java.lang.Boolean> p)
      Negates the given predicate.
      static boolean or​(List<java.lang.Boolean> l)
      Returns true if any element of the given list is true.
      static boolean or​(Stream<java.lang.Boolean> l)
      Returns true if any element of the given stream is true.
      static <A> F<A,​java.lang.Boolean> or​(F<A,​java.lang.Boolean> p1, F<A,​java.lang.Boolean> p2)
      returns composed predicate using disjunction
      static <A> F<A,​java.lang.Boolean> orAll​(List<F<A,​java.lang.Boolean>> l)
      Returns a composed predicate of given List of predicates
      static <A> F<A,​java.lang.Boolean> orAll​(Stream<F<A,​java.lang.Boolean>> l)
      Returns a composed predicate of given Stream of predicates
      static <A> F<A,​java.lang.Boolean> xor​(F<A,​java.lang.Boolean> p1, F<A,​java.lang.Boolean> p2)
      composes the given predicate using exclusive disjunction
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • or

        public static final F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> or
        Curried form of logical "inclusive or" (disjunction).
      • and

        public static final F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> and
        Curried form of logical "and" (conjunction).
      • xor

        public static final F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> xor
        Curried form of logical xor (nonequivalence).
      • not

        public static final F<java.lang.Boolean,​java.lang.Boolean> not
        Logical negation.
      • implies

        public static final F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> implies
        Curried form of logical "only if" (material implication).
      • if_

        public static final F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> if_
        Curried form of logical "if" (reverse material implication).
      • iff

        public static final F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> iff
        Curried form of logical "if and only if" (biconditional, equivalence).
      • nimp

        public static final F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> nimp
        Curried form of logical "not implies" (nonimplication).
      • nif

        public static final F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> nif
        Curried form of logical "not if" (reverse nonimplication).
      • nor

        public static final F<java.lang.Boolean,​F<java.lang.Boolean,​java.lang.Boolean>> nor
        Curried form of logical "not or".
    • Constructor Detail

      • Booleans

        private Booleans()
    • Method Detail

      • and

        public static boolean and​(List<java.lang.Boolean> l)
        Returns true if all the elements of the given list are true.
        Parameters:
        l - A list to check for all the elements being true.
        Returns:
        true if all the elements of the given list are true. False otherwise.
      • contramap

        public static <A,​B> F<B,​java.lang.Boolean> contramap​(F<B,​A> f,
                                                                         F<A,​java.lang.Boolean> p)
        maps given function to the predicate function
        Parameters:
        p - predicate to be mapped over
        f - function
        Returns:
        predicate function
      • is

        public static <A,​B> F<B,​java.lang.Boolean> is​(F<B,​A> f,
                                                                  F<A,​java.lang.Boolean> p)
        alias for contramap
        Parameters:
        p - predicate to be mapped over
        f - function
        Returns:
        predicate function
      • isnot

        public static <A,​B> F<B,​java.lang.Boolean> isnot​(F<B,​A> f,
                                                                     F<A,​java.lang.Boolean> p)
        returns inverse of contramap
        Parameters:
        p - predicate to be mapped over
        f - function
        Returns:
        predicate function
      • and

        public static <A> F<A,​java.lang.Boolean> and​(F<A,​java.lang.Boolean> p1,
                                                           F<A,​java.lang.Boolean> p2)
        composes the given predicate using conjunction
        Parameters:
        p1 - first predicate
        p2 - second predicate
        Returns:
        composed predicate function
      • xor

        public static <A> F<A,​java.lang.Boolean> xor​(F<A,​java.lang.Boolean> p1,
                                                           F<A,​java.lang.Boolean> p2)
        composes the given predicate using exclusive disjunction
        Parameters:
        p1 - first predicate
        p2 - second predicate
        Returns:
        composed predicate function
      • or

        public static <A> F<A,​java.lang.Boolean> or​(F<A,​java.lang.Boolean> p1,
                                                          F<A,​java.lang.Boolean> p2)
        returns composed predicate using disjunction
        Parameters:
        p1 - first predicate
        p2 - second predicate
        Returns:
        composed predicate
      • and

        public static boolean and​(Stream<java.lang.Boolean> l)
        Returns true if all the elements of the given stream are true.
        Parameters:
        l - A stream to check for all the elements being true.
        Returns:
        true if all the elements of the given stream are true. False otherwise.
      • andAll

        public static <A> F<A,​java.lang.Boolean> andAll​(Stream<F<A,​java.lang.Boolean>> l)
        Returns composed predicate
        Parameters:
        l - A stream of predicates
        Returns:
        composed predicate
      • andAll

        public static <A> F<A,​java.lang.Boolean> andAll​(List<F<A,​java.lang.Boolean>> l)
        Returns a composed predicate of given List of predicates
        Parameters:
        l - A list of predicate functions
        Returns:
        composed predicate function
      • orAll

        public static <A> F<A,​java.lang.Boolean> orAll​(List<F<A,​java.lang.Boolean>> l)
        Returns a composed predicate of given List of predicates
        Parameters:
        l - A list of predicate functions
        Returns:
        composed predicate function
      • orAll

        public static <A> F<A,​java.lang.Boolean> orAll​(Stream<F<A,​java.lang.Boolean>> l)
        Returns a composed predicate of given Stream of predicates
        Parameters:
        l - A stream of predicate functions
        Returns:
        composed predicate function
      • or

        public static boolean or​(List<java.lang.Boolean> l)
        Returns true if any element of the given list is true.
        Parameters:
        l - A list to check for any element being true.
        Returns:
        true if any element of the given list is true. False otherwise.
      • or

        public static boolean or​(Stream<java.lang.Boolean> l)
        Returns true if any element of the given stream is true.
        Parameters:
        l - A stream to check for any element being true.
        Returns:
        true if any element of the given stream is true. False otherwise.
      • not

        public static <A> F<A,​java.lang.Boolean> not​(F<A,​java.lang.Boolean> p)
        Negates the given predicate.
        Parameters:
        p - A predicate to negate.
        Returns:
        The negation of the given predicate.
      • cond

        public static <A> F<java.lang.Boolean,​F<A,​F<A,​A>>> cond()
        Curried form of conditional. If the first argument is true, returns the second argument, otherwise the third argument.
        Returns:
        A function that returns its second argument if the first argument is true, otherwise the third argument.