WordPress\AiClient\Messages\DTO
Message::fromArray
{@inheritDoc}
Метод класса: Message{}
Хуков нет.
Возвращает
self. The specific message class based on the role.
Использование
$result = Message::fromArray( $array ): self;
- $array(массив) (обязательный)
- .
Список изменений
| С версии 0.1.0 | Введена. |
Код Message::fromArray() Message::fromArray WP 7.0.4
final public static function fromArray(array $array): self
{
static::validateFromArrayData($array, [self::KEY_ROLE, self::KEY_PARTS]);
$role = MessageRoleEnum::from($array[self::KEY_ROLE]);
$partsData = $array[self::KEY_PARTS];
$parts = array_map(function (array $partData) {
return \WordPress\AiClient\Messages\DTO\MessagePart::fromArray($partData);
}, $partsData);
// Determine which concrete class to instantiate based on role
if ($role->isUser()) {
return new \WordPress\AiClient\Messages\DTO\UserMessage($parts);
} elseif ($role->isModel()) {
return new \WordPress\AiClient\Messages\DTO\ModelMessage($parts);
} else {
// Only USER and MODEL roles are supported
throw new InvalidArgumentException('Invalid message role: ' . $role->value);
}
}