diff --git a/app/Enum/Enum.php b/app/Enum/Enum.php index 7e7667d..6bf900b 100644 --- a/app/Enum/Enum.php +++ b/app/Enum/Enum.php @@ -6,6 +6,13 @@ use ReflectionClass; class Enum { + /** + * Message list + * + * @var array> + */ + public static $messages = []; + /** * Caches reflections of enum subclasses. * @@ -47,4 +54,18 @@ class Enum { return array_values(static::getReflection()->getConstants()); } + + /** + * Returns a message from the enum subclass + * + * @return string + */ + public static function getMessage(int $messageIndex, string $defaultMessage = 'Unknown'): string + { + if(array_key_exists($messageIndex, self::$messages) === true) { + return self::$messages[$messageIndex]; + } + + return $defaultMessage; + } }