Browse Source

lambda :tada:

Riccardo Balbo 5 years ago
parent
commit
728a05c4f3

+ 10 - 0
build.gradle

@@ -9,6 +9,7 @@ buildscript {
     dependencies {
         classpath 'com.android.tools.build:gradle:3.1.4'
         classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.4'
+        classpath 'me.tatarka:gradle-retrolambda:3.7.1'
     }
 }
 
@@ -22,6 +23,8 @@ allprojects {
 apply plugin: 'base'
 apply from: file('version.gradle')
 
+apply plugin: 'me.tatarka.retrolambda'
+
 // This is applied to all sub projects
 subprojects {
     if(!project.name.equals('jme3-android-examples')) {
@@ -250,4 +253,11 @@ if (skipPrebuildLibraries != "true" && buildNativeProjects != "true") {
 
 wrapper {
     gradleVersion = '5.6.4'
+}
+
+
+retrolambda {
+  javaVersion JavaVersion.VERSION_1_7
+  incremental true
+    jvmArgs '-noverify'
 }

+ 6 - 0
jme3-core/src/main/java/com/jme3/util/functional/Function.java

@@ -0,0 +1,6 @@
+package com.jme3.util.functional;
+
+
+public interface Function<R,T> {
+    R eval(T t);
+}

+ 6 - 0
jme3-core/src/main/java/com/jme3/util/functional/NoArgFunction.java

@@ -0,0 +1,6 @@
+
+package com.jme3.util.functional;
+
+public interface NoArgFunction<R> {
+    R eval();
+}

+ 6 - 0
jme3-core/src/main/java/com/jme3/util/functional/NoArgVoidFunction.java

@@ -0,0 +1,6 @@
+
+package com.jme3.util.functional;
+
+public interface NoArgVoidFunction {
+    void eval();
+}

+ 6 - 0
jme3-core/src/main/java/com/jme3/util/functional/VoidFunction.java

@@ -0,0 +1,6 @@
+
+package com.jme3.util.functional;
+
+public interface VoidFunction<T> {
+    void eval(T t);
+}