2 // Copyright 2004-present Facebook. All Rights Reserved.
6 function myflip
<Tk
, Tv
as arraykey
>(
7 KeyedTraversable
<Tk
, Tv
> $traversable,
10 foreach ($traversable as $key => $value) {
11 $result[$value] = $key;
15 function mymap
<Tk
as arraykey
, Tv1
, Tv2
>(
16 KeyedTraversable
<Tk
, Tv1
> $traversable,
17 (function(Tv1
): Tv2
) $value_func,
20 foreach ($traversable as $key => $value) {
21 $result[$key] = $value_func($value);
25 function test_it(vec
<C
> $p, (function(C
): C
) $f): void
{
26 $f = myflip(mymap($p, ($p) ==> $p));