summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/mapping
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/cuchaz/enigma/mapping')
-rw-r--r--src/main/java/cuchaz/enigma/mapping/TypeDescriptor.java14
-rw-r--r--src/main/java/cuchaz/enigma/mapping/entry/MethodDefEntry.java10
2 files changed, 14 insertions, 10 deletions
diff --git a/src/main/java/cuchaz/enigma/mapping/TypeDescriptor.java b/src/main/java/cuchaz/enigma/mapping/TypeDescriptor.java
index b7b1255..3c8cc74 100644
--- a/src/main/java/cuchaz/enigma/mapping/TypeDescriptor.java
+++ b/src/main/java/cuchaz/enigma/mapping/TypeDescriptor.java
@@ -208,6 +208,20 @@ public class TypeDescriptor {
208 return buf.toString(); 208 return buf.toString();
209 } 209 }
210 210
211 public int getSize() {
212 switch (desc.charAt(0)) {
213 case 'J':
214 case 'D':
215 if (desc.length() == 1) {
216 return 2;
217 } else {
218 return 1;
219 }
220 default:
221 return 1;
222 }
223 }
224
211 public enum Primitive { 225 public enum Primitive {
212 Byte('B'), 226 Byte('B'),
213 Character('C'), 227 Character('C'),
diff --git a/src/main/java/cuchaz/enigma/mapping/entry/MethodDefEntry.java b/src/main/java/cuchaz/enigma/mapping/entry/MethodDefEntry.java
index bb7c85e..ec3af69 100644
--- a/src/main/java/cuchaz/enigma/mapping/entry/MethodDefEntry.java
+++ b/src/main/java/cuchaz/enigma/mapping/entry/MethodDefEntry.java
@@ -37,16 +37,6 @@ public class MethodDefEntry extends MethodEntry {
37 return signature; 37 return signature;
38 } 38 }
39 39
40 public int getVariableOffset(ClassDefEntry ownerEntry) {
41 // Enum constructors have an implicit "name" and "ordinal" parameter as well as "this"
42 if (ownerEntry.getAccess().isEnum() && getName().startsWith("<")) {
43 return 3;
44 } else {
45 // If we're not static, "this" is bound to index 0
46 return getAccess().isStatic() ? 0 : 1;
47 }
48 }
49
50 @Override 40 @Override
51 public MethodDefEntry updateOwnership(ClassEntry classEntry) { 41 public MethodDefEntry updateOwnership(ClassEntry classEntry) {
52 return new MethodDefEntry(new ClassEntry(classEntry.getName()), name, descriptor, signature, access); 42 return new MethodDefEntry(new ClassEntry(classEntry.getName()), name, descriptor, signature, access);