aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/delombok/lombok/delombok/PrettyPrinter.java9
-rw-r--r--test/pretty/resource/after/ThisParameter.java34
-rw-r--r--test/pretty/resource/before/ThisParameter.java41
3 files changed, 83 insertions, 1 deletions
diff --git a/src/delombok/lombok/delombok/PrettyPrinter.java b/src/delombok/lombok/delombok/PrettyPrinter.java
index 2db70f7f..7eb8410b 100644
--- a/src/delombok/lombok/delombok/PrettyPrinter.java
+++ b/src/delombok/lombok/delombok/PrettyPrinter.java
@@ -796,8 +796,15 @@ public class PrettyPrinter extends JCTree.Visitor {
print(tree.name);
}
- print("(");
boolean first = true;
+ print("(");
+
+ JCVariableDecl recvparam = readObject(tree, "recvparam", null);
+ if (recvparam != null) {
+ printVarDefInline(recvparam);
+ first = false;
+ }
+
for (JCVariableDecl param : tree.params) {
if (!first) print(", ");
first = false;
diff --git a/test/pretty/resource/after/ThisParameter.java b/test/pretty/resource/after/ThisParameter.java
new file mode 100644
index 00000000..49452a59
--- /dev/null
+++ b/test/pretty/resource/after/ThisParameter.java
@@ -0,0 +1,34 @@
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+class ThisParameter {
+ void untagged(ThisParameter this, int i) {
+ // no content
+ }
+ void sourceTagged(@SourceTagged("source") ThisParameter this) {
+ // no content
+ }
+ void classTagged(@ClassTagged("class") ThisParameter this) {
+ // no content
+ }
+ void runtimeTagged(@RuntimeTagged("runtime") ThisParameter this) {
+ // no content
+ }
+ @Target(ElementType.PARAMETER)
+ @Retention(RetentionPolicy.SOURCE)
+ @interface SourceTagged {
+ String value();
+ }
+ @Target(ElementType.PARAMETER)
+ @Retention(RetentionPolicy.CLASS)
+ @interface ClassTagged {
+ String value();
+ }
+ @Target(ElementType.PARAMETER)
+ @Retention(RetentionPolicy.RUNTIME)
+ @interface RuntimeTagged {
+ String value();
+ }
+}
diff --git a/test/pretty/resource/before/ThisParameter.java b/test/pretty/resource/before/ThisParameter.java
new file mode 100644
index 00000000..d95c0261
--- /dev/null
+++ b/test/pretty/resource/before/ThisParameter.java
@@ -0,0 +1,41 @@
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+class ThisParameter {
+
+ void untagged(ThisParameter this, int i) {
+ // no content
+ }
+
+ void sourceTagged(@SourceTagged("source") ThisParameter this) {
+ // no content
+ }
+
+ void classTagged(@ClassTagged("class") ThisParameter this) {
+ // no content
+ }
+
+ void runtimeTagged(@RuntimeTagged("runtime") ThisParameter this) {
+ // no content
+ }
+
+ @Target(ElementType.PARAMETER)
+ @Retention(RetentionPolicy.SOURCE)
+ @interface SourceTagged {
+ String value();
+ }
+
+ @Target(ElementType.PARAMETER)
+ @Retention(RetentionPolicy.CLASS)
+ @interface ClassTagged {
+ String value();
+ }
+
+ @Target(ElementType.PARAMETER)
+ @Retention(RetentionPolicy.RUNTIME)
+ @interface RuntimeTagged {
+ String value();
+ }
+}