From e890428077e48f8dcf14928267d506a0c1d36abf Mon Sep 17 00:00:00 2001 From: Roel Spilker Date: Thu, 1 May 2014 22:13:10 +0200 Subject: [java8] Support in delombok for default methods in interfaces --- src/delombok/lombok/delombok/PrettyCommentsPrinter.java | 5 ++++- test/pretty/resource/after/DefaultMethod.java | 8 ++++++++ test/pretty/resource/before/DefaultMethod.java | 11 +++++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 test/pretty/resource/after/DefaultMethod.java create mode 100644 test/pretty/resource/before/DefaultMethod.java diff --git a/src/delombok/lombok/delombok/PrettyCommentsPrinter.java b/src/delombok/lombok/delombok/PrettyCommentsPrinter.java index 79f22e58..9dd7e40e 100644 --- a/src/delombok/lombok/delombok/PrettyCommentsPrinter.java +++ b/src/delombok/lombok/delombok/PrettyCommentsPrinter.java @@ -126,6 +126,9 @@ public class PrettyCommentsPrinter extends JCTree.Visitor { private static final Map OPERATORS; + // StandardFlags | DEFAULT + private static final long EXTENDED_STANDARD_FLAGS = 0x0fffL | 1L<<43; + static { Map map = new HashMap(); @@ -493,7 +496,7 @@ public class PrettyCommentsPrinter extends JCTree.Visitor { suppressFinalAndSemicolonsInTry = false; } print(TreeInfo.flagNames(flags)); - if ((flags & StandardFlags) != 0) print(" "); + if ((flags & EXTENDED_STANDARD_FLAGS) != 0) print(" "); if ((flags & ANNOTATION) != 0) print("@"); } diff --git a/test/pretty/resource/after/DefaultMethod.java b/test/pretty/resource/after/DefaultMethod.java new file mode 100644 index 00000000..864ba60f --- /dev/null +++ b/test/pretty/resource/after/DefaultMethod.java @@ -0,0 +1,8 @@ +interface DefaultMethod { + int size(); + default boolean isEmpty() { + return size() == 0; + } + default strictfp void run() { + } +} \ No newline at end of file diff --git a/test/pretty/resource/before/DefaultMethod.java b/test/pretty/resource/before/DefaultMethod.java new file mode 100644 index 00000000..e0358c7a --- /dev/null +++ b/test/pretty/resource/before/DefaultMethod.java @@ -0,0 +1,11 @@ +// version 8: +interface DefaultMethod { + int size(); + + default boolean isEmpty() { + return size() == 0; + } + + default strictfp void run() { + } +} \ No newline at end of file -- cgit