used Tuple0 as a better type parameter for the function on Tuple/StringTemplate

This commit is contained in:
James Strachan
2012-03-14 16:13:32 +00:00
parent 76e49f1865
commit 9cd21d3a4d
25 changed files with 43 additions and 32 deletions
+19 -8
View File
@@ -20,10 +20,10 @@ package jet;
* *
* It is represented as an object that contains a Tuple * It is represented as an object that contains a Tuple
*/ */
public class StringTemplate<T extends Tuple> { public class StringTemplate {
private final T tuple; private final Tuple tuple;
public StringTemplate(T tuple) { public StringTemplate(Tuple tuple) {
this.tuple = tuple; this.tuple = tuple;
} }
@@ -50,11 +50,11 @@ public class StringTemplate<T extends Tuple> {
@Override @Override
public String toString() { public String toString() {
final StringBuilder builder = new StringBuilder(); final StringBuilder builder = new StringBuilder();
tuple.forEach(new Function1<Object,Void>(){ tuple.forEach(new Function1<Object,Tuple0>(){
@Override @Override
public Void invoke(Object o) { public Tuple0 invoke(Object o) {
builder.append(o); builder.append(o);
return null; return Tuple0.INSTANCE;
} }
}); });
return builder.toString(); return builder.toString();
@@ -62,9 +62,20 @@ public class StringTemplate<T extends Tuple> {
} }
/** /**
* Returns the values in the string template * Returns the tuple of values in the string template
*/ */
public T getValues() { public Tuple getValues() {
return tuple; return tuple;
} }
/**
* Performs the given function on each value in the string template
*/
public void forEach(Function1<Object, Tuple0> fn) {
if (tuple != null) {
tuple.forEach(fn);
}
}
} }
+1 -1
View File
@@ -23,7 +23,7 @@ public abstract class Tuple extends DefaultJetObject {
/** /**
* Performs the given function on each item in the tuple * Performs the given function on each item in the tuple
*/ */
public abstract void forEach(Function1<Object, Void> fn); public abstract void forEach(Function1<Object, Tuple0> fn);
/** /**
* Returns the size of the tuple * Returns the size of the tuple
+1 -1
View File
@@ -41,7 +41,7 @@ public class Tuple0 extends Tuple {
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
} }
@Override @Override
+1 -1
View File
@@ -46,7 +46,7 @@ public class Tuple1<T1> extends Tuple {
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
} }
+1 -1
View File
@@ -109,7 +109,7 @@ public class Tuple10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> extends Tuple {
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -116,7 +116,7 @@ public class Tuple11<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> extends Tuple
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -123,7 +123,7 @@ public class Tuple12<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> extends
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -130,7 +130,7 @@ public class Tuple13<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> ext
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -137,7 +137,7 @@ public class Tuple14<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -144,7 +144,7 @@ public class Tuple15<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -151,7 +151,7 @@ public class Tuple16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -158,7 +158,7 @@ public class Tuple17<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -165,7 +165,7 @@ public class Tuple18<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -172,7 +172,7 @@ public class Tuple19<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -53,7 +53,7 @@ public class Tuple2<T1, T2> extends Tuple {
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
} }
+1 -1
View File
@@ -179,7 +179,7 @@ public class Tuple20<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -186,7 +186,7 @@ public class Tuple21<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -193,7 +193,7 @@ public class Tuple22<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -60,7 +60,7 @@ public class Tuple3<T1, T2, T3> extends Tuple {
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -67,7 +67,7 @@ public class Tuple4<T1, T2, T3, T4> extends Tuple {
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -74,7 +74,7 @@ public class Tuple5<T1, T2, T3, T4, T5> extends Tuple {
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -81,7 +81,7 @@ public class Tuple6<T1, T2, T3, T4, T5, T6> extends Tuple {
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -88,7 +88,7 @@ public class Tuple7<T1, T2, T3, T4, T5, T6, T7> extends Tuple {
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -95,7 +95,7 @@ public class Tuple8<T1, T2, T3, T4, T5, T6, T7, T8> extends Tuple {
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);
+1 -1
View File
@@ -102,7 +102,7 @@ public class Tuple9<T1, T2, T3, T4, T5, T6, T7, T8, T9> extends Tuple {
} }
@Override @Override
public void forEach(Function1<Object, Void> fn) { public void forEach(Function1<Object, Tuple0> fn) {
fn.invoke(_1); fn.invoke(_1);
fn.invoke(_2); fn.invoke(_2);
fn.invoke(_3); fn.invoke(_3);