Nette\Security\Permission::getRuleType PHP Метод

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

Returns the rule type associated with the specified Resource, Role, and privilege.
private getRuleType ( $resource, $role, $privilege ) : mixed
Результат mixed NULL if a rule does not exist or assertion fails, otherwise returns ALLOW or DENY
    private function getRuleType($resource, $role, $privilege)
    {
        if (!($rules = $this->getRules($resource, $role))) {
            return NULL;
        }
        if ($privilege === self::ALL) {
            if (isset($rules['allPrivileges'])) {
                $rule = $rules['allPrivileges'];
            } else {
                return NULL;
            }
        } elseif (!isset($rules['byPrivilege'][$privilege])) {
            return NULL;
        } else {
            $rule = $rules['byPrivilege'][$privilege];
        }
        if ($rule['assert'] === NULL || Nette\Utils\Callback::invoke($rule['assert'], $this, $role, $resource, $privilege)) {
            return $rule['type'];
        } elseif ($resource !== self::ALL || $role !== self::ALL || $privilege !== self::ALL) {
            return NULL;
        } elseif (self::ALLOW === $rule['type']) {
            return self::DENY;
        } else {
            return self::ALLOW;
        }
    }