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

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

private EnsureMemberReferenceForExtension ( MethodInvocationExpression node ) : Boo.Lang.Compiler.Ast.MemberReferenceExpression
node Boo.Lang.Compiler.Ast.MethodInvocationExpression
Результат Boo.Lang.Compiler.Ast.MemberReferenceExpression
        private MemberReferenceExpression EnsureMemberReferenceForExtension(MethodInvocationExpression node)
        {
            Expression target = node.Target;
            GenericReferenceExpression gre = target as GenericReferenceExpression;
            if (null != gre)
                target = gre.Target;

            MemberReferenceExpression memberRef = target as MemberReferenceExpression;
            if (null != memberRef)
                return memberRef;

            node.Target = memberRef = CodeBuilder.MemberReferenceForEntity(
                CreateSelfReference(),
                GetEntity(node.Target));

            return memberRef;
        }
ProcessMethodBodies