mirror of
https://github.com/archtechx/enums.git
synced 2025-12-12 22:34:04 +00:00
Comparable enum (#20)
* feat: comparable enum * test: comparable enum * ci: php-cs-fixer in repository scope * chore: add `Comparable` usage in README * ci: globally use `php-cs-fixer` * improve Comparable logic * test more PHP versions in CI * update ci job name * remove class name quoting in exceptions to match PHP behavior * migrate pest config * add comment to test --------- Co-authored-by: Samuel Štancl <samuel@archte.ch> Co-authored-by: Samuel Štancl <samuel.stancl@gmail.com>
This commit is contained in:
parent
fb521d2dcb
commit
f0ea4c36c8
9 changed files with 188 additions and 21 deletions
|
|
@ -1,6 +1,6 @@
|
|||
<?php
|
||||
|
||||
use ArchTech\Enums\{InvokableCases, Options, Names, Values, From, Metadata};
|
||||
use ArchTech\Enums\{Comparable, InvokableCases, Options, Names, Values, From, Metadata};
|
||||
use ArchTech\Enums\Meta\Meta;
|
||||
use ArchTech\Enums\Meta\MetaProperty;
|
||||
|
||||
|
|
@ -36,7 +36,7 @@ class Instructions extends MetaProperty
|
|||
#[Meta(Color::class, Desc::class)] // variadic syntax
|
||||
enum Status: int
|
||||
{
|
||||
use InvokableCases, Options, Names, Values, From, Metadata;
|
||||
use InvokableCases, Options, Names, Values, From, Metadata, Comparable;
|
||||
|
||||
#[Color('orange')] #[Desc('Incomplete task')]
|
||||
case PENDING = 0;
|
||||
|
|
@ -49,7 +49,7 @@ enum Status: int
|
|||
#[Meta([Color::class, Desc::class, Instructions::class])] // array
|
||||
enum Role
|
||||
{
|
||||
use InvokableCases, Options, Names, Values, From, Metadata;
|
||||
use InvokableCases, Options, Names, Values, From, Metadata, Comparable;
|
||||
|
||||
#[Color('indigo')]
|
||||
#[Desc('Administrator')]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue