From a5e68ab6528f62c891479f387877118f90dfa2b8 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 31 Oct 2015 16:30:43 +0000 Subject: Fix reading of methods --- .../couscous/frontends/java/JavaReader.java | 29 +++++++--------------- 1 file changed, 9 insertions(+), 20 deletions(-) (limited to 'src/main/java/org') diff --git a/src/main/java/org/zwobble/couscous/frontends/java/JavaReader.java b/src/main/java/org/zwobble/couscous/frontends/java/JavaReader.java index 601e565..c08e447 100644 --- a/src/main/java/org/zwobble/couscous/frontends/java/JavaReader.java +++ b/src/main/java/org/zwobble/couscous/frontends/java/JavaReader.java @@ -244,32 +244,21 @@ public class JavaReader { @SuppressWarnings("unchecked") List arguments = readArguments(expression.arguments()); final TypeName type = typeOf(expression); - if (expression.getExpression() == null) { - IMethodBinding methodBinding = expression.resolveMethodBinding(); - TypeName receiverType = typeOf(methodBinding.getDeclaringClass()); - if ((methodBinding.getModifiers() & Modifier.STATIC) != 0) { - return StaticMethodCallNode.staticMethodCall( - receiverType, - methodName, - arguments, - type); - } else { - return MethodCallNode.methodCall( - ThisReferenceNode.thisReference(receiverType), - methodName, - arguments, - type); - } - } else if (expression.getExpression().getNodeType() == ASTNode.SIMPLE_NAME) { - Expression receiver = expression.getExpression(); + + IMethodBinding methodBinding = expression.resolveMethodBinding(); + TypeName receiverType = typeOf(methodBinding.getDeclaringClass()); + if ((methodBinding.getModifiers() & Modifier.STATIC) != 0) { return StaticMethodCallNode.staticMethodCall( - typeOf(receiver), + receiverType, methodName, arguments, type); } else { + ExpressionNode receiver = expression.getExpression() == null + ? ThisReferenceNode.thisReference(receiverType) + : readExpression(expression.getExpression()); return MethodCallNode.methodCall( - readExpression(expression.getExpression()), + receiver, methodName, arguments, type); -- cgit v1.2.3