Package io.vavr

Class API.Match.Pattern4<T,T1,T2,T3,T4>

java.lang.Object
io.vavr.API.Match.Pattern4<T,T1,T2,T3,T4>
Type Parameters:
T - Class type that is matched by this pattern
T1 - Member type 1 of the composite part this pattern decomposes
T2 - Member type 2 of the composite part this pattern decomposes
T3 - Member type 3 of the composite part this pattern decomposes
T4 - Member type 4 of the composite part this pattern decomposes
All Implemented Interfaces:
API.Match.Pattern<T,Tuple4<T1,T2,T3,T4>>, Function1<T,Tuple4<T1,T2,T3,T4>>, PartialFunction<T,Tuple4<T1,T2,T3,T4>>, Serializable, Function<T,Tuple4<T1,T2,T3,T4>>
Enclosing class:
API.Match<T>

public abstract static class API.Match.Pattern4<T,T1,T2,T3,T4> extends Object implements API.Match.Pattern<T,Tuple4<T1,T2,T3,T4>>
A API.Match.Pattern implementation for the pattern with 4 intermediate types
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      The serial version UID for serialization.
      See Also:
  • Constructor Details

    • Pattern4

      protected Pattern4()
      Creates a new Pattern4.

      This constructor is protected because Pattern4 is abstract and intended to be subclassed rather than instantiated directly.

  • Method Details

    • of

      public static <T, T1 extends U1, U1, T2 extends U2, U2, T3 extends U3, U3, T4 extends U4, U4> API.Match.Pattern4<T,T1,T2,T3,T4> of(@NonNull Class<? super T> type, @NonNull API.Match.Pattern<T1,?> p1, @NonNull API.Match.Pattern<T2,?> p2, @NonNull API.Match.Pattern<T3,?> p3, @NonNull API.Match.Pattern<T4,?> p4, @NonNull Function<T,Tuple4<U1,U2,U3,U4>> unapply)
      Static factory for a API.Match.Pattern4 based on a Class, 4 API.Match.Patterns to decompose it to and a mapper to aggregate result back into a Tuple4
      Type Parameters:
      T - Class type matched by this pattern
      T1 - Member type 1 of the composite part this pattern decomposes
      U1 - Member type 1 of the Tuple the composite part of this pattern decomposes to
      T2 - Member type 2 of the composite part this pattern decomposes
      U2 - Member type 2 of the Tuple the composite part of this pattern decomposes to
      T3 - Member type 3 of the composite part this pattern decomposes
      U3 - Member type 3 of the Tuple the composite part of this pattern decomposes to
      T4 - Member type 4 of the composite part this pattern decomposes
      U4 - Member type 4 of the Tuple the composite part of this pattern decomposes to
      Parameters:
      type - Class to build the pattern from
      p1 - API.Match.Pattern matching the intermediate type 1
      p2 - API.Match.Pattern matching the intermediate type 2
      p3 - API.Match.Pattern matching the intermediate type 3
      p4 - API.Match.Pattern matching the intermediate type 4
      unapply - Mapper function from T to a Tuple4
      Returns:
      new Pattern4