Nelmio\Alice\Definition\FlagBag::mergeWith PHP Метод

mergeWith() публичный Метод

The original key is kept.
public mergeWith ( self $flags, boolean $override = true ) : self
$flags self
$override boolean If some flags overlaps, the existing one are overridden if the value is true, and left untouched otherwise.
Результат self
    public function mergeWith(self $flags, bool $override = true) : self
    {
        if ($override) {
            $clone = clone $this;
            foreach ($flags as $stringFlag => $flag) {
                /** @var FlagInterface $flag */
                $clone->flags[$flag->__toString()] = clone $flag;
            }
        } else {
            $clone = clone $flags;
            $clone->key = $this->key;
            foreach ($this as $stringFlag => $flag) {
                /** @var FlagInterface $flag */
                $clone->flags[$flag->__toString()] = clone $flag;
            }
        }
        return $clone;
    }