Package io.vavr

Class Tuple1<T1>

java.lang.Object
io.vavr.Tuple1<T1>
Type Parameters:
T1 - type of the 1st element
All Implemented Interfaces:
Tuple, Serializable, Comparable<Tuple1<T1>>

public final class Tuple1<T1> extends Object implements Tuple, Comparable<Tuple1<T1>>, Serializable
A tuple of one element which can be seen as cartesian product of one component.
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • _1

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

    • Tuple1

      public Tuple1(T1 t1)
      Constructs a tuple of one element.
      Parameters:
      t1 - the 1st element
  • Method Details

    • comparator

      public static <T1> Comparator<Tuple1<T1>> comparator(Comparator<? super T1> t1Comp)
    • compareTo

      private static <U1 extends Comparable<? super U1>> int compareTo(Tuple1<?> o1, Tuple1<?> 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(Tuple1<T1> 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 Tuple1<T1> 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.
    • map

      public <U1> Tuple1<U1> map(Function<? super T1,? extends U1> mapper)
      Maps the components of this tuple using a mapper function.
      Type Parameters:
      U1 - new type of the 1st component
      Parameters:
      mapper - the mapper function
      Returns:
      A new Tuple of same arity.
      Throws:
      NullPointerException - if mapper is null
    • apply

      public <U> U apply(Function<? super T1,? 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 <T2> Tuple2<T1,T2> append(T2 t2)
      Append a value to this tuple.
      Type Parameters:
      T2 - type of the value to append
      Parameters:
      t2 - the value to append
      Returns:
      a new Tuple with the value appended
    • concat

      public <T2> Tuple2<T1,T2> concat(Tuple1<T2> tuple)
      Concat a tuple's values to this tuple.
      Type Parameters:
      T2 - the type of the 2nd 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
    • concat

      public <T2, T3> Tuple3<T1,T2,T3> concat(Tuple2<T2,T3> tuple)
      Concat a tuple's values to this tuple.
      Type Parameters:
      T2 - the type of the 2nd value in the tuple
      T3 - the type of the 3rd 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
    • concat

      public <T2, T3, T4> Tuple4<T1,T2,T3,T4> concat(Tuple3<T2,T3,T4> tuple)
      Concat a tuple's values to this tuple.
      Type Parameters:
      T2 - the type of the 2nd value in the tuple
      T3 - the type of the 3rd value in the tuple
      T4 - the type of the 4th 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
    • concat

      public <T2, T3, T4, T5> Tuple5<T1,T2,T3,T4,T5> concat(Tuple4<T2,T3,T4,T5> tuple)
      Concat a tuple's values to this tuple.
      Type Parameters:
      T2 - the type of the 2nd value in the tuple
      T3 - the type of the 3rd value in the tuple
      T4 - the type of the 4th value in the tuple
      T5 - the type of the 5th 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
    • concat

      public <T2, T3, T4, T5, T6> Tuple6<T1,T2,T3,T4,T5,T6> concat(Tuple5<T2,T3,T4,T5,T6> tuple)
      Concat a tuple's values to this tuple.
      Type Parameters:
      T2 - the type of the 2nd value in the tuple
      T3 - the type of the 3rd value in the tuple
      T4 - the type of the 4th value in the tuple
      T5 - the type of the 5th value in the tuple
      T6 - the type of the 6th 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
    • concat

      public <T2, T3, T4, T5, T6, T7> Tuple7<T1,T2,T3,T4,T5,T6,T7> concat(Tuple6<T2,T3,T4,T5,T6,T7> tuple)
      Concat a tuple's values to this tuple.
      Type Parameters:
      T2 - the type of the 2nd value in the tuple
      T3 - the type of the 3rd value in the tuple
      T4 - the type of the 4th value in the tuple
      T5 - the type of the 5th value in the tuple
      T6 - the type of the 6th value in the tuple
      T7 - the type of the 7th 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
    • concat

      public <T2, T3, T4, T5, T6, T7, T8> Tuple8<T1,T2,T3,T4,T5,T6,T7,T8> concat(Tuple7<T2,T3,T4,T5,T6,T7,T8> tuple)
      Concat a tuple's values to this tuple.
      Type Parameters:
      T2 - the type of the 2nd value in the tuple
      T3 - the type of the 3rd value in the tuple
      T4 - the type of the 4th value in the tuple
      T5 - the type of the 5th value in the tuple
      T6 - the type of the 6th value in the tuple
      T7 - the type of the 7th value in the tuple
      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