class EnumCast implements Cast, IterableItemCast

Methods

__construct(string|null $type = null)

Create a backed-enum cast.

mixed
cast(DataProperty $property, mixed $value, ConstructionState $state, CreationContext $context)

Cast a property value to its declared backed enum.

mixed
castIterableItem(DataProperty $property, mixed $value, ConstructionState $state, CreationContext $context)

Cast an iterable item to its declared backed enum.

BackedEnum|Uncastable
castValue(string|null $type, mixed $value, DataProperty $property)

Cast one value to a backed enum.

string|null
iterableEnumType(DataProperty $property)

Find the backed enum declared for iterable items.

Details

at line 20
__construct(string|null $type = null)

Create a backed-enum cast.

Parameters

string|null $type

at line 28
mixed cast(DataProperty $property, mixed $value, ConstructionState $state, CreationContext $context)

Cast a property value to its declared backed enum.

Parameters

DataProperty $property
mixed $value
ConstructionState $state
CreationContext $context

Return Value

mixed

at line 44
mixed castIterableItem(DataProperty $property, mixed $value, ConstructionState $state, CreationContext $context)

Cast an iterable item to its declared backed enum.

Parameters

DataProperty $property
mixed $value
ConstructionState $state
CreationContext $context

Return Value

mixed

at line 62
protected BackedEnum|Uncastable castValue(string|null $type, mixed $value, DataProperty $property)

Cast one value to a backed enum.

Parameters

string|null $type
mixed $value
DataProperty $property

Return Value

BackedEnum|Uncastable

at line 75
protected string|null iterableEnumType(DataProperty $property)

Find the backed enum declared for iterable items.

Parameters

DataProperty $property

Return Value

string|null