public static function map($traversable, callable $fn) { self::invariant(is_array($traversable) || $traversable instanceof \Traversable, __METHOD__ . ' expects array or Traversable'); $map = []; foreach ($traversable as $key => $value) { $map[$key] = $fn($value, $key); } return $map; }
private function withModifiers($types) { return array_merge(Utils::map($types, function ($type) { return Type::listOf($type); }), Utils::map($types, function ($type) { return Type::nonNull($type); }), Utils::map($types, function ($type) { return Type::nonNull(Type::listOf($type)); })); }