NodeDefinition
class NodeDefinition implements NodeParentInterface
This class provides a fluent interface for defining a node.
Methods
| __construct(string $name, NodeParentInterface $parent = null) | ||
| $this | setParent(NodeParentInterface $parent) Sets the parent node. | |
| $this | info(string $info) Sets info message. | |
| $this | example(string|array $example) Sets example configuration. | |
| $this | attribute(string $key, mixed $value) Sets an attribute on the node. | |
| NodeParentInterface|NodeBuilder|NodeDefinition|ArrayNodeDefinition|VariableNodeDefinition|null | end() Returns the parent node. | |
| NodeInterface | getNode(bool $forceRootNode = false) Creates the node. | |
| $this | defaultValue(mixed $value) Sets the default value. | |
| $this | isRequired() Sets the node as required. | |
| $this | setDeprecated(string $message = 'The child node "%node%" at path "%path%" is deprecated.') Sets the node as deprecated. | |
| $this | treatNullLike(mixed $value) Sets the equivalent value used when the node contains null. | |
| $this | treatTrueLike(mixed $value) Sets the equivalent value used when the node contains true. | |
| $this | treatFalseLike(mixed $value) Sets the equivalent value used when the node contains false. | |
| $this | defaultNull() Sets null as the default value. | |
| $this | defaultTrue() Sets true as the default value. | |
| $this | defaultFalse() Sets false as the default value. | |
| ExprBuilder | beforeNormalization() Sets an expression to run before the normalization. | |
| $this | cannotBeEmpty() Denies the node value being empty. | |
| ExprBuilder | validate() Sets an expression to run for the validation. | |
| $this | cannotBeOverwritten(bool $deny = true) Sets whether the node can be overwritten. | 
Details
__construct(string $name, NodeParentInterface $parent = null)
Parameters
| string | $name | The name of the node | 
| NodeParentInterface | $parent | The parent | 
$this setParent(NodeParentInterface $parent)
Sets the parent node.
Parameters
| NodeParentInterface | $parent | 
Return Value
| $this | 
$this info(string $info)
Sets info message.
Parameters
| string | $info | The info text | 
Return Value
| $this | 
$this example(string|array $example)
Sets example configuration.
Parameters
| string|array | $example | 
Return Value
| $this | 
$this attribute(string $key, mixed $value)
Sets an attribute on the node.
Parameters
| string | $key | |
| mixed | $value | 
Return Value
| $this | 
NodeParentInterface|NodeBuilder|NodeDefinition|ArrayNodeDefinition|VariableNodeDefinition|null end()
Returns the parent node.
Return Value
| NodeParentInterface|NodeBuilder|NodeDefinition|ArrayNodeDefinition|VariableNodeDefinition|null | The builder of the parent node | 
NodeInterface getNode(bool $forceRootNode = false)
Creates the node.
Parameters
| bool | $forceRootNode | Whether to force this node as the root node | 
Return Value
| NodeInterface | 
$this defaultValue(mixed $value)
Sets the default value.
Parameters
| mixed | $value | The default value | 
Return Value
| $this | 
$this isRequired()
Sets the node as required.
Return Value
| $this | 
$this setDeprecated(string $message = 'The child node "%node%" at path "%path%" is deprecated.')
Sets the node as deprecated.
You can use %node% and %path% placeholders in your message to display, respectively, the node name and its complete path.
Parameters
| string | $message | Deprecation message | 
Return Value
| $this | 
$this treatNullLike(mixed $value)
Sets the equivalent value used when the node contains null.
Parameters
| mixed | $value | 
Return Value
| $this | 
$this treatTrueLike(mixed $value)
Sets the equivalent value used when the node contains true.
Parameters
| mixed | $value | 
Return Value
| $this | 
$this treatFalseLike(mixed $value)
Sets the equivalent value used when the node contains false.
Parameters
| mixed | $value | 
Return Value
| $this | 
$this defaultNull()
Sets null as the default value.
Return Value
| $this | 
$this defaultTrue()
Sets true as the default value.
Return Value
| $this | 
$this defaultFalse()
Sets false as the default value.
Return Value
| $this | 
ExprBuilder beforeNormalization()
Sets an expression to run before the normalization.
Return Value
| ExprBuilder | 
$this cannotBeEmpty()
Denies the node value being empty.
Return Value
| $this | 
ExprBuilder validate()
Sets an expression to run for the validation.
The expression receives the value of the node and must return it. It can modify it. An exception should be thrown when the node is not valid.
Return Value
| ExprBuilder | 
$this cannotBeOverwritten(bool $deny = true)
Sets whether the node can be overwritten.
Parameters
| bool | $deny | Whether the overwriting is forbidden or not | 
Return Value
| $this | 
    © 2004–2017 Fabien Potencier
Licensed under the MIT License.
    http://api.symfony.com/4.0/Symfony/Component/Config/Definition/Builder/NodeDefinition.html