summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/mapping/entry
diff options
context:
space:
mode:
authorGravatar asie2018-11-27 23:35:26 +0100
committerGravatar asie2018-11-27 23:35:26 +0100
commit4438a04996887882f72f228fe51ff59f27611e55 (patch)
tree7559592a58be47d8a0c7b9543baa8544e2af97b8 /src/main/java/cuchaz/enigma/mapping/entry
parentupdate Guava, show proper constructor tree node, fix AccessFlags.toString (diff)
downloadenigma-fork-4438a04996887882f72f228fe51ff59f27611e55.tar.gz
enigma-fork-4438a04996887882f72f228fe51ff59f27611e55.tar.xz
enigma-fork-4438a04996887882f72f228fe51ff59f27611e55.zip
do not propagate non-argument local variable names
Diffstat (limited to 'src/main/java/cuchaz/enigma/mapping/entry')
-rw-r--r--src/main/java/cuchaz/enigma/mapping/entry/LocalVariableDefEntry.java8
-rw-r--r--src/main/java/cuchaz/enigma/mapping/entry/LocalVariableEntry.java13
2 files changed, 18 insertions, 3 deletions
diff --git a/src/main/java/cuchaz/enigma/mapping/entry/LocalVariableDefEntry.java b/src/main/java/cuchaz/enigma/mapping/entry/LocalVariableDefEntry.java
index 7742272..d186664 100644
--- a/src/main/java/cuchaz/enigma/mapping/entry/LocalVariableDefEntry.java
+++ b/src/main/java/cuchaz/enigma/mapping/entry/LocalVariableDefEntry.java
@@ -15,7 +15,11 @@ public class LocalVariableDefEntry extends LocalVariableEntry {
15 protected final TypeDescriptor desc; 15 protected final TypeDescriptor desc;
16 16
17 public LocalVariableDefEntry(MethodDefEntry ownerEntry, int index, String name, TypeDescriptor desc) { 17 public LocalVariableDefEntry(MethodDefEntry ownerEntry, int index, String name, TypeDescriptor desc) {
18 super(ownerEntry, index, name); 18 this(ownerEntry, index, name, true, desc);
19 }
20
21 public LocalVariableDefEntry(MethodDefEntry ownerEntry, int index, String name, boolean parameter, TypeDescriptor desc) {
22 super(ownerEntry, index, name, parameter);
19 Preconditions.checkNotNull(desc, "Variable desc cannot be null"); 23 Preconditions.checkNotNull(desc, "Variable desc cannot be null");
20 24
21 this.ownerEntry = ownerEntry; 25 this.ownerEntry = ownerEntry;
@@ -33,7 +37,7 @@ public class LocalVariableDefEntry extends LocalVariableEntry {
33 37
34 @Override 38 @Override
35 public LocalVariableDefEntry updateOwnership(ClassEntry classEntry) { 39 public LocalVariableDefEntry updateOwnership(ClassEntry classEntry) {
36 return new LocalVariableDefEntry(ownerEntry.updateOwnership(classEntry), index, name, desc); 40 return new LocalVariableDefEntry(ownerEntry.updateOwnership(classEntry), index, name, parameter, desc);
37 } 41 }
38 42
39 @Override 43 @Override
diff --git a/src/main/java/cuchaz/enigma/mapping/entry/LocalVariableEntry.java b/src/main/java/cuchaz/enigma/mapping/entry/LocalVariableEntry.java
index a794d0a..3507b25 100644
--- a/src/main/java/cuchaz/enigma/mapping/entry/LocalVariableEntry.java
+++ b/src/main/java/cuchaz/enigma/mapping/entry/LocalVariableEntry.java
@@ -14,8 +14,14 @@ public class LocalVariableEntry implements Entry {
14 protected final MethodEntry ownerEntry; 14 protected final MethodEntry ownerEntry;
15 protected final String name; 15 protected final String name;
16 protected final int index; 16 protected final int index;
17 protected final boolean parameter;
17 18
19 @Deprecated
18 public LocalVariableEntry(MethodEntry ownerEntry, int index, String name) { 20 public LocalVariableEntry(MethodEntry ownerEntry, int index, String name) {
21 this(ownerEntry, index, name, true);
22 }
23
24 public LocalVariableEntry(MethodEntry ownerEntry, int index, String name, boolean parameter) {
19 Preconditions.checkNotNull(ownerEntry, "Variable owner cannot be null"); 25 Preconditions.checkNotNull(ownerEntry, "Variable owner cannot be null");
20 Preconditions.checkNotNull(name, "Variable name cannot be null"); 26 Preconditions.checkNotNull(name, "Variable name cannot be null");
21 Preconditions.checkArgument(index >= 0, "Index must be positive"); 27 Preconditions.checkArgument(index >= 0, "Index must be positive");
@@ -23,6 +29,11 @@ public class LocalVariableEntry implements Entry {
23 this.ownerEntry = ownerEntry; 29 this.ownerEntry = ownerEntry;
24 this.name = name; 30 this.name = name;
25 this.index = index; 31 this.index = index;
32 this.parameter = parameter;
33 }
34
35 public boolean isParameter() {
36 return this.parameter;
26 } 37 }
27 38
28 public MethodEntry getOwnerEntry() { 39 public MethodEntry getOwnerEntry() {
@@ -50,7 +61,7 @@ public class LocalVariableEntry implements Entry {
50 61
51 @Override 62 @Override
52 public LocalVariableEntry updateOwnership(ClassEntry classEntry) { 63 public LocalVariableEntry updateOwnership(ClassEntry classEntry) {
53 return new LocalVariableEntry(ownerEntry.updateOwnership(classEntry), index, name); 64 return new LocalVariableEntry(ownerEntry.updateOwnership(classEntry), index, name, parameter);
54 } 65 }
55 66
56 public String getMethodName() { 67 public String getMethodName() {