Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.redis.om.spring.tuple.Tuples Maven / Gradle / Ivy
package com.redis.om.spring.tuple;
import com.redis.om.spring.tuple.impl.EmptyTupleImpl;
import java.util.function.Function;
import com.redis.om.spring.tuple.impl.DecupleImpl;
import com.redis.om.spring.tuple.impl.UndecupleImpl;
import com.redis.om.spring.tuple.impl.DuodecupleImpl;
import com.redis.om.spring.tuple.impl.TredecupleImpl;
import com.redis.om.spring.tuple.impl.QuattuordecupleImpl;
import com.redis.om.spring.tuple.impl.QuindecupleImpl;
import com.redis.om.spring.tuple.impl.SexdecupleImpl;
import com.redis.om.spring.tuple.impl.SeptendecupleImpl;
import com.redis.om.spring.tuple.impl.OctodecupleImpl;
import com.redis.om.spring.tuple.impl.NovemdecupleImpl;
import com.redis.om.spring.tuple.impl.SingleImpl;
import com.redis.om.spring.tuple.impl.VigintupleImpl;
import com.redis.om.spring.tuple.impl.mapper.DecupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.DuodecupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.EmptyTupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.HextupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.NonupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.NovemdecupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.OctodecupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.OctupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.PairMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.QuadMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.QuattuordecupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.QuindecupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.QuintupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.SeptendecupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.SeptupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.SexdecupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.SingleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.TredecupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.TripleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.UndecupleMapperImpl;
import com.redis.om.spring.tuple.impl.mapper.VigintupleMapperImpl;
import com.redis.om.spring.tuple.impl.PairImpl;
import com.redis.om.spring.tuple.impl.TripleImpl;
import com.redis.om.spring.tuple.impl.TupleInfiniteDegreeImpl;
import com.redis.om.spring.tuple.impl.QuadImpl;
import com.redis.om.spring.tuple.impl.QuintupleImpl;
import com.redis.om.spring.tuple.impl.HextupleImpl;
import com.redis.om.spring.tuple.impl.SeptupleImpl;
import com.redis.om.spring.tuple.impl.OctupleImpl;
import com.redis.om.spring.tuple.impl.NonupleImpl;
public final class Tuples {
private Tuples() {}
public static EmptyTuple of() {
return EmptyTupleImpl.EMPTY_TUPLE;
}
public static Single of(T0 e0) {
return new SingleImpl<>(new String[] {}, e0);
}
public static Single of(String[] labels, T0 e0) {
return new SingleImpl<>(labels, e0);
}
public static Pair of(T0 e0, T1 e1) {
return new PairImpl<>(new String[] {}, e0, e1);
}
public static Pair of(String[] labels, T0 e0, T1 e1) {
return new PairImpl<>(labels, e0, e1);
}
public static Triple of(T0 e0, T1 e1, T2 e2) {
return new TripleImpl<>(new String[] {}, e0, e1, e2);
}
public static Triple of(String[] labels, T0 e0, T1 e1, T2 e2) {
return new TripleImpl<>(labels, e0, e1, e2);
}
public static Quad of(T0 e0, T1 e1, T2 e2, T3 e3) {
return new QuadImpl<>(new String[] {}, e0, e1, e2, e3);
}
public static Quad of(String[] labels, T0 e0, T1 e1, T2 e2, T3 e3) {
return new QuadImpl<>(labels, e0, e1, e2, e3);
}
public static Quintuple of(T0 e0, T1 e1, T2 e2, T3 e3, T4 e4) {
return new QuintupleImpl<>(new String[] {}, e0, e1, e2, e3, e4);
}
public static Quintuple of(String[] labels, T0 e0, T1 e1, T2 e2, T3 e3, T4 e4) {
return new QuintupleImpl<>(labels, e0, e1, e2, e3, e4);
}
public static Hextuple of(T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5) {
return new HextupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5);
}
public static Hextuple of(String[] labels, T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5) {
return new HextupleImpl<>(labels, e0, e1, e2, e3, e4, e5);
}
public static Septuple of(T0 e0, T1 e1, T2 e2, T3 e3, T4 e4,
T5 e5, T6 e6) {
return new SeptupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6);
}
public static Septuple of(String[] labels, T0 e0, T1 e1, T2 e2, T3 e3, T4 e4,
T5 e5, T6 e6) {
return new SeptupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6);
}
public static Octuple of(T0 e0, T1 e1, T2 e2, T3 e3,
T4 e4, T5 e5, T6 e6, T7 e7) {
return new OctupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7);
}
public static Octuple of(String[] labels, T0 e0, T1 e1, T2 e2, T3 e3,
T4 e4, T5 e5, T6 e6, T7 e7) {
return new OctupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7);
}
public static Nonuple of(T0 e0, T1 e1, T2 e2,
T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8) {
return new NonupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7, e8);
}
public static Nonuple of(String[] labels, T0 e0, T1 e1, T2 e2,
T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8) {
return new NonupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7, e8);
}
public static Decuple of(T0 e0,
T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9) {
return new DecupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9);
}
public static Decuple of(String[] labels, T0 e0,
T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9) {
return new DecupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9);
}
public static Undecuple of(
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10) {
return new UndecupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10);
}
public static Undecuple of(String[] labels,
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10) {
return new UndecupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10);
}
public static Duodecuple of(
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11) {
return new DuodecupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11);
}
public static Duodecuple of(String[] labels,
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11) {
return new DuodecupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11);
}
public static Tredecuple of(
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12) {
return new TredecupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12);
}
public static Tredecuple of(String[] labels,
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12) {
return new TredecupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12);
}
public static Quattuordecuple of(
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13) {
return new QuattuordecupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13);
}
public static Quattuordecuple of(String[] labels,
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13) {
return new QuattuordecupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13);
}
public static Quindecuple of(
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13,
T14 e14) {
return new QuindecupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14);
}
public static Quindecuple of(String[] labels,
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13,
T14 e14) {
return new QuindecupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14);
}
public static Sexdecuple of(
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13, T14 e14,
T15 e15) {
return new SexdecupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15);
}
public static Sexdecuple of(String[] labels,
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13, T14 e14,
T15 e15) {
return new SexdecupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15);
}
public static Septendecuple of(
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13, T14 e14,
T15 e15, T16 e16) {
return new SeptendecupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16);
}
public static Septendecuple of(String[] labels,
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13, T14 e14,
T15 e15, T16 e16) {
return new SeptendecupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16);
}
public static Octodecuple of(
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13, T14 e14,
T15 e15, T16 e16, T17 e17) {
return new OctodecupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17);
}
public static Octodecuple of(String[] labels,
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13, T14 e14,
T15 e15, T16 e16, T17 e17) {
return new OctodecupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17);
}
public static Novemdecuple of(
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13, T14 e14,
T15 e15, T16 e16, T17 e17, T18 e18) {
return new NovemdecupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18);
}
public static Novemdecuple of(String[] labels,
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13, T14 e14,
T15 e15, T16 e16, T17 e17, T18 e18) {
return new NovemdecupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18);
}
public static Vigintuple of(
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13, T14 e14,
T15 e15, T16 e16, T17 e17, T18 e18, T19 e19) {
return new VigintupleImpl<>(new String[] {}, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18,
e19);
}
public static Vigintuple of(String[] labels,
T0 e0, T1 e1, T2 e2, T3 e3, T4 e4, T5 e5, T6 e6, T7 e7, T8 e8, T9 e9, T10 e10, T11 e11, T12 e12, T13 e13, T14 e14,
T15 e15, T16 e16, T17 e17, T18 e18, T19 e19) {
return new VigintupleImpl<>(labels, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18,
e19);
}
@SafeVarargs
public static Tuple ofArray(String[] returnFields, Object... el) {
switch (el.length) {
case 0:
return of();
case 1:
return of(returnFields, el[0]);
case 2:
return of(returnFields, el[0], el[1]);
case 3:
return of(returnFields, el[0], el[1], el[2]);
case 4:
return of(returnFields, el[0], el[1], el[2], el[3]);
case 5:
return of(returnFields, el[0], el[1], el[2], el[3], el[4]);
case 6:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5]);
case 7:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6]);
case 8:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7]);
case 9:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7], el[8]);
case 10:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7], el[8], el[9]);
case 11:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7], el[8], el[9], el[10]);
case 12:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7], el[8], el[9], el[10], el[11]);
case 13:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7], el[8], el[9], el[10], el[11], el[12]);
case 14:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7], el[8], el[9], el[10], el[11], el[12], el[13]);
case 15:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7], el[8], el[9], el[10], el[11], el[12], el[13],
el[14]);
case 16:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7], el[8], el[9], el[10], el[11], el[12], el[13],
el[14], el[15]);
case 17:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7], el[8], el[9], el[10], el[11], el[12], el[13],
el[14], el[15], el[16]);
case 18:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7], el[8], el[9], el[10], el[11], el[12], el[13],
el[14], el[15], el[16], el[17]);
case 19:
return of(returnFields, el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7], el[8], el[9], el[10], el[11], el[12], el[13],
el[14], el[15], el[16], el[17], el[18]);
case 20:
return of(el[0], el[1], el[2], el[3], el[4], el[5], el[6], el[7], el[8], el[9], el[10], el[11], el[12], el[13],
el[14], el[15], el[16], el[17], el[18], el[19]);
default:
return new TupleInfiniteDegreeImpl(el);
}
}
@SuppressWarnings("unchecked")
public static Function toTuple() {
return (Function) EmptyTupleMapperImpl.EMPTY_MAPPER;
}
public static Function> toTuple(Function m0) {
return new SingleMapperImpl<>(m0);
}
public static Function> toTuple(Function m0, Function m1) {
return new PairMapperImpl<>(m0, m1);
}
public static Function> toTuple(Function m0, Function m1,
Function m2) {
return new TripleMapperImpl<>(m0, m1, m2);
}
public static Function> toTuple(Function m0, Function m1,
Function m2, Function m3) {
return new QuadMapperImpl<>(m0, m1, m2, m3);
}
public static Function> toTuple(Function m0,
Function m1, Function m2, Function m3, Function m4) {
return new QuintupleMapperImpl<>(m0, m1, m2, m3, m4);
}
public static Function> toTuple(Function m0,
Function m1, Function m2, Function m3, Function m4, Function m5) {
return new HextupleMapperImpl<>(m0, m1, m2, m3, m4, m5);
}
public static Function> toTuple(
Function m0, Function m1, Function m2, Function m3, Function m4,
Function m5, Function m6) {
return new SeptupleMapperImpl<>(m0, m1, m2, m3, m4, m5, m6);
}
public static Function> toTuple(
Function m0, Function m1, Function m2, Function m3, Function m4,
Function m5, Function m6, Function m7) {
return new OctupleMapperImpl<>(m0, m1, m2, m3, m4, m5, m6, m7);
}
public static Function> toTuple(
Function m0, Function m1, Function m2, Function m3, Function m4,
Function m5, Function m6, Function m7, Function m8) {
return new NonupleMapperImpl<>(m0, m1, m2, m3, m4, m5, m6, m7, m8);
}
public static Function> toTuple(
Function m0, Function m1, Function m2, Function m3, Function m4,
Function m5, Function m6, Function m7, Function m8, Function m9) {
return new DecupleMapperImpl<>(m0, m1, m2, m3, m4, m5, m6, m7, m8, m9);
}
public static Function> toTuple(
Function m0, Function m1, Function m2, Function m3, Function m4,
Function m5, Function m6, Function m7, Function m8, Function m9,
Function m10) {
return new UndecupleMapperImpl<>(m0, m1, m2, m3, m4, m5, m6, m7, m8, m9, m10);
}
public static Function> toTuple(
Function m0, Function m1, Function m2, Function m3, Function m4,
Function m5, Function m6, Function m7, Function m8, Function m9,
Function m10, Function m11) {
return new DuodecupleMapperImpl<>(m0, m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11);
}
public static Function> toTuple(
Function m0, Function m1, Function m2, Function m3, Function m4,
Function m5, Function m6, Function m7, Function m8, Function m9,
Function m10, Function m11, Function m12) {
return new TredecupleMapperImpl<>(m0, m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12);
}
public static Function> toTuple(
Function m0, Function m1, Function m2, Function m3, Function m4,
Function m5, Function m6, Function m7, Function m8, Function m9,
Function m10, Function m11, Function m12, Function m13) {
return new QuattuordecupleMapperImpl<>(m0, m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12, m13);
}
public static Function> toTuple(
Function m0, Function m1, Function m2, Function m3, Function m4,
Function m5, Function m6, Function m7, Function m8, Function m9,
Function m10, Function m11, Function m12, Function m13, Function m14) {
return new QuindecupleMapperImpl<>(m0, m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12, m13, m14);
}
public static Function> toTuple(
Function m0, Function m1, Function m2, Function m3, Function m4,
Function m5, Function m6, Function m7, Function m8, Function m9,
Function m10, Function m11, Function m12, Function m13, Function m14,
Function