'User', self::MODERATOR => 'Moderator', self::ADMIN => 'Admin', self::SUPERUSER => 'Superuser', }; } public function canModerate(): bool { return match($this) { self::MODERATOR, self::ADMIN, self::SUPERUSER => true, default => false, }; } public function canAdmin(): bool { return match($this) { self::ADMIN, self::SUPERUSER => true, default => false, }; } }