|
@@ -101,6 +101,29 @@ class NodeBuilder
|
|
return $this->children[$name] = $node;
|
|
return $this->children[$name] = $node;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * Add a NodeBuilder instance directly.
|
|
|
|
+ *
|
|
|
|
+ * This helps achieve a fluid interface when a method on your Configuration
|
|
|
|
+ * class returns a pre-build NodeBuilder instance on your behalf:
|
|
|
|
+ *
|
|
|
|
+ * $root = new NodeBuilder();
|
|
|
|
+ * ->node('foo', 'scalar')
|
|
|
|
+ * ->addNodeBuilder($this->getBarNodeBuilder())
|
|
|
|
+ * ->node('baz', 'scalar')
|
|
|
|
+ * ;
|
|
|
|
+ *
|
|
|
|
+ * @return Symfony\Component\DependencyInjection\Configuration\Builder\NodeBuilder This builder node
|
|
|
|
+ */
|
|
|
|
+ public function addNodeBuilder(NodeBuilder $node)
|
|
|
|
+ {
|
|
|
|
+ $node->parent = $this;
|
|
|
|
+
|
|
|
|
+ $this->children[$node->name] = $node;
|
|
|
|
+
|
|
|
|
+ return $this;
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* Creates a child array node
|
|
* Creates a child array node
|
|
*
|
|
*
|