Boo.Lang.Compiler.Steps.EmitAssembly.EmitIndirection C# (CSharp) Метод

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

private EmitIndirection ( UnaryExpression node ) : void
node Boo.Lang.Compiler.Ast.UnaryExpression
Результат void
        void EmitIndirection(UnaryExpression node)
        {
            node.Operand.Accept(this);

            if (node.Operand.NodeType != NodeType.ReferenceExpression
                && node.ParentNode.NodeType != NodeType.MemberReferenceExpression)
            {
                //pointer arithmetic, need to load the address
                IType et = PeekTypeOnStack().ElementType;
                OpCode code = GetLoadRefParamCode(et);
                if (code == OpCodes.Ldobj)
                    _il.Emit(code, GetSystemType(et));
                else
                    _il.Emit(code);

                PopType();
                PushType(et);
            }
        }
EmitAssembly