Code Duplication    Length = 13-13 lines in 2 locations

src/ReflectionEnum.php 2 locations

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