2011-02-07 14:24:17 +01:00
|
|
|
package jeptagon;
|
|
|
|
|
2011-03-08 13:41:28 +01:00
|
|
|
import java.util.concurrent.Executors;
|
|
|
|
import java.util.concurrent.ExecutorService;
|
|
|
|
import java.util.concurrent.Future;
|
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
|
|
2011-02-07 14:24:17 +01:00
|
|
|
public class Pervasives {
|
|
|
|
|
2011-03-08 13:41:28 +01:00
|
|
|
public static final ExecutorService executor_cached = Executors.newCachedThreadPool();
|
2011-02-07 14:24:17 +01:00
|
|
|
|
2011-03-08 13:41:28 +01:00
|
|
|
public static class StaticFuture<V> implements Future<V> {
|
|
|
|
V v;
|
|
|
|
|
|
|
|
public StaticFuture(V v) { this.v = v; }
|
|
|
|
|
|
|
|
public boolean cancel(boolean mayInterruptIfRunning) { return false; }
|
|
|
|
|
|
|
|
public boolean isCancelled() { return false; }
|
|
|
|
|
|
|
|
public boolean isDone() { return true; }
|
|
|
|
|
|
|
|
public V get() { return v; }
|
|
|
|
|
|
|
|
public V get(long timeout, TimeUnit unit) { return v; }
|
|
|
|
}
|
2011-02-07 14:24:17 +01:00
|
|
|
|
2011-03-21 14:30:19 +01:00
|
|
|
public static class Tuple1 {
|
|
|
|
public final Object c0;
|
|
|
|
public Tuple1(Object v) {
|
2011-02-07 14:24:17 +01:00
|
|
|
c0 = v;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2011-03-21 14:30:19 +01:00
|
|
|
public static class Tuple2 {
|
2011-03-08 13:41:28 +01:00
|
|
|
public final Object c0;
|
|
|
|
public final Object c1;
|
2011-03-21 14:30:19 +01:00
|
|
|
public Tuple2(Object v0, Object v1) {
|
2011-02-07 14:24:17 +01:00
|
|
|
c0 = v0;
|
|
|
|
c1 = v1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2011-03-21 14:30:19 +01:00
|
|
|
public static class Tuple3 {
|
|
|
|
public final Object c0;
|
|
|
|
public final Object c1;
|
|
|
|
public final Object c2;
|
|
|
|
public Tuple3(Object v0, Object v1, Object v2) {
|
2011-02-07 14:24:17 +01:00
|
|
|
c0 = v0;
|
|
|
|
c1 = v1;
|
|
|
|
c2 = v2;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2011-03-21 14:30:19 +01:00
|
|
|
public static class Tuple4 {
|
|
|
|
public final Object c0;
|
|
|
|
public final Object c1;
|
|
|
|
public final Object c2;
|
|
|
|
public final Object c3;
|
|
|
|
public Tuple4(Object v0, Object v1, Object v2, Object v3) {
|
2011-02-07 14:24:17 +01:00
|
|
|
c0 = v0;
|
|
|
|
c1 = v1;
|
|
|
|
c2 = v2;
|
|
|
|
c3 = v3;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2011-03-21 14:30:19 +01:00
|
|
|
public static class Tuple5 {
|
|
|
|
public final Object c0;
|
|
|
|
public final Object c1;
|
|
|
|
public final Object c2;
|
|
|
|
public final Object c3;
|
|
|
|
public final Object c4;
|
|
|
|
public Tuple5(Object v0, Object v1, Object v2, Object v3, Object v4) {
|
2011-02-07 14:24:17 +01:00
|
|
|
c0 = v0;
|
|
|
|
c1 = v1;
|
|
|
|
c2 = v2;
|
|
|
|
c3 = v3;
|
|
|
|
c4 = v4;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2011-03-21 14:30:19 +01:00
|
|
|
public static class Tuple6 {
|
|
|
|
public final Object c0;
|
|
|
|
public final Object c1;
|
|
|
|
public final Object c2;
|
|
|
|
public final Object c3;
|
|
|
|
public final Object c4;
|
|
|
|
public final Object c5;
|
|
|
|
public Tuple6(Object v0, Object v1, Object v2, Object v3, Object v4, Object v5) {
|
2011-02-07 14:24:17 +01:00
|
|
|
c0 = v0;
|
|
|
|
c1 = v1;
|
|
|
|
c2 = v2;
|
|
|
|
c3 = v3;
|
|
|
|
c4 = v4;
|
|
|
|
c5 = v5;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2011-03-21 14:30:19 +01:00
|
|
|
public static class Tuple7 {
|
|
|
|
public final Object c0;
|
|
|
|
public final Object c1;
|
|
|
|
public final Object c2;
|
|
|
|
public final Object c3;
|
|
|
|
public final Object c4;
|
|
|
|
public final Object c5;
|
|
|
|
public final Object c6;
|
|
|
|
public Tuple7(Object v0, Object v1, Object v2, Object v3, Object v4, Object v5, Object v6) {
|
2011-02-07 14:24:17 +01:00
|
|
|
c0 = v0;
|
|
|
|
c1 = v1;
|
|
|
|
c2 = v2;
|
|
|
|
c3 = v3;
|
|
|
|
c4 = v4;
|
|
|
|
c5 = v5;
|
|
|
|
c6 = v6;
|
|
|
|
}
|
|
|
|
}
|
2011-02-14 15:22:13 +01:00
|
|
|
|
|
|
|
public static int do_stuff(int coeff) {
|
|
|
|
int x = 13;
|
|
|
|
for (int i = 0; i < coeff; i++) {
|
|
|
|
for (int j = 0; j < 1000000; j++) {
|
|
|
|
x = (x + j) % (x + j/x) + 13;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return x;
|
|
|
|
}
|
2011-02-07 14:24:17 +01:00
|
|
|
}
|