package jetbrains.mps.baseLanguage.tuples.runtime;
/*Generated by MPS */
public class Tuples {
public Tuples() {
}
public interface _0 {
Tuples._0 assign(Tuples._0 from);
}
public interface _1<T0> extends Tuples._0 {
T0 _0(T0 value);
T0 _0();
Tuples._1<T0> assign(Tuples._1<? extends T0> from);
}
public interface _2<T0, T1> extends Tuples._1<T0> {
T0 _0(T0 value);
T1 _1(T1 value);
T0 _0();
T1 _1();
Tuples._2<T0, T1> assign(Tuples._2<? extends T0, ? extends T1> from);
}
public interface _3<T0, T1, T2> extends Tuples._2<T0, T1> {
T0 _0(T0 value);
T1 _1(T1 value);
T2 _2(T2 value);
T0 _0();
T1 _1();
T2 _2();
Tuples._3<T0, T1, T2> assign(Tuples._3<? extends T0, ? extends T1, ? extends T2> from);
}
public interface _4<T0, T1, T2, T3> extends Tuples._3<T0, T1, T2> {
T0 _0(T0 value);
T1 _1(T1 value);
T2 _2(T2 value);
T3 _3(T3 value);
T0 _0();
T1 _1();
T2 _2();
T3 _3();
Tuples._4<T0, T1, T2, T3> assign(Tuples._4<? extends T0, ? extends T1, ? extends T2, ? extends T3> from);
}
public interface _5<T0, T1, T2, T3, T4> extends Tuples._4<T0, T1, T2, T3> {
T0 _0(T0 value);
T1 _1(T1 value);
T2 _2(T2 value);
T3 _3(T3 value);
T4 _4(T4 value);
T0 _0();
T1 _1();
T2 _2();
T3 _3();
T4 _4();
Tuples._5<T0, T1, T2, T3, T4> assign(Tuples._5<? extends T0, ? extends T1, ? extends T2, ? extends T3, ? extends T4> from);
}
public interface _6<T0, T1, T2, T3, T4, T5> extends Tuples._5<T0, T1, T2, T3, T4> {
T0 _0(T0 value);
T1 _1(T1 value);
T2 _2(T2 value);
T3 _3(T3 value);
T4 _4(T4 value);
T5 _5(T5 value);
T0 _0();
T1 _1();
T2 _2();
T3 _3();
T4 _4();
T5 _5();
Tuples._6<T0, T1, T2, T3, T4, T5> assign(Tuples._6<? extends T0, ? extends T1, ? extends T2, ? extends T3, ? extends T4, ? extends T5> from);
}
public interface _7<T0, T1, T2, T3, T4, T5, T6> extends Tuples._6<T0, T1, T2, T3, T4, T5> {
T0 _0(T0 value);
T1 _1(T1 value);
T2 _2(T2 value);
T3 _3(T3 value);
T4 _4(T4 value);
T5 _5(T5 value);
T6 _6(T6 value);
T0 _0();
T1 _1();
T2 _2();
T3 _3();
T4 _4();
T5 _5();
T6 _6();
Tuples._7<T0, T1, T2, T3, T4, T5, T6> assign(Tuples._7<? extends T0, ? extends T1, ? extends T2, ? extends T3, ? extends T4, ? extends T5, ? extends T6> from);
}
public interface _8<T0, T1, T2, T3, T4, T5, T6, T7> extends Tuples._7<T0, T1, T2, T3, T4, T5, T6> {
T0 _0(T0 value);
T1 _1(T1 value);
T2 _2(T2 value);
T3 _3(T3 value);
T4 _4(T4 value);
T5 _5(T5 value);
T6 _6(T6 value);
T7 _7(T7 value);
T0 _0();
T1 _1();
T2 _2();
T3 _3();
T4 _4();
T5 _5();
T6 _6();
T7 _7();
Tuples._8<T0, T1, T2, T3, T4, T5, T6, T7> assign(Tuples._8<? extends T0, ? extends T1, ? extends T2, ? extends T3, ? extends T4, ? extends T5, ? extends T6, ? extends T7> from);
}
public interface _9<T0, T1, T2, T3, T4, T5, T6, T7, T8> extends Tuples._8<T0, T1, T2, T3, T4, T5, T6, T7> {
T0 _0(T0 value);
T1 _1(T1 value);
T2 _2(T2 value);
T3 _3(T3 value);
T4 _4(T4 value);
T5 _5(T5 value);
T6 _6(T6 value);
T7 _7(T7 value);
T8 _8(T8 value);
T0 _0();
T1 _1();
T2 _2();
T3 _3();
T4 _4();
T5 _5();
T6 _6();
T7 _7();
T8 _8();
Tuples._9<T0, T1, T2, T3, T4, T5, T6, T7, T8> assign(Tuples._9<? extends T0, ? extends T1, ? extends T2, ? extends T3, ? extends T4, ? extends T5, ? extends T6, ? extends T7, ? extends T8> from);
}
}