@Override public Void visitIdentifierExpression(final IdentifierExpression node, final Void p) { final Variable variable = node.getUserData(Keys.VARIABLE); if (variable != null && variable.isParameter()) { final ParameterDefinition parameter = variable.getOriginalParameter(); assert parameter != null; if (areMethodsEquivalent((MethodReference) parameter.getMethod(), context.getCurrentMethod())) { final AstNode replacement = _argumentMappings.get(parameter); if (replacement != null) { node.replaceWith(replacement.clone()); return null; } } } return super.visitIdentifierExpression(node, p); }
@Override public Void visitIdentifierExpression(final IdentifierExpression node, final Void _) { final Variable variable = node.getUserData(Keys.VARIABLE); if (variable != null && variable.isParameter()) { final ParameterDefinition parameter = variable.getOriginalParameter(); if (areMethodsEquivalent((MethodReference) parameter.getMethod(), context.getCurrentMethod())) { final AstNode replacement = _argumentMappings.get(parameter); if (replacement != null) { node.replaceWith(replacement.clone()); return null; } } } return super.visitIdentifierExpression(node, _); }
@Override public Void visitIdentifierExpression(final IdentifierExpression node, final Void _) { final Variable variable = node.getUserData(Keys.VARIABLE); if (variable != null && variable.isParameter()) { final ParameterDefinition parameter = variable.getOriginalParameter(); if (areMethodsEquivalent((MethodReference) parameter.getMethod(), context.getCurrentMethod())) { final AstNode replacement = _argumentMappings.get(parameter); if (replacement != null) { node.replaceWith(replacement.clone()); return null; } } } return super.visitIdentifierExpression(node, _); }
public static AstNode inlineMethod( final MethodDeclaration method, final Map<ParameterDefinition, ? extends AstNode> argumentMappings) { VerifyArgument.notNull(method, "method"); VerifyArgument.notNull(argumentMappings, "argumentMappings"); final DecompilerContext context = new DecompilerContext(); final MethodDefinition definition = method.getUserData(Keys.METHOD_DEFINITION); if (definition != null) { context.setCurrentType(definition.getDeclaringType()); } final InliningVisitor visitor = new InliningVisitor(context, argumentMappings); visitor.run(method); return visitor.getInlinedBody(); }
public static AstNode inlineMethod( final MethodDeclaration method, final Map<ParameterDefinition, ? extends AstNode> argumentMappings) { VerifyArgument.notNull(method, "method"); VerifyArgument.notNull(argumentMappings, "argumentMappings"); final DecompilerContext context = new DecompilerContext(); final MethodDefinition definition = method.getUserData(Keys.METHOD_DEFINITION); if (definition != null) { context.setCurrentType(definition.getDeclaringType()); } final InliningVisitor visitor = new InliningVisitor(context, argumentMappings); visitor.run(method); return visitor.getInlinedBody(); }
public static AstNode inlineMethod( final MethodDeclaration method, final Map<ParameterDefinition, ? extends AstNode> argumentMappings) { VerifyArgument.notNull(method, "method"); VerifyArgument.notNull(argumentMappings, "argumentMappings"); final DecompilerContext context = new DecompilerContext(); final MethodDefinition definition = method.getUserData(Keys.METHOD_DEFINITION); if (definition != null) { context.setCurrentType(definition.getDeclaringType()); } final InliningVisitor visitor = new InliningVisitor(context, argumentMappings); visitor.run(method); return visitor.getInlinedBody(); }