Aller au contenu

Référence

phil/enums
TypeRôle
Traits\AsInvocableEnumTrait__invoke() et les appels statiques de cas, qui renvoient tous deux la primitive du cas.
Traits\AsNameableEnumTraitnames() : les noms des cas.
Traits\AsValuableEnumTraitvalues() : les valeurs des cas, ou les noms d'une enum pure.
Traits\AsSelectableEnumTraitoptions() : du nom à la valeur pour une enum adossée, les noms pour une enum pure.
Traits\AsStringSelectableEnumTraitstringOptions() : les options mises en forme par une fonction de rappel et jointes par un séparateur, des éléments HTML <option> par défaut, échappés et un par ligne.
Traits\AsComparableEnumTraitis(), isNot(), in(), notIn(), has(), doesntHave(), equalsOneOf(), notEqualsOneOf().
Traits\AsFromambleEnumTraitfrom() et tryFrom() par nom pour les enums pures, fromName() et tryFromName() pour toutes les enums.
Traits\AsMetadatableEnumTraitLes accesseurs de métadonnées, fromMeta() et tryFromMeta() ; un accesseur qu'aucune propriété méta activée ne nomme lève BadMethodCallException.
Traits\AsSelfAwareableEnumTraitisPure(), isBacked(), isBackedByInteger(), isBackedByString().
Traits\AsCollectableEnumTraitcollect(), count(), first(), last(), filter(), whereMeta(), inGroup(), sortBy() sur l'enum.
Traits\AsOrdinalEnumTraitordinal(), next(), previous(), compareTo(), isBefore(), isAfter(), isBetween() (Ordre, analyse et valeurs par défaut).
Traits\AsParsableEnumTraitparse() et tryParse() : par valeur, par nom ou par alias, en tenant compte ou non de la casse.
Traits\AsDefaultableEnumTraitdefault() et tryDefault() : le cas marqué #[DefaultCase].
Traits\AsStatefulEnumTraitcanTransitionTo(), nextStates(), isFinal(), initialStates(), transitions() : les passages que déclare #[TransitionsTo].
Traits\AsEnumerableEnumTraitTous les traits sauf AsStringSelectableEnumTrait.
Sort\SortDirectionasc ou desc, analysé avec souplesse ; son mot-clé SQL, sa comparaison, son inverse (Opérations).
Collection\CaseCollectionUne liste immuable de cas d'une même enum, avec les opérations (Opérations).
Collection\EnumSetUn ensemble immuable de cas d'une même enum, avec les opérations d'ensemble et les masques de bits (Ensembles et tables associatives).
Collection\EnumMapUne table associative immuable qui contient une valeur pour chaque cas d'une même enum (Ensembles et tables associatives).
Attribute\MetaLes propriétés méta que déclare une enum, ou un trait.
Attribute\Description, Attribute\Group, Attribute\LabelDes propriétés méta à valeur de chaîne, fournies avec la bibliothèque.
Attribute\AliasUne propriété méta répétable : une autre graphie qu'accepte parse().
Attribute\WeightUne propriété méta : la fréquence à laquelle random() tire le cas, 1 par défaut.
Attribute\DefaultCaseMarque le cas que renvoie default().
Attribute\TransitionsToLes cas vers lesquels un cas peut passer.
Attribute\BitFlagsDéclare une enum d'indicateurs binaires, vérifiée par PHPStan.
Attribute\RequiredMetaLes propriétés méta que chaque cas doit porter, vérifiées par PHPStan et par Reflection::missingRequiredMeta().
Meta\AbstractMetaPropertyLa base d'une propriété méta : sa valeur, transform(), defaultValue(), customMethodName(), method() et la méthode statique make().
Meta\ReflectionLit les propriétés méta d'une enum, et la valeur — ou chaque valeur, metaValueList() — de l'une d'elles sur un cas, une fois par enum et par cas ; la propriété méta que lit un accesseur, metaPropertyNamed() ; si un cas est obsolète, le cas par défaut, les métadonnées requises qui manquent aux cas, les transitions d'un cas, et parse() pour n'importe quelle enum.
Exceptions\UndefinedCaseErrorUn appel statique ne nomme aucun cas de l'enum.
Internal\CasesInterne : ce que les traits lisent des cas — noms, primitives, options — et la vérification que des cas appartiennent à une enum.
PHPStan\InvocableEnum\ReflectionExtension, PHPStan\MetadatableEnum\ReflectionExtensionLes extensions PHPStan (PHPStan).
PHPStan\VirtualMethodLa façon dont les deux extensions décrivent à PHPStan une méthode qu'un trait sert par __call() ou __callStatic().
PHPStan\RequiredMeta\RequiredMetaRuleLa règle PHPStan de #[RequiredMeta].
PHPStan\Declaration\EnumDeclarationRuleLa règle PHPStan de ce que les attributs d'une enum déclarent à tort.
PHPStan\Ordinal\StoredOrdinalRuleLa règle PHPStan d'un ordinal qui quitte le processus.