W3cubDocs

/Symfony 3.0

Symfony\Component\Config\Definition\Builder\NodeBuilder

class NodeBuilder implements NodeParentInterface

This class provides a fluent interface for building a node.

Methods

__construct()

Constructor.

NodeBuilder setParent(ParentNodeDefinitionInterface $parent = null)

Set the parent node.

ArrayNodeDefinition arrayNode(string $name)

Creates a child array node.

ScalarNodeDefinition scalarNode(string $name)

Creates a child scalar node.

BooleanNodeDefinition booleanNode(string $name)

Creates a child Boolean node.

IntegerNodeDefinition integerNode(string $name)

Creates a child integer node.

FloatNodeDefinition floatNode(string $name)

Creates a child float node.

EnumNodeDefinition enumNode(string $name)

Creates a child EnumNode.

VariableNodeDefinition variableNode(string $name)

Creates a child variable node.

ParentNodeDefinitionInterface end()

Returns the parent node.

NodeDefinition node(string $name, string $type)

Creates a child node.

NodeBuilder append(NodeDefinition $node)

Appends a node definition.

NodeBuilder setNodeClass(string $type, string $class)

Adds or overrides a node Type.

Details

public __construct()

Constructor.

public NodeBuilder setParent(ParentNodeDefinitionInterface $parent = null)

Set the parent node.

Parameters

ParentNodeDefinitionInterface $parent The parent node

Return Value

NodeBuilder This node builder

public ArrayNodeDefinition arrayNode(string $name)

Creates a child array node.

Parameters

string $name The name of the node

Return Value

ArrayNodeDefinition The child node

public ScalarNodeDefinition scalarNode(string $name)

Creates a child scalar node.

Parameters

string $name the name of the node

Return Value

ScalarNodeDefinition The child node

public BooleanNodeDefinition booleanNode(string $name)

Creates a child Boolean node.

Parameters

string $name The name of the node

Return Value

BooleanNodeDefinition The child node

public IntegerNodeDefinition integerNode(string $name)

Creates a child integer node.

Parameters

string $name the name of the node

Return Value

IntegerNodeDefinition The child node

public FloatNodeDefinition floatNode(string $name)

Creates a child float node.

Parameters

string $name the name of the node

Return Value

FloatNodeDefinition The child node

public EnumNodeDefinition enumNode(string $name)

Creates a child EnumNode.

Parameters

string $name

Return Value

EnumNodeDefinition

public VariableNodeDefinition variableNode(string $name)

Creates a child variable node.

Parameters

string $name The name of the node

Return Value

VariableNodeDefinition The builder of the child node

public ParentNodeDefinitionInterface end()

Returns the parent node.

Return Value

ParentNodeDefinitionInterface The parent node

public NodeDefinition node(string $name, string $type)

Creates a child node.

Parameters

string $name The name of the node
string $type The type of the node

Return Value

NodeDefinition The child node

Exceptions

RuntimeException When the node type is not registered
RuntimeException When the node class is not found

public NodeBuilder append(NodeDefinition $node)

Appends a node definition.

Usage:

$node = new ArrayNodeDefinition('name')
    ->children()
        ->scalarNode('foo')->end()
        ->scalarNode('baz')->end()
        ->append($this->getBarNodeDefinition())
    ->end()
;

Parameters

NodeDefinition $node

Return Value

NodeBuilder This node builder

public NodeBuilder setNodeClass(string $type, string $class)

Adds or overrides a node Type.

Parameters

string $type The name of the type
string $class The fully qualified name the node definition class

Return Value

NodeBuilder This node builder

© 2004–2016 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/Config/Definition/Builder/NodeBuilder.html