@NotNull private List<JsExpression> translateArguments() { List<JsExpression> result = new ArrayList<JsExpression>(); ResolvedCall<?> resolvedCall = getResolvedCallForCallExpression(bindingContext(), expression); for (ValueParameterDescriptor parameterDescriptor : resolvedCall.getResultingDescriptor().getValueParameters()) { ResolvedValueArgument actualArgument = resolvedCall.getValueArgumentsByIndex().get(parameterDescriptor.getIndex()); result.addAll(translateSingleArgument(actualArgument, parameterDescriptor)); } return result; }
@Nullable private JsExpression getCalleeExpression() { if (resolvedCall.getCandidateDescriptor() instanceof ExpressionAsFunctionDescriptor) { return Translation.translateAsExpression(getCallee(expression), context()); } return null; }
private CallExpressionTranslator( @NotNull JetCallExpression expression, @NotNull TranslationContext context) { super(context); this.expression = expression; this.resolvedCall = getResolvedCallForCallExpression(bindingContext(), expression); this.isNativeFunctionCall = AnnotationsUtils.isNativeObject(resolvedCall.getCandidateDescriptor()); }