public function union($sequence)
{
if ($sequence instanceof Set) {
$result = new Set();
$result->array = $this->array + $sequence->array;
return $result;
}
args\expects(args\traversable, $sequence);
$result = $this->copy();
foreach ($sequence as $element) {
$result->array[static::getElementKey($element)] = $element;
}
return $result;
}