1: <?php
2:
3: declare(strict_types=1);
4:
5: namespace LaravelUi5\OData\Edm\Contracts\Type;
6:
7: use LaravelUi5\OData\Edm\Contracts\AnnotatableInterface;
8: use LaravelUi5\OData\Edm\Contracts\AnnotationTargetInterface;
9: use LaravelUi5\OData\Edm\Contracts\NamedElementInterface;
10:
11: /**
12: * A single member of an EnumType.
13: *
14: * Members carry a name and an integer value. When the parent enum
15: * does not declare explicit values the spec mandates zero-based
16: * sequential assignment; the resolved value is always available here.
17: *
18: * @see OData CSDL XML v4.01 ยง10.3 (Enumeration Type Member)
19: */
20: interface EnumMemberInterface extends NamedElementInterface, AnnotatableInterface, AnnotationTargetInterface
21: {
22: /**
23: * The integer value of this member, resolved from the CSDL
24: * declaration or assigned implicitly by position.
25: */
26: public function getValue(): int;
27: }
28: