aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/dotty/tools/backend/jvm/DottyBackendInterface.scala5
-rw-r--r--src/scala/compat/java8/JProcedure0.java22
-rw-r--r--src/scala/compat/java8/JProcedure1.java22
-rw-r--r--src/scala/compat/java8/JProcedure10.java22
-rw-r--r--src/scala/compat/java8/JProcedure11.java22
-rw-r--r--src/scala/compat/java8/JProcedure12.java22
-rw-r--r--src/scala/compat/java8/JProcedure13.java22
-rw-r--r--src/scala/compat/java8/JProcedure14.java22
-rw-r--r--src/scala/compat/java8/JProcedure15.java22
-rw-r--r--src/scala/compat/java8/JProcedure16.java22
-rw-r--r--src/scala/compat/java8/JProcedure17.java22
-rw-r--r--src/scala/compat/java8/JProcedure18.java22
-rw-r--r--src/scala/compat/java8/JProcedure19.java22
-rw-r--r--src/scala/compat/java8/JProcedure2.java22
-rw-r--r--src/scala/compat/java8/JProcedure20.java22
-rw-r--r--src/scala/compat/java8/JProcedure21.java22
-rw-r--r--src/scala/compat/java8/JProcedure22.java22
-rw-r--r--src/scala/compat/java8/JProcedure3.java22
-rw-r--r--src/scala/compat/java8/JProcedure4.java22
-rw-r--r--src/scala/compat/java8/JProcedure5.java22
-rw-r--r--src/scala/compat/java8/JProcedure6.java22
-rw-r--r--src/scala/compat/java8/JProcedure7.java22
-rw-r--r--src/scala/compat/java8/JProcedure8.java22
-rw-r--r--src/scala/compat/java8/JProcedure9.java22
24 files changed, 510 insertions, 1 deletions
diff --git a/src/dotty/tools/backend/jvm/DottyBackendInterface.scala b/src/dotty/tools/backend/jvm/DottyBackendInterface.scala
index 75264b3ab..c33d8e86c 100644
--- a/src/dotty/tools/backend/jvm/DottyBackendInterface.scala
+++ b/src/dotty/tools/backend/jvm/DottyBackendInterface.scala
@@ -796,7 +796,10 @@ class DottyBackendInterface()(implicit ctx: Context) extends BackendInterface{
if(t.exists) t
else {
val arity = field.meth.tpe.widenDealias.paramTypes.size - _1.size
- ctx.requiredClass(("scala.compat.java8.JFunction"+arity).toTermName)
+ val returnsUnit = field.meth.tpe.widenDealias.resultType.classSymbol == UnitClass
+ if(returnsUnit)
+ ctx.requiredClass(("scala.compat.java8.JProcedure"+arity).toTermName)
+ else ctx.requiredClass(("scala.compat.java8.JFunction"+arity).toTermName)
}
}
}
diff --git a/src/scala/compat/java8/JProcedure0.java b/src/scala/compat/java8/JProcedure0.java
new file mode 100644
index 000000000..92d8ed0ee
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure0.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure0 extends JFunction0<BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid();
+
+ default BoxedUnit apply() {
+ applyVoid();
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure1.java b/src/scala/compat/java8/JProcedure1.java
new file mode 100644
index 000000000..c1ceaedcc
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure1.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure1<T1> extends JFunction1<T1, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1);
+
+ default BoxedUnit apply(T1 t1) {
+ applyVoid(t1);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure10.java b/src/scala/compat/java8/JProcedure10.java
new file mode 100644
index 000000000..611508234
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure10.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> extends JFunction10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure11.java b/src/scala/compat/java8/JProcedure11.java
new file mode 100644
index 000000000..77da4d1fb
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure11.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure11<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> extends JFunction11<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure12.java b/src/scala/compat/java8/JProcedure12.java
new file mode 100644
index 000000000..1158bea1a
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure12.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure12<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> extends JFunction12<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure13.java b/src/scala/compat/java8/JProcedure13.java
new file mode 100644
index 000000000..0b31a81d6
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure13.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure13<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13> extends JFunction13<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure14.java b/src/scala/compat/java8/JProcedure14.java
new file mode 100644
index 000000000..e7415e19b
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure14.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure14<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14> extends JFunction14<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure15.java b/src/scala/compat/java8/JProcedure15.java
new file mode 100644
index 000000000..7f2b98617
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure15.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure15<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> extends JFunction15<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure16.java b/src/scala/compat/java8/JProcedure16.java
new file mode 100644
index 000000000..043c22099
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure16.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16> extends JFunction16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure17.java b/src/scala/compat/java8/JProcedure17.java
new file mode 100644
index 000000000..f52e1faab
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure17.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure17<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17> extends JFunction17<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16, T17 t17);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16, T17 t17) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure18.java b/src/scala/compat/java8/JProcedure18.java
new file mode 100644
index 000000000..8bff4b673
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure18.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure18<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18> extends JFunction18<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16, T17 t17, T18 t18);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16, T17 t17, T18 t18) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure19.java b/src/scala/compat/java8/JProcedure19.java
new file mode 100644
index 000000000..725f44d3a
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure19.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure19<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19> extends JFunction19<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16, T17 t17, T18 t18, T19 t19);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16, T17 t17, T18 t18, T19 t19) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure2.java b/src/scala/compat/java8/JProcedure2.java
new file mode 100644
index 000000000..c3a679b49
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure2.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure2<T1, T2> extends JFunction2<T1, T2, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2);
+
+ default BoxedUnit apply(T1 t1, T2 t2) {
+ applyVoid(t1, t2);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure20.java b/src/scala/compat/java8/JProcedure20.java
new file mode 100644
index 000000000..324d260ee
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure20.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure20<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20> extends JFunction20<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16, T17 t17, T18 t18, T19 t19, T20 t20);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16, T17 t17, T18 t18, T19 t19, T20 t20) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19, t20);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure21.java b/src/scala/compat/java8/JProcedure21.java
new file mode 100644
index 000000000..7724eaa43
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure21.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure21<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21> extends JFunction21<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16, T17 t17, T18 t18, T19 t19, T20 t20, T21 t21);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16, T17 t17, T18 t18, T19 t19, T20 t20, T21 t21) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19, t20, t21);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure22.java b/src/scala/compat/java8/JProcedure22.java
new file mode 100644
index 000000000..22d44d681
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure22.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure22<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> extends JFunction22<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16, T17 t17, T18 t18, T19 t19, T20 t20, T21 t21, T22 t22);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14, T15 t15, T16 t16, T17 t17, T18 t18, T19 t19, T20 t20, T21 t21, T22 t22) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11, t12, t13, t14, t15, t16, t17, t18, t19, t20, t21, t22);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure3.java b/src/scala/compat/java8/JProcedure3.java
new file mode 100644
index 000000000..23d73373a
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure3.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure3<T1, T2, T3> extends JFunction3<T1, T2, T3, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3) {
+ applyVoid(t1, t2, t3);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure4.java b/src/scala/compat/java8/JProcedure4.java
new file mode 100644
index 000000000..7c9d19ee6
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure4.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure4<T1, T2, T3, T4> extends JFunction4<T1, T2, T3, T4, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4) {
+ applyVoid(t1, t2, t3, t4);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure5.java b/src/scala/compat/java8/JProcedure5.java
new file mode 100644
index 000000000..6915f8666
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure5.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure5<T1, T2, T3, T4, T5> extends JFunction5<T1, T2, T3, T4, T5, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5) {
+ applyVoid(t1, t2, t3, t4, t5);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure6.java b/src/scala/compat/java8/JProcedure6.java
new file mode 100644
index 000000000..2b8083f0d
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure6.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure6<T1, T2, T3, T4, T5, T6> extends JFunction6<T1, T2, T3, T4, T5, T6, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6) {
+ applyVoid(t1, t2, t3, t4, t5, t6);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure7.java b/src/scala/compat/java8/JProcedure7.java
new file mode 100644
index 000000000..5dbe33c85
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure7.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure7<T1, T2, T3, T4, T5, T6, T7> extends JFunction7<T1, T2, T3, T4, T5, T6, T7, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure8.java b/src/scala/compat/java8/JProcedure8.java
new file mode 100644
index 000000000..787183e68
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure8.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure8<T1, T2, T3, T4, T5, T6, T7, T8> extends JFunction8<T1, T2, T3, T4, T5, T6, T7, T8, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8);
+ return BoxedUnit.UNIT;
+ }
+}
+
diff --git a/src/scala/compat/java8/JProcedure9.java b/src/scala/compat/java8/JProcedure9.java
new file mode 100644
index 000000000..f27352b2e
--- /dev/null
+++ b/src/scala/compat/java8/JProcedure9.java
@@ -0,0 +1,22 @@
+
+/*
+ * Copyright (C) 2012-2014 Typesafe Inc. <http://www.typesafe.com>
+ */
+
+package scala.compat.java8;
+
+import scala.runtime.BoxedUnit;
+
+@FunctionalInterface
+public interface JProcedure9<T1, T2, T3, T4, T5, T6, T7, T8, T9> extends JFunction9<T1, T2, T3, T4, T5, T6, T7, T8, T9, BoxedUnit> {
+ default void $init$() {
+ }
+
+ void applyVoid(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9);
+
+ default BoxedUnit apply(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9) {
+ applyVoid(t1, t2, t3, t4, t5, t6, t7, t8, t9);
+ return BoxedUnit.UNIT;
+ }
+}
+