From 959cb5fd4f9586ec3bd265b452fe25fe1db82e3f Mon Sep 17 00:00:00 2001 From: jeff Date: Tue, 13 Jan 2015 23:25:04 -0500 Subject: source format change don't hate me too much if you were planning a big merge. =P --- .../enigma/bytecode/MethodParameterWriter.java | 47 +++++++++------------- 1 file changed, 19 insertions(+), 28 deletions(-) (limited to 'src/cuchaz/enigma/bytecode/MethodParameterWriter.java') diff --git a/src/cuchaz/enigma/bytecode/MethodParameterWriter.java b/src/cuchaz/enigma/bytecode/MethodParameterWriter.java index adea7ea..5a11cd8 100644 --- a/src/cuchaz/enigma/bytecode/MethodParameterWriter.java +++ b/src/cuchaz/enigma/bytecode/MethodParameterWriter.java @@ -25,51 +25,42 @@ import cuchaz.enigma.mapping.ConstructorEntry; import cuchaz.enigma.mapping.MethodEntry; import cuchaz.enigma.mapping.Translator; -public class MethodParameterWriter -{ +public class MethodParameterWriter { + private Translator m_translator; - public MethodParameterWriter( Translator translator ) - { + public MethodParameterWriter(Translator translator) { m_translator = translator; } - public void writeMethodArguments( CtClass c ) - { + public void writeMethodArguments(CtClass c) { + // Procyon will read method arguments from the "MethodParameters" attribute, so write those - ClassEntry classEntry = new ClassEntry( Descriptor.toJvmName( c.getName() ) ); - for( CtBehavior behavior : c.getDeclaredBehaviors() ) - { - int numParams = Descriptor.numOfParameters( behavior.getMethodInfo().getDescriptor() ); - if( numParams <= 0 ) - { + ClassEntry classEntry = new ClassEntry(Descriptor.toJvmName(c.getName())); + for (CtBehavior behavior : c.getDeclaredBehaviors()) { + int numParams = Descriptor.numOfParameters(behavior.getMethodInfo().getDescriptor()); + if (numParams <= 0) { continue; } // get the behavior entry BehaviorEntry behaviorEntry; - if( behavior instanceof CtMethod ) - { - behaviorEntry = new MethodEntry( classEntry, behavior.getMethodInfo().getName(), behavior.getSignature() ); - } - else if( behavior instanceof CtConstructor ) - { - behaviorEntry = new ConstructorEntry( classEntry, behavior.getSignature() ); - } - else - { - throw new Error( "Unsupported behavior type: " + behavior.getClass().getName() ); + if (behavior instanceof CtMethod) { + behaviorEntry = new MethodEntry(classEntry, behavior.getMethodInfo().getName(), behavior.getSignature()); + } else if (behavior instanceof CtConstructor) { + behaviorEntry = new ConstructorEntry(classEntry, behavior.getSignature()); + } else { + throw new Error("Unsupported behavior type: " + behavior.getClass().getName()); } // get the list of parameter names - List names = new ArrayList( numParams ); - for( int i=0; i names = new ArrayList(numParams); + for (int i = 0; i < numParams; i++) { + names.add(m_translator.translate(new ArgumentEntry(behaviorEntry, i, ""))); } // save the mappings to the class - MethodParametersAttribute.updateClass( behavior.getMethodInfo(), names ); + MethodParametersAttribute.updateClass(behavior.getMethodInfo(), names); } } } -- cgit v1.2.3