Class IsoLaws<S,A>

java.lang.Object
io.atlassian.fugue.optic.law.IsoLaws<S,A>

public final class IsoLaws<S,A> extends Object
  • Field Details

  • Constructor Details

    • IsoLaws

      public IsoLaws(PIso<S,S,A,A> iso)
  • Method Details

    • roundTripOneWay

      public IsEq<S> roundTripOneWay(S s)
      get and reverseGet forms an Isomorphism: round trip one way
    • roundTripOtherWay

      public IsEq<A> roundTripOtherWay(A a)
      get and reverseGet forms an Isomorphism: round trip other way
    • set

      public IsEq<S> set(S s, A a)
      set is a weaker version of reverseGet
    • modifyIdentity

      public IsEq<S> modifyIdentity(S s)
      modify id = id
    • modifySupplierFPoint

      public IsEq<S> modifySupplierFPoint(S s)
      modifyF Applicative.point(_) = Applicative.point(_)
    • modifyEitherFPoint

      public IsEq<Either<String,S>> modifyEitherFPoint(S s)
      modifyF Applicative.point(_) = Applicative.point(_)
    • modifyOptionFPoint

      public IsEq<Option<S>> modifyOptionFPoint(S s)
      modifyF Applicative.point(_) = Applicative.point(_)
    • modifyPairFPoint

      public IsEq<Pair<S,S>> modifyPairFPoint(S s)
      modifyF Applicative.point(_) = Applicative.point(_)
    • modifyFunctionFPoint

      public IsEq<S> modifyFunctionFPoint(S s)
      modifyF Applicative.point(_) = Applicative.point(_)
    • modifyIterableFPoint

      public IsEq<List<S>> modifyIterableFPoint(S s)
      modifyF Applicative.point(_) = Applicative.point(_)