public object Clone()
        {
            MethodReturnMethod mrm = new MethodReturnMethod(_ownerAction);

            mrm.IsAbort = this.IsAbort;
            return(mrm);
        }
        public IMethodPointer CreateMethodPointer(IActionContext action)
        {
            MethodReturnMethod sp = (MethodReturnMethod)this.Clone();

            sp._ownerAction = (ActionClass)action;
            return(sp);
        }
        public bool IsSameObjectRef(IObjectIdentity objectIdentity)
        {
            MethodReturnMethod mrm = objectIdentity as MethodReturnMethod;

            if (mrm != null)
            {
                return(true);
            }
            return(false);
        }
        public bool IsSameMethod(IMethod method)
        {
            MethodReturnMethod mrm = method as MethodReturnMethod;

            if (mrm != null)
            {
                return(true);
            }
            return(false);
        }
        public bool IsSameMethod(IMethodPointer pointer)
        {
            MethodReturnMethod mrm = pointer as MethodReturnMethod;

            if (mrm != null)
            {
                if (_ownerAction.ScopeMethod != null && mrm._ownerAction.ScopeMethod != null)
                {
                    return(_ownerAction.ScopeMethod.IsSameMethod(mrm._ownerAction.ScopeMethod));
                }
            }
            return(false);
        }