System.Security.PermissionListSet.CheckDemand C# (CSharp) Method

CheckDemand() private method

private CheckDemand ( CodeAccessPermission demand, PermissionToken permToken, RuntimeMethodHandle rmh ) : bool
demand CodeAccessPermission
permToken PermissionToken
rmh RuntimeMethodHandle
return bool
        internal bool CheckDemand(CodeAccessPermission demand, PermissionToken permToken, RuntimeMethodHandle rmh)
        {
            bool bRet = SecurityRuntime.StackContinue;
            if (m_permSetTriples != null)
            {
                for (int i=0; (i < m_permSetTriples.Count && bRet != SecurityRuntime.StackHalt) ; i++)
                {

                    PermissionSetTriple psTriple = (PermissionSetTriple)m_permSetTriples[i];
                    bRet = psTriple.CheckDemand(demand, permToken, rmh);
                }
            }
            else if (m_firstPermSetTriple != null)
            {
                bRet = m_firstPermSetTriple.CheckDemand(demand, permToken, rmh);
            }

            return SecurityRuntime.StackHalt; //  CS demand check always terminates the stackwalk
        }