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

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

private BindNullableInitializer ( Node node, Expression rhs, IType type ) : void
node Node
rhs Boo.Lang.Compiler.Ast.Expression
type IType
Результат void
        void BindNullableInitializer(Node node, Expression rhs, IType type)
        {
            var instantiation = CreateNullableInstantiation(rhs, type);
            node.Replace(rhs, instantiation);
            Visit(instantiation);

            var coalescing = BuildNullableCoalescingConditional(rhs);
            if (null != coalescing) //rhs contains at least one nullable
            {
                var cond = new ConditionalExpression
                           	{
                           		Condition = coalescing,
                           		TrueValue = instantiation,
                           		FalseValue = CreateNullableInstantiation(type)
                           	};
                node.Replace(instantiation, cond);
                Visit(cond);
            }
        }
ProcessMethodBodies