Package fj.data

Class Either3<A,B,C>

java.lang.Object
fj.data.Either3<A,B,C>
Direct Known Subclasses:
Either3.Left, Either3.Middle, Either3.Right

public abstract class Either3<A,B,C> extends Object
  • Constructor Details

    • Either3

      private Either3()
  • Method Details

    • leftMap

      public final <X> Either3<X,B,C> leftMap(F<A,X> f)
    • leftMap_

      public final <X> F<F<A,X>,Either3<X,B,C>> leftMap_()
    • middleMap

      public final <X> Either3<A,X,C> middleMap(F<B,X> f)
    • middleMap_

      public final <X> F<F<B,X>,Either3<A,X,C>> middleMap_()
    • rightMap

      public final <X> Either3<A,B,X> rightMap(F<C,X> f)
    • rightMap_

      public final <X> F<F<C,X>,Either3<A,B,X>> rightMap_()
    • left

      public static <A, B, C> Either3<A,B,C> left(A a)
    • left_

      public static <A, B, C> F<A,Either3<A,B,C>> left_()
    • middle

      public static <A, B, C> Either3<A,B,C> middle(B b)
    • right

      public static <A, B, C> Either3<A,B,C> right(C c)
    • isLeft

      public boolean isLeft()
    • isMiddle

      public boolean isMiddle()
    • isRight

      public boolean isRight()
    • map3

      public <X, Y, Z> Either3<X,Y,Z> map3(F<A,X> fl, F<B,Y> fm, F<C,Z> fr)
    • either

      public abstract <D> D either(F<A,D> fa, F<B,D> fb, F<C,D> fc)
    • either_

      public static <A, B, C, D> F<Either3<A,B,C>,D> either_(F<A,D> fa, F<B,D> fb, F<C,D> fc)
    • joinLeft

      public static <A, B, C> Either3<A,B,C> joinLeft(Either3<Either3<A,B,C>,B,C> e)
    • joinMiddle

      public static <A, B, C> Either3<A,B,C> joinMiddle(Either3<A,Either3<A,B,C>,C> e)
    • joinRight

      public static <A, B, C> Either3<A,B,C> joinRight(Either3<A,B,Either3<A,B,C>> e)
    • moveLeft

      public Either3<B,C,A> moveLeft()
    • moveRight

      public Either3<C,A,B> moveRight()
    • swap

      public Either3<C,B,A> swap()
    • swapLefts

      public Either3<B,A,C> swapLefts()
    • swapRights

      public Either3<A,C,B> swapRights()
    • leftOption

      public Option<A> leftOption()
    • middleOption

      public Option<B> middleOption()
    • rightOption

      public Option<C> rightOption()
    • left

      public final Either3.LeftProjection<A,B,C> left()
    • middle

      public final Either3.MiddleProjection<A,B,C> middle()
    • right

      public final Either3.RightProjection<A,B,C> right()
    • equals

      public final boolean equals(Object other)
      Overrides:
      equals in class Object
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object