/** * @param callable $fnValueMap($value, $key) -- function that returns the new value. * @param callable $fnKeyMap($key, $value) [optional] -- function that returns the new key * @return static */ public function map($fnValueMap, $fnKeyMap = null) { return static::make(IterationTraits::map($this, $fnValueMap, $fnKeyMap)); }