Skip to content

Instantly share code, notes, and snippets.

View sajjadyousefnia's full-sized avatar
🤒
Out sick

Sajjad Yousefnia sajjadyousefnia

🤒
Out sick
View GitHub Profile
Error:(12, 34) Kotlin: Illegal usage of inline-parameter 'predicate' in 'public inline fun inlinedFilter(list: List<Int>, predicate: (Int) -> Boolean): List<Int> defined in functiontypes in file Inline.kt'. Add 'noinline' modifier to the parameter declaration
inline fun inlinedFilter(list : List<Int>, predicate : (Int) -> Boolean) : List<Int>{
val function = predicate
return list.filter(predicate)
}
public static final boolean filterLessThanTwo(int input) {
return input < 2;
}
public static final void lambdaInstanceTest() {
List list$iv = CollectionsKt.listOf(new Integer[]{1, 2, 3});
Iterable $receiver$iv$iv$iv = (Iterable)list$iv;
Collection destination$iv$iv$iv$iv = (Collection)(new ArrayList());
Iterator var4 = $receiver$iv$iv$iv.iterator();
public static final boolean filterLessThanTwo(int input) {
return input < 2;
}
public static final void lambdaInstanceTest() {
lambdaInstance((Function1) new Function1<Integer, Boolean>() {
@Override
public Boolean invoke(Integer integer) {
return filterLessThanTwo(integer);
}
inline fun inlinedFilter(list : List<Int>, predicate : (Int) -> Boolean) : List<Int>{
return list.filter(predicate)
}
fun filterLessThanTwo(input: Int) = input < 2
fun lambdaInstance(predicate: (Int) -> Boolean) {
val list = listOf(1,2,3)
val newList = inlinedFilter(list, predicate)
println(newList)
public static final boolean filterLessThanTwo(int input) {
return input < 2;
}
public static final void functionReferenceTest() {
List list = CollectionsKt.listOf(new Integer[]{1, 2, 3});
Iterable $receiver$iv$iv = (Iterable)list;
Collection destination$iv$iv$iv = (Collection)(new ArrayList());
Iterator var5 = $receiver$iv$iv.iterator();
inline fun inlinedFilter(list : List<Int>, predicate : (Int) -> Boolean) : List<Int>{
return list.filter(predicate)
}
fun filterLessThanTwo(input: Int) = input < 2
fun functionReferenceTest() {
val list = listOf(1,2,3)
val newList = inlinedFilter(list, ::filterLessThanTwo)
println(newList)
public static final void lambdaInCallSiteTest() {
List list = CollectionsKt.listOf(new Integer[]{1, 2, 3});
Iterable $receiver$iv$iv = (Iterable)list;
Collection destination$iv$iv$iv = (Collection)(new ArrayList());
Iterator var5 = $receiver$iv$iv.iterator();
while(var5.hasNext()) {
Object element$iv$iv$iv = var5.next();
int it = ((Number)element$iv$iv$iv).intValue();
if (it < 2) {
inline fun inlinedFilter(list : List<Int>, predicate : (Int) -> Boolean) : List<Int>{
return list.filter(predicate)
}
fun lambdaInCallSiteTest() {
val list = listOf(1,2,3)
val newList = inlinedFilter(list) {it < 2}
println(newList)
}
@NotNull
public static final List notInlinedFilter(@NotNull List list, @NotNull Function1 predicate) {
Intrinsics.checkParameterIsNotNull(list, "list");
Intrinsics.checkParameterIsNotNull(predicate, "predicate");
Iterable $receiver$iv = (Iterable)list;
Collection destination$iv$iv = (Collection)(new ArrayList());
Iterator var5 = $receiver$iv.iterator();
while(var5.hasNext()) {
Object element$iv$iv = var5.next();