Class Concat4Encoding<T,V1,V2,V3,V4>

java.lang.Object
io.permazen.encoding.AbstractEncoding<T>
io.permazen.encoding.ConvertedEncoding<T,Tuple4<V1,V2,V3,V4>>
io.permazen.encoding.Concat4Encoding<T,V1,V2,V3,V4>
Type Parameters:
T - this encoding's value type
V1 - first tuple value type
V2 - second tuple value type
V3 - third tuple value type
V4 - fourth tuple value type
All Implemented Interfaces:
Encoding<T>, NaturalSortAware, Serializable, Comparator<T>
Direct Known Subclasses:
DoubleSummaryStatisticsEncoding, IntSummaryStatisticsEncoding, LongSummaryStatisticsEncoding

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

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

See Also:
  • Constructor Details

    • Concat4Encoding

      protected Concat4Encoding(Class<T> type, Encoding<V1> encoding1, Encoding<V2> encoding2, Encoding<V3> encoding3, Encoding<V4> encoding4, Function<? super T,? extends V1> splitter1, Function<? super T,? extends V2> splitter2, Function<? super T,? extends V3> splitter3, Function<? super T,? extends V4> splitter4, Function<? super Tuple4<V1,V2,V3,V4>,? 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
      encoding4 - fourth value encoding
      splitter1 - first value splitter
      splitter2 - second value splitter
      splitter3 - third value splitter
      splitter4 - fourth value splitter
      joiner - value joiner from tuple
      Throws:
      IllegalArgumentException - if any parameter is null
  • Method Details