diff options
Diffstat (limited to 'src/main/java/cuchaz/enigma/mapping')
6 files changed, 17 insertions, 7 deletions
diff --git a/src/main/java/cuchaz/enigma/mapping/DirectionalTranslator.java b/src/main/java/cuchaz/enigma/mapping/DirectionalTranslator.java index 10fb921..388e7ac 100644 --- a/src/main/java/cuchaz/enigma/mapping/DirectionalTranslator.java +++ b/src/main/java/cuchaz/enigma/mapping/DirectionalTranslator.java | |||
| @@ -131,7 +131,7 @@ public class DirectionalTranslator implements Translator { | |||
| 131 | 131 | ||
| 132 | private String translateFieldName(FieldEntry entry) { | 132 | private String translateFieldName(FieldEntry entry) { |
| 133 | // resolve the class entry | 133 | // resolve the class entry |
| 134 | ClassEntry resolvedClassEntry = this.index.resolveEntryOwner(entry, true); | 134 | ClassEntry resolvedClassEntry = this.index.resolveEntryOwner(entry); |
| 135 | if (resolvedClassEntry != null) { | 135 | if (resolvedClassEntry != null) { |
| 136 | // look for the class | 136 | // look for the class |
| 137 | ClassMapping classMapping = findClassMapping(resolvedClassEntry); | 137 | ClassMapping classMapping = findClassMapping(resolvedClassEntry); |
| @@ -175,7 +175,7 @@ public class DirectionalTranslator implements Translator { | |||
| 175 | 175 | ||
| 176 | private String translateMethodName(MethodEntry entry) { | 176 | private String translateMethodName(MethodEntry entry) { |
| 177 | // resolve the class entry | 177 | // resolve the class entry |
| 178 | ClassEntry resolvedOwner = this.index.resolveEntryOwner(entry, true); | 178 | ClassEntry resolvedOwner = this.index.resolveEntryOwner(entry); |
| 179 | if (resolvedOwner != null) { | 179 | if (resolvedOwner != null) { |
| 180 | // look for class | 180 | // look for class |
| 181 | ClassMapping classMapping = findClassMapping(resolvedOwner); | 181 | ClassMapping classMapping = findClassMapping(resolvedOwner); |
diff --git a/src/main/java/cuchaz/enigma/mapping/MappingsRenamer.java b/src/main/java/cuchaz/enigma/mapping/MappingsRenamer.java index 72a12c2..8ef4f12 100644 --- a/src/main/java/cuchaz/enigma/mapping/MappingsRenamer.java +++ b/src/main/java/cuchaz/enigma/mapping/MappingsRenamer.java | |||
| @@ -92,9 +92,9 @@ public class MappingsRenamer { | |||
| 92 | deobfName = NameValidator.validateFieldName(deobfName); | 92 | deobfName = NameValidator.validateFieldName(deobfName); |
| 93 | FieldEntry targetEntry = entryPool.getField(obf.getOwnerClassEntry(), deobfName, obf.getDesc()); | 93 | FieldEntry targetEntry = entryPool.getField(obf.getOwnerClassEntry(), deobfName, obf.getDesc()); |
| 94 | ClassEntry definedClass = null; | 94 | ClassEntry definedClass = null; |
| 95 | if (mappings.containsDeobfField(obf.getOwnerClassEntry(), deobfName) || index.containsEntryWithSameName(targetEntry)) | 95 | if (mappings.containsDeobfField(obf.getOwnerClassEntry(), deobfName) || index.containsEntryWithSameName(targetEntry)) { |
| 96 | definedClass = obf.getOwnerClassEntry(); | 96 | definedClass = obf.getOwnerClassEntry(); |
| 97 | else { | 97 | } else { |
| 98 | for (ClassEntry ancestorEntry : this.index.getTranslationIndex().getAncestry(obf.getOwnerClassEntry())) { | 98 | for (ClassEntry ancestorEntry : this.index.getTranslationIndex().getAncestry(obf.getOwnerClassEntry())) { |
| 99 | if (mappings.containsDeobfField(ancestorEntry, deobfName) || index.containsEntryWithSameName(targetEntry.updateOwnership(ancestorEntry))) { | 99 | if (mappings.containsDeobfField(ancestorEntry, deobfName) || index.containsEntryWithSameName(targetEntry.updateOwnership(ancestorEntry))) { |
| 100 | definedClass = ancestorEntry; | 100 | definedClass = ancestorEntry; |
diff --git a/src/main/java/cuchaz/enigma/mapping/entry/ClassDefEntry.java b/src/main/java/cuchaz/enigma/mapping/entry/ClassDefEntry.java index ac1fe2a..df72e7e 100644 --- a/src/main/java/cuchaz/enigma/mapping/entry/ClassDefEntry.java +++ b/src/main/java/cuchaz/enigma/mapping/entry/ClassDefEntry.java | |||
| @@ -15,7 +15,7 @@ import com.google.common.base.Preconditions; | |||
| 15 | import cuchaz.enigma.bytecode.AccessFlags; | 15 | import cuchaz.enigma.bytecode.AccessFlags; |
| 16 | import cuchaz.enigma.mapping.Signature; | 16 | import cuchaz.enigma.mapping.Signature; |
| 17 | 17 | ||
| 18 | public class ClassDefEntry extends ClassEntry { | 18 | public class ClassDefEntry extends ClassEntry implements DefEntry { |
| 19 | private final AccessFlags access; | 19 | private final AccessFlags access; |
| 20 | private final Signature signature; | 20 | private final Signature signature; |
| 21 | 21 | ||
| @@ -31,6 +31,7 @@ public class ClassDefEntry extends ClassEntry { | |||
| 31 | return signature; | 31 | return signature; |
| 32 | } | 32 | } |
| 33 | 33 | ||
| 34 | @Override | ||
| 34 | public AccessFlags getAccess() { | 35 | public AccessFlags getAccess() { |
| 35 | return access; | 36 | return access; |
| 36 | } | 37 | } |
diff --git a/src/main/java/cuchaz/enigma/mapping/entry/DefEntry.java b/src/main/java/cuchaz/enigma/mapping/entry/DefEntry.java new file mode 100644 index 0000000..43ad027 --- /dev/null +++ b/src/main/java/cuchaz/enigma/mapping/entry/DefEntry.java | |||
| @@ -0,0 +1,7 @@ | |||
| 1 | package cuchaz.enigma.mapping.entry; | ||
| 2 | |||
| 3 | import cuchaz.enigma.bytecode.AccessFlags; | ||
| 4 | |||
| 5 | public interface DefEntry extends Entry { | ||
| 6 | AccessFlags getAccess(); | ||
| 7 | } | ||
diff --git a/src/main/java/cuchaz/enigma/mapping/entry/FieldDefEntry.java b/src/main/java/cuchaz/enigma/mapping/entry/FieldDefEntry.java index d18115b..223410f 100644 --- a/src/main/java/cuchaz/enigma/mapping/entry/FieldDefEntry.java +++ b/src/main/java/cuchaz/enigma/mapping/entry/FieldDefEntry.java | |||
| @@ -16,7 +16,7 @@ import cuchaz.enigma.bytecode.AccessFlags; | |||
| 16 | import cuchaz.enigma.mapping.Signature; | 16 | import cuchaz.enigma.mapping.Signature; |
| 17 | import cuchaz.enigma.mapping.TypeDescriptor; | 17 | import cuchaz.enigma.mapping.TypeDescriptor; |
| 18 | 18 | ||
| 19 | public class FieldDefEntry extends FieldEntry { | 19 | public class FieldDefEntry extends FieldEntry implements DefEntry { |
| 20 | private final AccessFlags access; | 20 | private final AccessFlags access; |
| 21 | private final Signature signature; | 21 | private final Signature signature; |
| 22 | 22 | ||
| @@ -28,6 +28,7 @@ public class FieldDefEntry extends FieldEntry { | |||
| 28 | this.signature = signature; | 28 | this.signature = signature; |
| 29 | } | 29 | } |
| 30 | 30 | ||
| 31 | @Override | ||
| 31 | public AccessFlags getAccess() { | 32 | public AccessFlags getAccess() { |
| 32 | return access; | 33 | return access; |
| 33 | } | 34 | } |
diff --git a/src/main/java/cuchaz/enigma/mapping/entry/MethodDefEntry.java b/src/main/java/cuchaz/enigma/mapping/entry/MethodDefEntry.java index ec3af69..960b08d 100644 --- a/src/main/java/cuchaz/enigma/mapping/entry/MethodDefEntry.java +++ b/src/main/java/cuchaz/enigma/mapping/entry/MethodDefEntry.java | |||
| @@ -16,7 +16,7 @@ import cuchaz.enigma.bytecode.AccessFlags; | |||
| 16 | import cuchaz.enigma.mapping.MethodDescriptor; | 16 | import cuchaz.enigma.mapping.MethodDescriptor; |
| 17 | import cuchaz.enigma.mapping.Signature; | 17 | import cuchaz.enigma.mapping.Signature; |
| 18 | 18 | ||
| 19 | public class MethodDefEntry extends MethodEntry { | 19 | public class MethodDefEntry extends MethodEntry implements DefEntry { |
| 20 | 20 | ||
| 21 | private final AccessFlags access; | 21 | private final AccessFlags access; |
| 22 | private final Signature signature; | 22 | private final Signature signature; |
| @@ -29,6 +29,7 @@ public class MethodDefEntry extends MethodEntry { | |||
| 29 | this.signature = signature; | 29 | this.signature = signature; |
| 30 | } | 30 | } |
| 31 | 31 | ||
| 32 | @Override | ||
| 32 | public AccessFlags getAccess() { | 33 | public AccessFlags getAccess() { |
| 33 | return access; | 34 | return access; |
| 34 | } | 35 | } |