Skip to content

Commit

Permalink
Merge pull request #2938 from briannesbitt/feature/use-static-values-…
Browse files Browse the repository at this point in the history
…for-enum

Use static values for enums until dropping PHP 8.1
  • Loading branch information
kylekatarnls committed Feb 6, 2024
2 parents 4d65ef2 + e5a98c2 commit cf30cfc
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 19 deletions.
25 changes: 13 additions & 12 deletions src/Carbon/Month.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,18 +17,19 @@

enum Month: int
{
case January = CarbonInterface::JANUARY;
case February = CarbonInterface::FEBRUARY;
case March = CarbonInterface::MARCH;
case April = CarbonInterface::APRIL;
case May = CarbonInterface::MAY;
case June = CarbonInterface::JUNE;
case July = CarbonInterface::JULY;
case August = CarbonInterface::AUGUST;
case September = CarbonInterface::SEPTEMBER;
case October = CarbonInterface::OCTOBER;
case November = CarbonInterface::NOVEMBER;
case December = CarbonInterface::DECEMBER;
// Using constants is only safe starting from PHP 8.2
case January = 1; // CarbonInterface::JANUARY
case February = 2; // CarbonInterface::FEBRUARY
case March = 3; // CarbonInterface::MARCH
case April = 4; // CarbonInterface::APRIL
case May = 5; // CarbonInterface::MAY
case June = 6; // CarbonInterface::JUNE
case July = 7; // CarbonInterface::JULY
case August = 8; // CarbonInterface::AUGUST
case September = 9; // CarbonInterface::SEPTEMBER
case October = 10; // CarbonInterface::OCTOBER
case November = 11; // CarbonInterface::NOVEMBER
case December = 12; // CarbonInterface::DECEMBER

public static function int(self|int|null $value): ?int
{
Expand Down
15 changes: 8 additions & 7 deletions src/Carbon/WeekDay.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,14 @@

enum WeekDay: int
{
case Sunday = CarbonInterface::SUNDAY;
case Monday = CarbonInterface::MONDAY;
case Tuesday = CarbonInterface::TUESDAY;
case Wednesday = CarbonInterface::WEDNESDAY;
case Thursday = CarbonInterface::THURSDAY;
case Friday = CarbonInterface::FRIDAY;
case Saturday = CarbonInterface::SATURDAY;
// Using constants is only safe starting from PHP 8.2
case Sunday = 0; // CarbonInterface::SUNDAY
case Monday = 1; // CarbonInterface::MONDAY
case Tuesday = 2; // CarbonInterface::TUESDAY
case Wednesday = 3; // CarbonInterface::WEDNESDAY
case Thursday = 4; // CarbonInterface::THURSDAY
case Friday = 5; // CarbonInterface::FRIDAY
case Saturday = 6; // CarbonInterface::SATURDAY

public static function int(self|int|null $value): ?int
{
Expand Down

0 comments on commit cf30cfc

Please sign in to comment.