1 | <?php |
||
18 | trait HasEnumValues |
||
19 | { |
||
20 | /** |
||
21 | * @var array|EnumValueDefinition[] |
||
22 | */ |
||
23 | protected $values = []; |
||
24 | |||
25 | /** |
||
26 | * @return iterable|EnumValueDefinition[] |
||
27 | */ |
||
28 | public function getValues(): iterable |
||
32 | |||
33 | /** |
||
34 | * @param string $name |
||
35 | * @return bool |
||
36 | */ |
||
37 | public function hasValue(string $name): bool |
||
41 | |||
42 | /** |
||
43 | * @param string $name |
||
44 | * @return null|EnumValueDefinition |
||
45 | */ |
||
46 | public function getValue(string $name): ?EnumValueDefinition |
||
50 | |||
51 | /** |
||
52 | * @param EnumValueDefinition ...$values |
||
53 | * @return ProvidesEnumValues|$this |
||
54 | */ |
||
55 | public function withValue(EnumValueDefinition ...$values): ProvidesEnumValues |
||
63 | |||
64 | /** |
||
65 | * @param string|EnumValueDefinition ...$values |
||
66 | * @return $this |
||
67 | */ |
||
68 | public function withoutValue(...$values) |
||
76 | } |
||
77 |