traits-no-cases-method.phpt 443 B

12345678910111213141516171819202122232425262728293031323334
  1. --TEST--
  2. Using cases method from traits in enums has no effect
  3. --FILE--
  4. <?php
  5. trait Rectangle {
  6. public static function cases(): array {
  7. return [];
  8. }
  9. }
  10. enum Suit {
  11. use Rectangle;
  12. case Hearts;
  13. case Diamonds;
  14. case Clubs;
  15. case Spades;
  16. }
  17. var_dump(Suit::cases());
  18. ?>
  19. --EXPECT--
  20. array(4) {
  21. [0]=>
  22. enum(Suit::Hearts)
  23. [1]=>
  24. enum(Suit::Diamonds)
  25. [2]=>
  26. enum(Suit::Clubs)
  27. [3]=>
  28. enum(Suit::Spades)
  29. }