From b5338883d271779c335842c07047d60136316167 Mon Sep 17 00:00:00 2001 From: jeff Date: Wed, 3 Sep 2014 00:20:36 -0400 Subject: big refactor to better model class/method mappings with no deobf name --- src/cuchaz/enigma/mapping/MethodMapping.java | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'src/cuchaz/enigma/mapping/MethodMapping.java') diff --git a/src/cuchaz/enigma/mapping/MethodMapping.java b/src/cuchaz/enigma/mapping/MethodMapping.java index bf83bd2..e59cb2e 100644 --- a/src/cuchaz/enigma/mapping/MethodMapping.java +++ b/src/cuchaz/enigma/mapping/MethodMapping.java @@ -26,8 +26,12 @@ public class MethodMapping implements Serializable, Comparable private String m_deobfSignature; private Map m_arguments; - // NOTE: this argument order is important for the MethodReader/MethodWriter - public MethodMapping( String obfName, String deobfName, String obfSignature, String deobfSignature ) + public MethodMapping( String obfName, String obfSignature ) + { + this( obfName, obfSignature, null, null ); + } + + public MethodMapping( String obfName, String obfSignature, String deobfName, String deobfSignature ) { m_obfName = obfName; m_deobfName = NameValidator.validateMethodName( deobfName ); @@ -69,9 +73,10 @@ public class MethodMapping implements Serializable, Comparable return m_arguments.values(); } - protected void addArgumentMapping( ArgumentMapping argumentMapping ) + public void addArgumentMapping( ArgumentMapping argumentMapping ) { - m_arguments.put( argumentMapping.getIndex(), argumentMapping ); + boolean wasAdded = m_arguments.put( argumentMapping.getIndex(), argumentMapping ) == null; + assert( wasAdded ); } public String getObfArgumentName( int index ) @@ -102,7 +107,8 @@ public class MethodMapping implements Serializable, Comparable if( argumentMapping == null ) { argumentMapping = new ArgumentMapping( index, name ); - m_arguments.put( index, argumentMapping ); + boolean wasAdded = m_arguments.put( index, argumentMapping ) == null; + assert( wasAdded ); } else { -- cgit v1.2.3