コード例 #1
0
 public void PopFrameGuideStackEx()
 {
     if (m_StepStack.Count == 0)
     {
         return;
     }
     if (m_StepExcuteState == eStepExcuteState.Excuted)
     {
         GuideStepData step = (GuideStepData)m_StepStack.Peek();
         m_StepCurrentId   = step.rollback_id;
         m_StepProgress    = m_StepCurrentId;
         m_StepExcuteState = eStepExcuteState.Excuting;
         while (m_StepStack.Count > 0)
         {
             m_StepStack.Pop();
         }
         RemoveFxs();
     }
 }
コード例 #2
0
        static StackObject *Peek_2(ILIntepreter __intp, StackObject *__esp, IList <object> __mStack, CLRMethod __method, bool isNewObj)
        {
            ILRuntime.Runtime.Enviorment.AppDomain __domain = __intp.AppDomain;
            StackObject *ptr_of_this_method;
            StackObject *__ret = ILIntepreter.Minus(__esp, 1);

            ptr_of_this_method = ILIntepreter.Minus(__esp, 1);
            EB.Collections.Stack <System.Object> instance_of_this_method = (EB.Collections.Stack <System.Object>) typeof(EB.Collections.Stack <System.Object>).CheckCLRTypes(StackObject.ToObject(ptr_of_this_method, __domain, __mStack));
            __intp.Free(ptr_of_this_method);

            var result_of_this_method = instance_of_this_method.Peek();

            object obj_result_of_this_method = result_of_this_method;

            if (obj_result_of_this_method is CrossBindingAdaptorType)
            {
                return(ILIntepreter.PushObject(__ret, __mStack, ((CrossBindingAdaptorType)obj_result_of_this_method).ILInstance, true));
            }
            return(ILIntepreter.PushObject(__ret, __mStack, result_of_this_method, true));
        }