1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <?php
- /*
- * This file is part of the Symfony package.
- *
- * (c) Fabien Potencier <fabien@symfony.com>
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
- namespace Symfony\Component\Config\Definition\Builder;
- /**
- * This class builds merge conditions.
- *
- * @author Johannes M. Schmitt <schmittjoh@gmail.com>
- */
- class MergeBuilder
- {
- protected $node;
- public $allowFalse = false;
- public $allowOverwrite = true;
- public function __construct(NodeDefinition $node)
- {
- $this->node = $node;
- }
- /**
- * Sets whether the node can be unset.
- *
- * @param bool $allow
- *
- * @return $this
- */
- public function allowUnset($allow = true)
- {
- $this->allowFalse = $allow;
- return $this;
- }
- /**
- * Sets whether the node can be overwritten.
- *
- * @param bool $deny Whether the overwriting is forbidden or not
- *
- * @return $this
- */
- public function denyOverwrite($deny = true)
- {
- $this->allowOverwrite = !$deny;
- return $this;
- }
- /**
- * Returns the related node.
- *
- * @return NodeDefinition|ArrayNodeDefinition|VariableNodeDefinition
- */
- public function end()
- {
- return $this->node;
- }
- }
|