Given the following code
<?hh
$a = Vector {"qux"};
$b = Vector {"foo","bar"};
$a = array_merge($a, $b);
The following error is raised:
Warning: Invalid operand type was used: array_merge expects array(s)
Is there any workaround for array_merge
for vectors and maps, without making a foreach by hand, of the vector?
Answering to my self.
In fact array_merge
is not listed under the list of functions with support for hack Collections.
The best way to merge Vectors is the function addAll.
<?hh
$a = Vector {"qux"};
$b = Vector {"foo","bar"};
$a->addAll($b);
var_dump($a);
In the case of Map, it's a bit more complicated and a combination of foreach and addAll is required to set the Pair <Tk,Tv>