Boo.Lang.Compiler.Steps.ProcessMethodBodies.ProcessCallableTypeInvocation C# (CSharp) Метод

ProcessCallableTypeInvocation() приватный Метод

private ProcessCallableTypeInvocation ( MethodInvocationExpression node, ICallableType type ) : void
node MethodInvocationExpression
type ICallableType
Результат void
        void ProcessCallableTypeInvocation(MethodInvocationExpression node, ICallableType type)
        {
            NamedArgumentsNotAllowed(node);

            if (node.Arguments.Count == 1)
            {
                AssertTypeCompatibility(node.Arguments[0], type, GetExpressionType(node.Arguments[0]));
                node.ParentNode.Replace(
                    node,
                    CodeBuilder.CreateCast(
                        type,
                        node.Arguments[0]));
            }
            else
            {
                IConstructor ctor = GetCorrectConstructor(node, type, node.Arguments);
                if (null != ctor)
                {
                    BindConstructorInvocation(node, ctor);
                }
                else
                {
                    Error(node);
                }
            }
        }
ProcessMethodBodies