_1 and such work for Tuples

This commit is contained in:
Andrey Breslav
2012-01-10 12:21:37 +04:00
parent a0134fb0f2
commit 81a3dcf78b
27 changed files with 809 additions and 15 deletions
@@ -7,6 +7,7 @@ import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.descriptors.*;
import org.jetbrains.jet.lang.descriptors.annotations.AnnotationDescriptor;
import org.jetbrains.jet.lang.resolve.scopes.*;
import org.jetbrains.jet.lang.resolve.scopes.receivers.ReceiverDescriptor;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
@@ -112,17 +113,24 @@ public class JetStandardClasses {
STANDARD_CLASSES_NAMESPACE,
Collections.<AnnotationDescriptor>emptyList(),
"Tuple" + i);
WritableScopeImpl writableScope = new WritableScopeImpl(JetScope.EMPTY, classDescriptor, RedeclarationHandler.THROW_EXCEPTION);
for (int j = 0; j < i; j++) {
parameters.add(TypeParameterDescriptor.createWithDefaultBound(
TypeParameterDescriptor typeParameterDescriptor = TypeParameterDescriptor.createWithDefaultBound(
classDescriptor,
Collections.<AnnotationDescriptor>emptyList(),
true, Variance.OUT_VARIANCE, "T" + j, j));
true, Variance.OUT_VARIANCE, "T" + (j + 1), j);
parameters.add(typeParameterDescriptor);
PropertyDescriptor propertyDescriptor = new PropertyDescriptor(classDescriptor, Collections.<AnnotationDescriptor>emptyList(), Modality.FINAL, Visibility.PUBLIC, false, "_" + (j + 1));
propertyDescriptor.setType(typeParameterDescriptor.getDefaultType(), Collections.<TypeParameterDescriptor>emptyList(), classDescriptor.getImplicitReceiver(), ReceiverDescriptor.NO_RECEIVER);
propertyDescriptor.initialize(new PropertyGetterDescriptor(propertyDescriptor, Collections.<AnnotationDescriptor>emptyList(), Modality.FINAL, Visibility.PUBLIC, false, true), null);
writableScope.addPropertyDescriptor(propertyDescriptor);
}
writableScope.changeLockLevel(WritableScope.LockLevel.READING);
TUPLE[i] = classDescriptor.initialize(
true,
parameters,
Collections.singleton(getAnyType()),
STUB,
writableScope,
Collections.<ConstructorDescriptor>emptySet(), // TODO
null); // TODO : constructor
TUPLE_CONSTRUCTORS.add(TUPLE[i].getTypeConstructor());
@@ -303,7 +311,9 @@ public class JetStandardClasses {
if (annotations.isEmpty() && arguments.isEmpty()) {
return getUnitType();
}
return new JetTypeImpl(annotations, getTuple(arguments.size()).getTypeConstructor(), false, toProjections(arguments), STUB);
ClassDescriptor tuple = getTuple(arguments.size());
List<TypeProjection> typeArguments = toProjections(arguments);
return new JetTypeImpl(annotations, tuple.getTypeConstructor(), false, typeArguments, tuple.getMemberScope(typeArguments));
}
public static JetType getTupleType(List<JetType> arguments) {
@@ -0,0 +1,6 @@
fun box() : String {
val a = #(1, "2")
if (a._1 != 1) return "Fail 1: ${a._1}"
if (a._2 != "2") return "Fail 1: ${a._2}"
return "OK"
}
@@ -0,0 +1,4 @@
fun foo(a : #(Int, String)) {
a._1 : Int
a._2 : String
}
@@ -0,0 +1,8 @@
package org.jetbrains.jet.codegen;
public class TupleGenTest extends CodegenTestCase {
public void testBasic() {
blackBoxFile("/tuples/basic.jet");
// System.out.println(generateToText());
}
}
+3
View File
@@ -12,6 +12,9 @@ public class Tuple1<T1> extends DefaultJetObject {
public String toString() {
return "(" + _1 + ")";
}
public final T1 get_1() {
return _1;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+31 -1
View File
@@ -1,6 +1,6 @@
package jet;
public class Tuple10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> extends DefaultJetObject{
public class Tuple10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> extends DefaultJetObject {
public final T1 _1;
public final T2 _2;
public final T3 _3;
@@ -30,6 +30,36 @@ public class Tuple10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> extends DefaultJet
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+34 -1
View File
@@ -1,6 +1,6 @@
package jet;
public class Tuple11<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> extends DefaultJetObject{
public class Tuple11<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> extends DefaultJetObject {
public final T1 _1;
public final T2 _2;
public final T3 _3;
@@ -32,6 +32,39 @@ public class Tuple11<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> extends Defau
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ", " + _11 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
public final T11 get_11() {
return _11;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+36
View File
@@ -34,6 +34,42 @@ public class Tuple12<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> extends
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ", " + _11 + ", " + _12 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
public final T11 get_11() {
return _11;
}
public final T12 get_12() {
return _12;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+40 -1
View File
@@ -1,6 +1,6 @@
package jet;
public class Tuple13<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> extends DefaultJetObject{
public class Tuple13<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> extends DefaultJetObject {
public final T1 _1;
public final T2 _2;
public final T3 _3;
@@ -36,6 +36,45 @@ public class Tuple13<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> ext
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ", " + _11 + ", " + _12 + ", " + _13 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
public final T11 get_11() {
return _11;
}
public final T12 get_12() {
return _12;
}
public final T13 get_13() {
return _13;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+43 -1
View File
@@ -1,6 +1,6 @@
package jet;
public class Tuple14<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> extends DefaultJetObject{
public class Tuple14<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> extends DefaultJetObject {
public final T1 _1;
public final T2 _2;
public final T3 _3;
@@ -38,6 +38,48 @@ public class Tuple14<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ", " + _11 + ", " + _12 + ", " + _13 + ", " + _14 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
public final T11 get_11() {
return _11;
}
public final T12 get_12() {
return _12;
}
public final T13 get_13() {
return _13;
}
public final T14 get_14() {
return _14;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+45
View File
@@ -40,6 +40,51 @@ public class Tuple15<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ", " + _11 + ", " + _12 + ", " + _13 + ", " + _14 + ", " + _15 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
public final T11 get_11() {
return _11;
}
public final T12 get_12() {
return _12;
}
public final T13 get_13() {
return _13;
}
public final T14 get_14() {
return _14;
}
public final T15 get_15() {
return _15;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+48
View File
@@ -42,6 +42,54 @@ public class Tuple16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ", " + _11 + ", " + _12 + ", " + _13 + ", " + _14 + ", " + _15 + ", " + _16 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
public final T11 get_11() {
return _11;
}
public final T12 get_12() {
return _12;
}
public final T13 get_13() {
return _13;
}
public final T14 get_14() {
return _14;
}
public final T15 get_15() {
return _15;
}
public final T16 get_16() {
return _16;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+51
View File
@@ -44,6 +44,57 @@ public class Tuple17<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ", " + _11 + ", " + _12 + ", " + _13 + ", " + _14 + ", " + _15 + ", " + _16 + ", " + _17 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
public final T11 get_11() {
return _11;
}
public final T12 get_12() {
return _12;
}
public final T13 get_13() {
return _13;
}
public final T14 get_14() {
return _14;
}
public final T15 get_15() {
return _15;
}
public final T16 get_16() {
return _16;
}
public final T17 get_17() {
return _17;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+55 -1
View File
@@ -1,6 +1,6 @@
package jet;
public class Tuple18<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> extends DefaultJetObject{
public class Tuple18<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> extends DefaultJetObject {
public final T1 _1;
public final T2 _2;
public final T3 _3;
@@ -46,6 +46,60 @@ public class Tuple18<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ", " + _11 + ", " + _12 + ", " + _13 + ", " + _14 + ", " + _15 + ", " + _16 + ", " + _17 + ", " + _18 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
public final T11 get_11() {
return _11;
}
public final T12 get_12() {
return _12;
}
public final T13 get_13() {
return _13;
}
public final T14 get_14() {
return _14;
}
public final T15 get_15() {
return _15;
}
public final T16 get_16() {
return _16;
}
public final T17 get_17() {
return _17;
}
public final T18 get_18() {
return _18;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+57
View File
@@ -48,6 +48,63 @@ public class Tuple19<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ", " + _11 + ", " + _12 + ", " + _13 + ", " + _14 + ", " + _15 + ", " + _16 + ", " + _17 + ", " + _18 + ", " + _19 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
public final T11 get_11() {
return _11;
}
public final T12 get_12() {
return _12;
}
public final T13 get_13() {
return _13;
}
public final T14 get_14() {
return _14;
}
public final T15 get_15() {
return _15;
}
public final T16 get_16() {
return _16;
}
public final T17 get_17() {
return _17;
}
public final T18 get_18() {
return _18;
}
public final T19 get_19() {
return _19;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+6
View File
@@ -14,6 +14,12 @@ public class Tuple2<T1, T2> extends DefaultJetObject {
public String toString() {
return "(" + _1 + ", " + _2 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+61 -1
View File
@@ -1,6 +1,6 @@
package jet;
public class Tuple20<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> extends DefaultJetObject{
public class Tuple20<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> extends DefaultJetObject {
public final T1 _1;
public final T2 _2;
public final T3 _3;
@@ -50,6 +50,66 @@ public class Tuple20<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ", " + _11 + ", " + _12 + ", " + _13 + ", " + _14 + ", " + _15 + ", " + _16 + ", " + _17 + ", " + _18 + ", " + _19 + ", " + _20 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
public final T11 get_11() {
return _11;
}
public final T12 get_12() {
return _12;
}
public final T13 get_13() {
return _13;
}
public final T14 get_14() {
return _14;
}
public final T15 get_15() {
return _15;
}
public final T16 get_16() {
return _16;
}
public final T17 get_17() {
return _17;
}
public final T18 get_18() {
return _18;
}
public final T19 get_19() {
return _19;
}
public final T20 get_20() {
return _20;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+63
View File
@@ -52,6 +52,69 @@ public class Tuple21<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ", " + _11 + ", " + _12 + ", " + _13 + ", " + _14 + ", " + _15 + ", " + _16 + ", " + _17 + ", " + _18 + ", " + _19 + ", " + _20 + ", " + _21 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
public final T11 get_11() {
return _11;
}
public final T12 get_12() {
return _12;
}
public final T13 get_13() {
return _13;
}
public final T14 get_14() {
return _14;
}
public final T15 get_15() {
return _15;
}
public final T16 get_16() {
return _16;
}
public final T17 get_17() {
return _17;
}
public final T18 get_18() {
return _18;
}
public final T19 get_19() {
return _19;
}
public final T20 get_20() {
return _20;
}
public final T21 get_21() {
return _21;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+66
View File
@@ -54,6 +54,72 @@ public class Tuple22<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ", " + _10 + ", " + _11 + ", " + _12 + ", " + _13 + ", " + _14 + ", " + _15 + ", " + _16 + ", " + _17 + ", " + _18 + ", " + _19 + ", " + _20 + ", " + _21 + ", " + _22 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
public final T10 get_10() {
return _10;
}
public final T11 get_11() {
return _11;
}
public final T12 get_12() {
return _12;
}
public final T13 get_13() {
return _13;
}
public final T14 get_14() {
return _14;
}
public final T15 get_15() {
return _15;
}
public final T16 get_16() {
return _16;
}
public final T17 get_17() {
return _17;
}
public final T18 get_18() {
return _18;
}
public final T19 get_19() {
return _19;
}
public final T20 get_20() {
return _20;
}
public final T21 get_21() {
return _21;
}
public final T22 get_22() {
return _22;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+9
View File
@@ -16,6 +16,15 @@ public class Tuple3<T1, T2, T3> extends DefaultJetObject {
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+12
View File
@@ -18,6 +18,18 @@ public class Tuple4<T1, T2, T3, T4> extends DefaultJetObject {
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+16 -1
View File
@@ -1,6 +1,6 @@
package jet;
public class Tuple5<T1, T2, T3, T4, T5> extends DefaultJetObject{
public class Tuple5<T1, T2, T3, T4, T5> extends DefaultJetObject {
public final T1 _1;
public final T2 _2;
public final T3 _3;
@@ -20,6 +20,21 @@ public class Tuple5<T1, T2, T3, T4, T5> extends DefaultJetObject{
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+18
View File
@@ -22,6 +22,24 @@ public class Tuple6<T1, T2, T3, T4, T5, T6> extends DefaultJetObject {
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+22 -1
View File
@@ -1,6 +1,6 @@
package jet;
public class Tuple7<T1, T2, T3, T4, T5, T6, T7> extends DefaultJetObject{
public class Tuple7<T1, T2, T3, T4, T5, T6, T7> extends DefaultJetObject {
public final T1 _1;
public final T2 _2;
public final T3 _3;
@@ -24,6 +24,27 @@ public class Tuple7<T1, T2, T3, T4, T5, T6, T7> extends DefaultJetObject{
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+25 -1
View File
@@ -1,6 +1,6 @@
package jet;
public class Tuple8<T1, T2, T3, T4, T5, T6, T7, T8> extends DefaultJetObject{
public class Tuple8<T1, T2, T3, T4, T5, T6, T7, T8> extends DefaultJetObject {
public final T1 _1;
public final T2 _2;
public final T3 _3;
@@ -26,6 +26,30 @@ public class Tuple8<T1, T2, T3, T4, T5, T6, T7, T8> extends DefaultJetObject{
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+28 -1
View File
@@ -1,6 +1,6 @@
package jet;
public class Tuple9<T1, T2, T3, T4, T5, T6, T7, T8, T9> extends DefaultJetObject{
public class Tuple9<T1, T2, T3, T4, T5, T6, T7, T8, T9> extends DefaultJetObject {
public final T1 _1;
public final T2 _2;
public final T3 _3;
@@ -28,6 +28,33 @@ public class Tuple9<T1, T2, T3, T4, T5, T6, T7, T8, T9> extends DefaultJetObject
public String toString() {
return "(" + _1 + ", " + _2 + ", " + _3 + ", " + _4 + ", " + _5 + ", " + _6 + ", " + _7 + ", " + _8 + ", " + _9 + ")";
}
public final T1 get_1() {
return _1;
}
public final T2 get_2() {
return _2;
}
public final T3 get_3() {
return _3;
}
public final T4 get_4() {
return _4;
}
public final T5 get_5() {
return _5;
}
public final T6 get_6() {
return _6;
}
public final T7 get_7() {
return _7;
}
public final T8 get_8() {
return _8;
}
public final T9 get_9() {
return _9;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
+8 -1
View File
@@ -3,13 +3,17 @@ def generateTupleClass(i):
f.write("package jet;\n\n")
f.write("public class Tuple" + str(i) + "<")
f.write(", ".join(("T" + str(j)) for j in range(1, i+1)))
f.write("> {\n")
f.write("> extends DefaultJetObject {\n")
for j in range(1, i+1):
f.write(" public final T{0} _{0};\n".format(j))
f.write("\n public Tuple" + str(i) + "(")
if i > 0:
f.write("TypeInfo typeInfo, ")
f.write(", ".join("T{0} t{0}".format(j) for j in range(1, i+1)))
f.write(") {\n")
if i > 0:
f.write(" super(typeInfo);\n")
for j in range(1, i+1):
f.write(" _{0} = t{0};\n".format(j))
f.write(" }\n\n")
@@ -18,6 +22,9 @@ def generateTupleClass(i):
f.write(' return "(" + ' + ' + ", " + '.join("_{0}".format(j) for j in range(1, i+1)) + ' + ")";\n')
f.write(" }\n")
for j in range(1, i+1):
f.write(" public final T{0} get_{0}() {{\n return _{0};\n }}\n".format(j))
f.write(" @Override\n public boolean equals(Object o) {\n")
f.write(" if (this == o) return true;\n")
f.write(" if (o == null || getClass() != o.getClass()) return false;\n\n")