Ejemplo n.º 1
0
        protected override void DoEmit(EmitContext ec)
        {
            if (statement != null) {
                statement.EmitStatement (ec);
                if (unwind_protect)
                    ec.Emit (OpCodes.Leave, ec.CreateReturnLabel ());
                else {
                    ec.Emit (OpCodes.Ret);
                }
                return;
            }

            base.DoEmit (ec);
        }
Ejemplo n.º 2
0
        public override void Emit(EmitContext ec)
        {
            if (statement != null)
            {
                statement.EmitStatement(ec);
                if (unwind_protect)
                {
                    ec.Emit(OpCodes.Leave, ec.CreateReturnLabel());
                }
                else
                {
                    ec.Emit(OpCodes.Ret);
                }
                return;
            }

            base.Emit(ec);
        }