MessageRole.php
- Pfad:
src/Domain/ValueObject/MessageRole.php - Namespace: Domain\ValueObject
- Zeilen: 51 | Größe: 948 Bytes
- Geändert: 2025-12-25 09:34:33 | Gescannt: 2025-12-31 10:22:15
Code Hygiene Score: 100
- Dependencies: 100 (25%)
- LOC: 100 (20%)
- Methods: 100 (20%)
- Secrets: 100 (15%)
- Classes: 100 (10%)
- Magic Numbers: 100 (10%)
Keine Issues gefunden.
Klassen 1
-
MessageRoleenum Zeile 9
Funktionen 4
-
label()public Zeile 18 -
isUser()public Zeile 30 -
isAssistant()public Zeile 38 -
isSystem()public Zeile 46
Verwendet von 3
- ChatMessage.php use
- ChatMessage.php constructor
- ChatMessageFactory.php use
Code
<?php
declare(strict_types=1);
namespace Domain\ValueObject;
// @responsibility: Chat-Message-Rolle (user/assistant/system)
enum MessageRole: string
{
case USER = 'user';
case ASSISTANT = 'assistant';
case SYSTEM = 'system';
/**
* Get human-readable label.
*/
public function label(): string
{
return match ($this) {
self::USER => 'Benutzer',
self::ASSISTANT => 'Assistent',
self::SYSTEM => 'System',
};
}
/**
* Check if this is a user message.
*/
public function isUser(): bool
{
return $this === self::USER;
}
/**
* Check if this is an assistant response.
*/
public function isAssistant(): bool
{
return $this === self::ASSISTANT;
}
/**
* Check if this is a system prompt.
*/
public function isSystem(): bool
{
return $this === self::SYSTEM;
}
}