aboutsummaryrefslogtreecommitdiff
path: root/test/transform
diff options
context:
space:
mode:
authorBulgakov Alexander <abulgakov@at-consulting.ru>2016-10-20 16:41:40 +0300
committerBulgakov Alexander <abulgakov@at-consulting.ru>2016-10-24 16:28:02 +0300
commit55619e8030768fb42f8a9b4207bb330806eaceef (patch)
tree1b46b9ed40a2b03aae727a3a5900ec6356a2a82d /test/transform
parent4d9da60f4f2643302e53267ef150ee4c68c39d7c (diff)
downloadlombok-55619e8030768fb42f8a9b4207bb330806eaceef.tar.gz
lombok-55619e8030768fb42f8a9b4207bb330806eaceef.tar.bz2
lombok-55619e8030768fb42f8a9b4207bb330806eaceef.zip
added supporting of @var variables. The @var annotation has the same functionality as the @val except 'final' modifier.
Diffstat (limited to 'test/transform')
-rw-r--r--test/transform/resource/after-delombok/VarComplex.java20
-rw-r--r--test/transform/resource/after-delombok/VarInFor.java9
-rw-r--r--test/transform/resource/after-delombok/VarInForOld.java7
-rw-r--r--test/transform/resource/after-delombok/VarModifier.java7
-rw-r--r--test/transform/resource/after-ecj/VarComplex.java26
-rw-r--r--test/transform/resource/after-ecj/VarInFor.java14
-rw-r--r--test/transform/resource/after-ecj/VarInForOld.java12
-rw-r--r--test/transform/resource/after-ecj/VarModifier.java12
-rw-r--r--test/transform/resource/before/VarComplex.java22
-rw-r--r--test/transform/resource/before/VarInFor.java11
-rw-r--r--test/transform/resource/before/VarInForOld.java9
-rw-r--r--test/transform/resource/before/VarModifier.java10
12 files changed, 159 insertions, 0 deletions
diff --git a/test/transform/resource/after-delombok/VarComplex.java b/test/transform/resource/after-delombok/VarComplex.java
new file mode 100644
index 00000000..10b33943
--- /dev/null
+++ b/test/transform/resource/after-delombok/VarComplex.java
@@ -0,0 +1,20 @@
+public class VarComplex {
+ private String field = "";
+ private static final int CONSTANT = 20;
+ public void testComplex() {
+ char[] shouldBeCharArray = field.toCharArray();
+ int shouldBeInt = CONSTANT;
+ java.lang.Object lock = new Object();
+ synchronized (lock) {
+ int field = 20; //Shadowing
+ int inner = 10;
+ switch (field) {
+ case 5:
+ char[] shouldBeCharArray2 = shouldBeCharArray;
+ int innerInner = inner;
+
+ }
+ }
+ java.lang.String shouldBeString = field; //Unshadowing
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/VarInFor.java b/test/transform/resource/after-delombok/VarInFor.java
new file mode 100644
index 00000000..363aeeff
--- /dev/null
+++ b/test/transform/resource/after-delombok/VarInFor.java
@@ -0,0 +1,9 @@
+public class VarInFor {
+ public void enhancedFor() {
+ int[] list = new int[] {1, 2};
+ for (int shouldBeInt : list) {
+ System.out.println(shouldBeInt);
+ int shouldBeInt2 = shouldBeInt;
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/VarInForOld.java b/test/transform/resource/after-delombok/VarInForOld.java
new file mode 100644
index 00000000..bb510c0b
--- /dev/null
+++ b/test/transform/resource/after-delombok/VarInForOld.java
@@ -0,0 +1,7 @@
+public class VarInForOld {
+ public void oldFor() {
+ for (int i = 0; i < 100; ++i) {
+ System.out.println(i);
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-delombok/VarModifier.java b/test/transform/resource/after-delombok/VarModifier.java
new file mode 100644
index 00000000..9838cdf7
--- /dev/null
+++ b/test/transform/resource/after-delombok/VarModifier.java
@@ -0,0 +1,7 @@
+public class VarModifier {
+ private String field = "";
+ public void testComplex() {
+ final char[] shouldBeFinalCharArray = field.toCharArray();
+ char[] shouldBeCharArray = field.toCharArray();
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/VarComplex.java b/test/transform/resource/after-ecj/VarComplex.java
new file mode 100644
index 00000000..97a0a177
--- /dev/null
+++ b/test/transform/resource/after-ecj/VarComplex.java
@@ -0,0 +1,26 @@
+import lombok.var;
+public class VarComplex {
+ private String field = "";
+ private static final int CONSTANT = 20;
+ <clinit>() {
+ }
+ public VarComplex() {
+ super();
+ }
+ public void testComplex() {
+ @var char[] shouldBeCharArray = field.toCharArray();
+ @var int shouldBeInt = CONSTANT;
+ @var java.lang.Object lock = new Object();
+ synchronized (lock)
+ {
+ @var int field = 20;
+ @var int inner = 10;
+ switch (field) {
+ case 5 :
+ @var char[] shouldBeCharArray2 = shouldBeCharArray;
+ @var int innerInner = inner;
+ }
+ }
+ @var java.lang.String shouldBeString = field;
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/VarInFor.java b/test/transform/resource/after-ecj/VarInFor.java
new file mode 100644
index 00000000..1799d9b7
--- /dev/null
+++ b/test/transform/resource/after-ecj/VarInFor.java
@@ -0,0 +1,14 @@
+import lombok.var;
+public class VarInFor {
+ public VarInFor() {
+ super();
+ }
+ public void enhancedFor() {
+ int[] list = new int[]{1, 2};
+ for (@var int shouldBeInt : list)
+ {
+ System.out.println(shouldBeInt);
+ @var int shouldBeInt2 = shouldBeInt;
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/VarInForOld.java b/test/transform/resource/after-ecj/VarInForOld.java
new file mode 100644
index 00000000..065ea94d
--- /dev/null
+++ b/test/transform/resource/after-ecj/VarInForOld.java
@@ -0,0 +1,12 @@
+import lombok.var;
+public class VarInForOld {
+ public VarInForOld() {
+ super();
+ }
+ public void oldFor() {
+ for (@var int i = 0;; (i < 100); ++ i)
+ {
+ System.out.println(i);
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/after-ecj/VarModifier.java b/test/transform/resource/after-ecj/VarModifier.java
new file mode 100644
index 00000000..7f26534c
--- /dev/null
+++ b/test/transform/resource/after-ecj/VarModifier.java
@@ -0,0 +1,12 @@
+import lombok.var;
+public class VarModifier {
+ private String field = "";
+ public VarModifier() {
+ super();
+ }
+ public void testComplex() {
+ final @var char[] shouldBeFinalCharArray = field.toCharArray();
+ @var char[] shouldBeCharArray = field.toCharArray();
+
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/VarComplex.java b/test/transform/resource/before/VarComplex.java
new file mode 100644
index 00000000..c93e177a
--- /dev/null
+++ b/test/transform/resource/before/VarComplex.java
@@ -0,0 +1,22 @@
+import lombok.var;
+
+public class VarComplex {
+ private String field = "";
+ private static final int CONSTANT = 20;
+
+ public void testComplex() {
+ var shouldBeCharArray = field.toCharArray();
+ var shouldBeInt = CONSTANT;
+ var lock = new Object();
+ synchronized (lock) {
+ var field = 20; //Shadowing
+ var inner = 10;
+ switch (field) {
+ case 5:
+ var shouldBeCharArray2 = shouldBeCharArray;
+ var innerInner = inner;
+ }
+ }
+ var shouldBeString = field; //Unshadowing
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/VarInFor.java b/test/transform/resource/before/VarInFor.java
new file mode 100644
index 00000000..7f7bb7a7
--- /dev/null
+++ b/test/transform/resource/before/VarInFor.java
@@ -0,0 +1,11 @@
+import lombok.var;
+
+public class VarInFor {
+ public void enhancedFor() {
+ int[] list = new int[] {1, 2};
+ for (var shouldBeInt : list) {
+ System.out.println(shouldBeInt);
+ var shouldBeInt2 = shouldBeInt;
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/VarInForOld.java b/test/transform/resource/before/VarInForOld.java
new file mode 100644
index 00000000..99e83b57
--- /dev/null
+++ b/test/transform/resource/before/VarInForOld.java
@@ -0,0 +1,9 @@
+import lombok.var;
+
+public class VarInForOld {
+ public void oldFor() {
+ for (var i = 0; i < 100; ++i) {
+ System.out.println(i);
+ }
+ }
+} \ No newline at end of file
diff --git a/test/transform/resource/before/VarModifier.java b/test/transform/resource/before/VarModifier.java
new file mode 100644
index 00000000..bb167fd2
--- /dev/null
+++ b/test/transform/resource/before/VarModifier.java
@@ -0,0 +1,10 @@
+import lombok.var;
+
+public class VarModifier {
+ private String field = "";
+
+ public void testComplex() {
+ final var shouldBeFinalCharArray = field.toCharArray();
+ var shouldBeCharArray = field.toCharArray();
+ }
+} \ No newline at end of file