Class Iso<S,A>

java.lang.Object
com.github.tonivade.purefun.optics.Iso<S,A>

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

    • delegate

      private final PIso<S,S,A,A> delegate
  • Constructor Details

  • Method Details

    • of

      public static <S, A> Iso<S,A> of(Function1<S,A> get, Function1<A,S> reverseGet)
    • identity

      public static <S> Iso<S,S> identity()
    • reverse

      public Iso<A,S> reverse()
    • get

      public A get(S target)
    • set

      public S set(A value)
    • modify

      public S modify(S target, Operator1<A> mapper)
    • lift

      public Operator1<S> lift(Operator1<A> mapper)
    • asLens

      public Lens<S,A> asLens()
    • asPrism

      public Prism<S,A> asPrism()
    • asOptional

      public Optional<S,A> asOptional()
    • compose

      public <B> Iso<S,B> compose(Iso<A,B> other)
    • compose

      public <B> Lens<S,B> compose(Lens<A,B> other)
    • compose

      public <B> Prism<S,B> compose(Prism<A,B> other)
    • compose

      public <B> Optional<S,B> compose(Optional<A,B> other)