From 3b57f50a1d9429966e7aced0b81b3b3d4cfa41c7 Mon Sep 17 00:00:00 2001 From: Cuchaz Date: Mon, 30 Mar 2015 11:40:24 -0400 Subject: fix unintentional compile time transitive dependency on procyon --- src/cuchaz/enigma/mapping/ProcyonEntryFactory.java | 45 ++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 src/cuchaz/enigma/mapping/ProcyonEntryFactory.java (limited to 'src/cuchaz/enigma/mapping/ProcyonEntryFactory.java') diff --git a/src/cuchaz/enigma/mapping/ProcyonEntryFactory.java b/src/cuchaz/enigma/mapping/ProcyonEntryFactory.java new file mode 100644 index 0000000..eb0563c --- /dev/null +++ b/src/cuchaz/enigma/mapping/ProcyonEntryFactory.java @@ -0,0 +1,45 @@ +package cuchaz.enigma.mapping; + +import com.strobel.assembler.metadata.FieldDefinition; +import com.strobel.assembler.metadata.MethodDefinition; + + +public class ProcyonEntryFactory { + + public static FieldEntry getFieldEntry(FieldDefinition def) { + return new FieldEntry( + new ClassEntry(def.getDeclaringType().getInternalName()), + def.getName(), + new Type(def.getErasedSignature()) + ); + } + + public static MethodEntry getMethodEntry(MethodDefinition def) { + return new MethodEntry( + new ClassEntry(def.getDeclaringType().getInternalName()), + def.getName(), + new Signature(def.getErasedSignature()) + ); + } + + public static ConstructorEntry getConstructorEntry(MethodDefinition def) { + if (def.isTypeInitializer()) { + return new ConstructorEntry( + new ClassEntry(def.getDeclaringType().getInternalName()) + ); + } else { + return new ConstructorEntry( + new ClassEntry(def.getDeclaringType().getInternalName()), + new Signature(def.getErasedSignature()) + ); + } + } + + public static BehaviorEntry getBehaviorEntry(MethodDefinition def) { + if (def.isConstructor() || def.isTypeInitializer()) { + return getConstructorEntry(def); + } else { + return getMethodEntry(def); + } + } +} -- cgit v1.2.3