From 0dde3d8022966762c090687b6945c496eb8a168c Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sun, 10 Apr 2016 20:44:51 +0100 Subject: Add reading of reference to zero-arg methods --- .../frontends/java/JavaMethodReferenceReader.java | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/org/zwobble/couscous/frontends/java/JavaMethodReferenceReader.java b/src/main/java/org/zwobble/couscous/frontends/java/JavaMethodReferenceReader.java index db88310..4930ee4 100644 --- a/src/main/java/org/zwobble/couscous/frontends/java/JavaMethodReferenceReader.java +++ b/src/main/java/org/zwobble/couscous/frontends/java/JavaMethodReferenceReader.java @@ -81,11 +81,23 @@ public class JavaMethodReferenceReader { arguments, type); } else { - return methodCall( - javaReader.readExpressionWithoutBoxing(scope, expression.getExpression()), - methodName, - arguments, - type); + Expression left = expression.getExpression(); + if (left instanceof SimpleName && ((SimpleName) left).resolveBinding().getKind() == IBinding.TYPE) { + if (arguments.size() != 1) { + throw new UnsupportedOperationException(); + } + return methodCall( + arguments.get(0), + methodName, + list(), + type); + } else { + return methodCall( + javaReader.readExpressionWithoutBoxing(scope, left), + methodName, + arguments, + type); + } } } } -- cgit v1.2.3