This projects provides an annotation processor to provide default parameters for methods inside java
private methods are not supported!
As project currenlty not published to major maven repos please add:
repositories {
maven { url "https://dl.bintray.com/wgr1984/SimpleDefaultMethods"}
}
and the following two dependecies:
annotationProcessor "de.wr.simpledefaultmethods:simpleDefaultMethodsProcessor:0.1"
provided "de.wr.simpledefaultmethods:libSimpleDefaultMethods:0.1"
Now you can simply use the @Default
annotations in order
to have generated an java8-style interface enhancing the
class with missing default methods:
public class TestObject implements de.wr.simpledefaultmethods.TestObjectDefaults {
@Default
public void testMethod(int i, @DefaultBool(true) boolean b, String s, @DefaultChar('b') char charTest) {
}
public void testMethod2(int i, @DefaultBool(true) boolean b, @DefaultString("test") String s) {
}
}
this will allow you to use methods without the need of passing parameters annotated by default values
Note: Using @Default
annotating the method itself will
use default values zero / null / array[0]
for non annotated
parameters.