Package io.vavr

Class Tuple7<T1,T2,T3,T4,T5,T6,T7>

java.lang.Object
io.vavr.Tuple7<T1,T2,T3,T4,T5,T6,T7>
Type Parameters:
T1 - type of the 1st element
T2 - type of the 2nd element
T3 - type of the 3rd element
T4 - type of the 4th element
T5 - type of the 5th element
T6 - type of the 6th element
T7 - type of the 7th element
All Implemented Interfaces:
Tuple, Serializable, Comparable<Tuple7<T1,T2,T3,T4,T5,T6,T7>>

public final class Tuple7<T1,T2,T3,T4,T5,T6,T7> extends Object implements Tuple, Comparable<Tuple7<T1,T2,T3,T4,T5,T6,T7>>, Serializable
A tuple of 7 elements which can be seen as cartesian product of 7 components.
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • _1

      public final T1 _1
      The 1st element of this tuple.
    • _2

      public final T2 _2
      The 2nd element of this tuple.
    • _3

      public final T3 _3
      The 3rd element of this tuple.
    • _4

      public final T4 _4
      The 4th element of this tuple.
    • _5

      public final T5 _5
      The 5th element of this tuple.
    • _6

      public final T6 _6
      The 6th element of this tuple.
    • _7

      public final T7 _7
      The 7th element of this tuple.
  • Constructor Details

    • Tuple7

      public Tuple7(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7)
      Constructs a tuple of 7 elements.
      Parameters:
      t1 - the 1st element
      t2 - the 2nd element
      t3 - the 3rd element
      t4 - the 4th element
      t5 - the 5th element
      t6 - the 6th element
      t7 - the 7th element
  • Method Details

    • comparator

      public static <T1, T2, T3, T4, T5, T6, T7> Comparator<Tuple7<T1,T2,T3,T4,T5,T6,T7>> comparator(Comparator<? super T1> t1Comp, Comparator<? super T2> t2Comp, Comparator<? super T3> t3Comp, Comparator<? super T4> t4Comp, Comparator<? super T5> t5Comp, Comparator<? super T6> t6Comp, Comparator<? super T7> t7Comp)
    • compareTo

      private static <U1 extends Comparable<? super U1>, U2 extends Comparable<? super U2>, U3 extends Comparable<? super U3>, U4 extends Comparable<? super U4>, U5 extends Comparable<? super U5>, U6 extends Comparable<? super U6>, U7 extends Comparable<? super U7>> int compareTo(Tuple7<?,?,?,?,?,?,?> o1, Tuple7<?,?,?,?,?,?,?> o2)
    • arity

      public int arity()
      Description copied from interface: Tuple
      Returns the number of elements of this tuple.
      Specified by:
      arity in interface Tuple
      Returns:
      the number of elements.
    • compareTo

      public int compareTo(Tuple7<T1,T2,T3,T4,T5,T6,T7> that)
      Specified by:
      compareTo in interface Comparable<T1>
    • _1

      public T1 _1()
      Getter of the 1st element of this tuple.
      Returns:
      the 1st element of this Tuple.
    • update1

      public Tuple7<T1,T2,T3,T4,T5,T6,T7> update1(T1 value)
      Sets the 1st element of this tuple to the given value.
      Parameters:
      value - the new value
      Returns:
      a copy of this tuple with a new value for the 1st element of this Tuple.
    • _2

      public T2 _2()
      Getter of the 2nd element of this tuple.
      Returns:
      the 2nd element of this Tuple.
    • update2

      public Tuple7<T1,T2,T3,T4,T5,T6,T7> update2(T2 value)
      Sets the 2nd element of this tuple to the given value.
      Parameters:
      value - the new value
      Returns:
      a copy of this tuple with a new value for the 2nd element of this Tuple.
    • _3

      public T3 _3()
      Getter of the 3rd element of this tuple.
      Returns:
      the 3rd element of this Tuple.
    • update3

      public Tuple7<T1,T2,T3,T4,T5,T6,T7> update3(T3 value)
      Sets the 3rd element of this tuple to the given value.
      Parameters:
      value - the new value
      Returns:
      a copy of this tuple with a new value for the 3rd element of this Tuple.
    • _4

      public T4 _4()
      Getter of the 4th element of this tuple.
      Returns:
      the 4th element of this Tuple.
    • update4

      public Tuple7<T1,T2,T3,T4,T5,T6,T7> update4(T4 value)
      Sets the 4th element of this tuple to the given value.
      Parameters:
      value - the new value
      Returns:
      a copy of this tuple with a new value for the 4th element of this Tuple.
    • _5

      public T5 _5()
      Getter of the 5th element of this tuple.
      Returns:
      the 5th element of this Tuple.
    • update5

      public Tuple7<T1,T2,T3,T4,T5,T6,T7> update5(T5 value)
      Sets the 5th element of this tuple to the given value.
      Parameters:
      value - the new value
      Returns:
      a copy of this tuple with a new value for the 5th element of this Tuple.
    • _6

      public T6 _6()
      Getter of the 6th element of this tuple.
      Returns:
      the 6th element of this Tuple.
    • update6

      public Tuple7<T1,T2,T3,T4,T5,T6,T7> update6(T6 value)
      Sets the 6th element of this tuple to the given value.
      Parameters:
      value - the new value
      Returns:
      a copy of this tuple with a new value for the 6th element of this Tuple.
    • _7

      public T7 _7()
      Getter of the 7th element of this tuple.
      Returns:
      the 7th element of this Tuple.
    • update7

      public Tuple7<T1,T2,T3,T4,T5,T6,T7> update7(T7 value)
      Sets the 7th element of this tuple to the given value.
      Parameters:
      value - the new value
      Returns:
      a copy of this tuple with a new value for the 7th element of this Tuple.
    • map

      public <U1, U2, U3, U4, U5, U6, U7> Tuple7<U1,U2,U3,U4,U5,U6,U7> map(Function7<? super T1,? super T2,? super T3,? super T4,? super T5,? super T6,? super T7,Tuple7<U1,U2,U3,U4,U5,U6,U7>> mapper)
      Maps the components of this tuple using a mapper function.
      Type Parameters:
      U1 - new type of the 1st component
      U2 - new type of the 2nd component
      U3 - new type of the 3rd component
      U4 - new type of the 4th component
      U5 - new type of the 5th component
      U6 - new type of the 6th component
      U7 - new type of the 7th component
      Parameters:
      mapper - the mapper function
      Returns:
      A new Tuple of same arity.
      Throws:
      NullPointerException - if mapper is null
    • map

      public <U1, U2, U3, U4, U5, U6, U7> Tuple7<U1,U2,U3,U4,U5,U6,U7> map(Function<? super T1,? extends U1> f1, Function<? super T2,? extends U2> f2, Function<? super T3,? extends U3> f3, Function<? super T4,? extends U4> f4, Function<? super T5,? extends U5> f5, Function<? super T6,? extends U6> f6, Function<? super T7,? extends U7> f7)
      Maps the components of this tuple using a mapper function for each component.
      Type Parameters:
      U1 - new type of the 1st component
      U2 - new type of the 2nd component
      U3 - new type of the 3rd component
      U4 - new type of the 4th component
      U5 - new type of the 5th component
      U6 - new type of the 6th component
      U7 - new type of the 7th component
      Parameters:
      f1 - the mapper function of the 1st component
      f2 - the mapper function of the 2nd component
      f3 - the mapper function of the 3rd component
      f4 - the mapper function of the 4th component
      f5 - the mapper function of the 5th component
      f6 - the mapper function of the 6th component
      f7 - the mapper function of the 7th component
      Returns:
      A new Tuple of same arity.
      Throws:
      NullPointerException - if one of the arguments is null
    • map1

      public <U> Tuple7<U,T2,T3,T4,T5,T6,T7> map1(Function<? super T1,? extends U> mapper)
      Maps the 1st component of this tuple to a new value.
      Type Parameters:
      U - new type of the 1st component
      Parameters:
      mapper - A mapping function
      Returns:
      a new tuple based on this tuple and substituted 1st component
    • map2

      public <U> Tuple7<T1,U,T3,T4,T5,T6,T7> map2(Function<? super T2,? extends U> mapper)
      Maps the 2nd component of this tuple to a new value.
      Type Parameters:
      U - new type of the 2nd component
      Parameters:
      mapper - A mapping function
      Returns:
      a new tuple based on this tuple and substituted 2nd component
    • map3

      public <U> Tuple7<T1,T2,U,T4,T5,T6,T7> map3(Function<? super T3,? extends U> mapper)
      Maps the 3rd component of this tuple to a new value.
      Type Parameters:
      U - new type of the 3rd component
      Parameters:
      mapper - A mapping function
      Returns:
      a new tuple based on this tuple and substituted 3rd component
    • map4

      public <U> Tuple7<T1,T2,T3,U,T5,T6,T7> map4(Function<? super T4,? extends U> mapper)
      Maps the 4th component of this tuple to a new value.
      Type Parameters:
      U - new type of the 4th component
      Parameters:
      mapper - A mapping function
      Returns:
      a new tuple based on this tuple and substituted 4th component
    • map5

      public <U> Tuple7<T1,T2,T3,T4,U,T6,T7> map5(Function<? super T5,? extends U> mapper)
      Maps the 5th component of this tuple to a new value.
      Type Parameters:
      U - new type of the 5th component
      Parameters:
      mapper - A mapping function
      Returns:
      a new tuple based on this tuple and substituted 5th component
    • map6

      public <U> Tuple7<T1,T2,T3,T4,T5,U,T7> map6(Function<? super T6,? extends U> mapper)
      Maps the 6th component of this tuple to a new value.
      Type Parameters:
      U - new type of the 6th component
      Parameters:
      mapper - A mapping function
      Returns:
      a new tuple based on this tuple and substituted 6th component
    • map7

      public <U> Tuple7<T1,T2,T3,T4,T5,T6,U> map7(Function<? super T7,? extends U> mapper)
      Maps the 7th component of this tuple to a new value.
      Type Parameters:
      U - new type of the 7th component
      Parameters:
      mapper - A mapping function
      Returns:
      a new tuple based on this tuple and substituted 7th component
    • apply

      public <U> U apply(Function7<? super T1,? super T2,? super T3,? super T4,? super T5,? super T6,? super T7,? extends U> f)
      Transforms this tuple to an object of type U.
      Type Parameters:
      U - type of the transformation result
      Parameters:
      f - Transformation which creates a new object of type U based on this tuple's contents.
      Returns:
      An object of type U
      Throws:
      NullPointerException - if f is null
    • toSeq

      public Seq<?> toSeq()
      Description copied from interface: Tuple
      Converts this tuple to a sequence.
      Specified by:
      toSeq in interface Tuple
      Returns:
      A new Seq.
    • append

      public <T8> Tuple8<T1,T2,T3,T4,T5,T6,T7,T8> append(T8 t8)
      Append a value to this tuple.
      Type Parameters:
      T8 - type of the value to append
      Parameters:
      t8 - the value to append
      Returns:
      a new Tuple with the value appended
    • concat

      public <T8> Tuple8<T1,T2,T3,T4,T5,T6,T7,T8> concat(Tuple1<T8> tuple)
      Concat a tuple's values to this tuple.
      Type Parameters:
      T8 - the type of the 8th value in the tuple
      Parameters:
      tuple - the tuple to concat
      Returns:
      a new Tuple with the tuple values appended
      Throws:
      NullPointerException - if tuple is null
    • equals

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

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object