Use anonymous objects instead of lambdas as callbacks in java interop tests

This commit is contained in:
Ilmir Usmanov
2019-04-18 18:37:27 +03:00
parent 328b8f9725
commit eb5ea62da4
4 changed files with 46 additions and 18 deletions
@@ -62,17 +62,25 @@ inline fun inlineMe3(crossinline c: suspend () -> Unit) = object: SuspendRunnabl
import test.InlineMeKt;
import helpers.CoroutineUtilKt;
import helpers.EmptyContinuation;
import kotlin.jvm.functions.Function1;
import COROUTINES_PACKAGE.Continuation;
import kotlin.Unit;
public class A {
static Function1<Continuation<? super Unit>, Object> callback = new Function1<Continuation<? super Unit>, Object>() {
@Override
public Object invoke(Continuation<? super Unit> continuation) {
return CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation);
}
};
public static Object call() {
return InlineMeKt.inlineMe((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe(callback);
}
public static Object call2() {
return InlineMeKt.inlineMe2((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe2(callback);
}
public static Object call3() {
return InlineMeKt.inlineMe3((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe3(callback);
}
}
@@ -32,17 +32,25 @@ inline fun inlineMe3(crossinline c: suspend () -> Unit) = suspend {
import test.InlineMeKt;
import helpers.CoroutineUtilKt;
import helpers.EmptyContinuation;
import kotlin.jvm.functions.Function1;
import COROUTINES_PACKAGE.Continuation;
import kotlin.Unit;
public class A {
static Function1<Continuation<? super Unit>, Object> callback = new Function1<Continuation<? super Unit>, Object>() {
@Override
public Object invoke(Continuation<? super Unit> continuation) {
return CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation);
}
};
public static Object call() {
return InlineMeKt.inlineMe((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe(callback);
}
public static Object call2() {
return InlineMeKt.inlineMe2((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe2(callback);
}
public static Object call3() {
return InlineMeKt.inlineMe3((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe3(callback);
}
}
@@ -42,17 +42,25 @@ inline fun inlineMe3(crossinline c: suspend () -> Unit) = object: SuspendRunnabl
import test.InlineMeKt;
import helpers.CoroutineUtilKt;
import helpers.EmptyContinuation;
import kotlin.jvm.functions.Function1;
import COROUTINES_PACKAGE.Continuation;
import kotlin.Unit;
public class A {
static Function1<Continuation<? super Unit>, Object> callback = new Function1<Continuation<? super Unit>, Object>() {
@Override
public Object invoke(Continuation<? super Unit> continuation) {
return CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation);
}
};
public static Object call() {
return InlineMeKt.inlineMe((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe(callback);
}
public static Object call2() {
return InlineMeKt.inlineMe2((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe2(callback);
}
public static Object call3() {
return InlineMeKt.inlineMe3((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe3(callback);
}
}
@@ -72,27 +72,31 @@ inline fun inlineMe5(crossinline c1: suspend () -> Unit) = inlineMe({ c1(); c1()
import test.InlineMeKt;
import helpers.CoroutineUtilKt;
import helpers.EmptyContinuation;
import kotlin.jvm.functions.Function1;
import COROUTINES_PACKAGE.Continuation;
import kotlin.Unit;
public class A {
static Function1<Continuation<? super Unit>, Object> callback = new Function1<Continuation<? super Unit>, Object>() {
@Override
public Object invoke(Continuation<? super Unit> continuation) {
return CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation);
}
};
public static Object call() {
return InlineMeKt.inlineMe((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation),
(continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe(callback, callback);
}
public static Object call2() {
return InlineMeKt.inlineMe2((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation),
(continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe2(callback, callback);
}
public static Object call3() {
return InlineMeKt.inlineMe3((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation),
(continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe3(callback, callback);
}
public static Object call4() {
return InlineMeKt.inlineMe4((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation),
(continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe4(callback, callback);
}
public static Object call5() {
return InlineMeKt.inlineMe5((continuation) -> CoroutineUtilKt.getStateMachineChecker().suspendHere(continuation));
return InlineMeKt.inlineMe5(callback);
}
}