Class Concat3Encoding<T,V1,V2,V3>

java.lang.Object
io.permazen.encoding.AbstractEncoding<T>
io.permazen.encoding.ConvertedEncoding<T,Tuple3<V1,V2,V3>>
io.permazen.encoding.Concat3Encoding<T,V1,V2,V3>
Type Parameters:
T - this encoding's value type
V1 - first tuple value type
V2 - second tuple value type
V3 - third tuple value type
All Implemented Interfaces:
Encoding<T>, NaturalSortAware, Serializable, Comparator<T>

public abstract class Concat3Encoding<T,V1,V2,V3> extends ConvertedEncoding<T,Tuple3<V1,V2,V3>>
Support superclass for non-null Encodings of values that can be decomposed into three component values.

Null values are not supported by this class and there is no default value.

See Also:
  • Constructor Details

    • Concat3Encoding

      protected Concat3Encoding(Class<T> type, Encoding<V1> encoding1, Encoding<V2> encoding2, Encoding<V3> encoding3, Function<? super T,? extends V1> splitter1, Function<? super T,? extends V2> splitter2, Function<? super T,? extends V3> splitter3, Function<? super Tuple3<V1,V2,V3>,? extends T> joiner)
      Constructor.
      Parameters:
      type - Java type for this encoding's values
      encoding1 - first value encoding
      encoding2 - second value encoding
      encoding3 - third value encoding
      splitter1 - first value splitter
      splitter2 - second value splitter
      splitter3 - third value splitter
      joiner - value joiner from tuple
      Throws:
      IllegalArgumentException - if any parameter is null
  • Method Details