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

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

private ProcessValueTypeInstantiation ( IType type, MethodInvocationExpression node ) : void
type IType
node MethodInvocationExpression
Результат void
        private void ProcessValueTypeInstantiation(IType type, MethodInvocationExpression node)
        {
            var target = CodeBuilder.CreateReference(DeclareTempLocal(type));

            Expression initializer = CodeBuilder.CreateDefaultInitializer(node.LexicalInfo, target, type);

            MethodInvocationExpression eval = CodeBuilder.CreateEvalInvocation(node.LexicalInfo);
            BindExpressionType(eval, type);
            eval.Arguments.Add(initializer);
            AddResolvedNamedArgumentsToEval(eval, node.NamedArguments, target.CloneNode());
            eval.Arguments.Add(target.CloneNode());
            node.ParentNode.Replace(node, eval);
        }
ProcessMethodBodies