self::EQUAL, '!=' => self::NOT_EQUAL, '>' => self::GREATER, '>=' => self::GREATER_EQUAL, '<' => self::LESS, '<=' => self::LESS_EQUAL, default => throw new InvalidArgumentException("Invalid operator: $operator"), }; } public function toString(): string { return match ($this) { self::EQUAL => '=', self::NOT_EQUAL => '!=', self::GREATER => '>', self::GREATER_EQUAL => '>=', self::LESS => '<', self::LESS_EQUAL => '<=', }; } }