public static function named(string $name) : Permission
    {
        if (!isset(self::$permissionCache[$name])) {
            self::$permissionCache[$name] = new self($name);
        }

        return self::$permissionCache[$name];
    }
public static function named(string $name) : Permission
    {
        if (!isset(self::$permissionCache[$name])) {
            self::$permissionCache[$name] = new self($name);
        }

        return self::$permissionCache[$name];
    }
public static function named ( string $ name ) : Permission { if ( ! isset ( self :: $ permissionCache [ $ name ] ) ) { self :: $ permissionCache [ $ name ] = new self ( $ name ) ; } return self :: $ permissionCache [ $ name ] ; }
Constructs a permission with the supplied name.

@param string $name

@return Permission
Constructs a permission with the supplied name .