From 3d90a51163354930eeea0e26c2b0a567af8e96be Mon Sep 17 00:00:00 2001 From: Rawi01 Date: Thu, 23 Apr 2020 09:59:36 +0200 Subject: Added tests for ExtensionMethod --- .../resource/before/ExtensionMethodFunctional.java | 33 ++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 test/transform/resource/before/ExtensionMethodFunctional.java (limited to 'test/transform/resource/before/ExtensionMethodFunctional.java') diff --git a/test/transform/resource/before/ExtensionMethodFunctional.java b/test/transform/resource/before/ExtensionMethodFunctional.java new file mode 100644 index 00000000..19983258 --- /dev/null +++ b/test/transform/resource/before/ExtensionMethodFunctional.java @@ -0,0 +1,33 @@ +// version 8: +import java.util.function.Function; +import java.util.function.Consumer; + +import lombok.experimental.ExtensionMethod; + +@ExtensionMethod(ExtensionMethodFunctional.Extensions.class) +class ExtensionMethodFunctional { + public void test() { + String test = "test"; + test = test.map(s -> s.reverse()); + + test.consume(s -> System.out.println("1: " + s), s -> System.out.println("2: " + s)); + test.consume(System.out::println, System.out::println); + } + + static class Extensions { + public static R map(T value, Function mapper) { + return mapper.apply(value); + } + + public static String reverse(String string) { + return new StringBuilder(string).reverse().toString(); + } + + @SafeVarargs + public static void consume(T o, Consumer... consumer) { + for (int i = 0; i < consumer.length; i++) { + consumer[i].accept(o); + } + } + } +} -- cgit