* * 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; /** * An interface that must be implemented by nodes which can have children. * * @author Victor Berchet */ interface ParentNodeDefinitionInterface { /** * Returns a builder to add children nodes. * * @return NodeBuilder */ public function children(); /** * Appends a node definition. * * Usage: * * $node = $parentNode * ->children() * ->scalarNode('foo')->end() * ->scalarNode('baz')->end() * ->append($this->getBarNodeDefinition()) * ->end() * ; * * @return $this */ public function append(NodeDefinition $node); /** * Sets a custom children builder. */ public function setBuilder(NodeBuilder $builder); }