diff options
| author | 2018-11-27 23:35:26 +0100 | |
|---|---|---|
| committer | 2018-11-27 23:35:26 +0100 | |
| commit | 4438a04996887882f72f228fe51ff59f27611e55 (patch) | |
| tree | 7559592a58be47d8a0c7b9543baa8544e2af97b8 /src/main/java/cuchaz/enigma/mapping/entry | |
| parent | update Guava, show proper constructor tree node, fix AccessFlags.toString (diff) | |
| download | enigma-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.java | 8 | ||||
| -rw-r--r-- | src/main/java/cuchaz/enigma/mapping/entry/LocalVariableEntry.java | 13 |
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() { |