| @@ 98-110 (lines=13) @@ | ||
| 95 | * |
|
| 96 | * @return Enum[] |
|
| 97 | */ |
|
| 98 | final public static function values() |
|
| 99 | { |
|
| 100 | $class = get_called_class(); |
|
| 101 | ||
| 102 | if (!isset(self::$values[$class])) { |
|
| 103 | self::$values[$class] = []; |
|
| 104 | foreach (self::constants() as $constant => $value) { |
|
| 105 | self::$values[$class][$constant] = self::byValue($value); |
|
| 106 | } |
|
| 107 | } |
|
| 108 | ||
| 109 | return self::$values[$class]; |
|
| 110 | } |
|
| 111 | ||
| 112 | /** |
|
| 113 | * @param Enum $enum |
|
| @@ 146-158 (lines=13) @@ | ||
| 143 | * |
|
| 144 | * @return array |
|
| 145 | */ |
|
| 146 | final public static function choices() |
|
| 147 | { |
|
| 148 | $class = get_called_class(); |
|
| 149 | ||
| 150 | if (!isset(self::$choices[$class])) { |
|
| 151 | self::$choices[$class] = []; |
|
| 152 | foreach (self::constants() as $value) { |
|
| 153 | self::$choices[$class][$value] = (string) self::byValue($value); |
|
| 154 | } |
|
| 155 | } |
|
| 156 | ||
| 157 | return self::$choices[$class]; |
|
| 158 | } |
|
| 159 | ||
| 160 | /** |
|
| 161 | * Return readable value. |
|