123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- <?php declare(strict_types=1);
- namespace PhpParser\Builder;
- use PhpParser;
- use PhpParser\BuilderHelpers;
- use PhpParser\Node;
- use PhpParser\Node\Stmt;
- class Namespace_ extends Declaration {
- private ?Node\Name $name;
- /** @var Stmt[] */
- private array $stmts = [];
- /**
- * Creates a namespace builder.
- *
- * @param Node\Name|string|null $name Name of the namespace
- */
- public function __construct($name) {
- $this->name = null !== $name ? BuilderHelpers::normalizeName($name) : null;
- }
- /**
- * Adds a statement.
- *
- * @param Node|PhpParser\Builder $stmt The statement to add
- *
- * @return $this The builder instance (for fluid interface)
- */
- public function addStmt($stmt) {
- $this->stmts[] = BuilderHelpers::normalizeStmt($stmt);
- return $this;
- }
- /**
- * Returns the built node.
- *
- * @return Stmt\Namespace_ The built node
- */
- public function getNode(): Node {
- return new Stmt\Namespace_($this->name, $this->stmts, $this->attributes);
- }
- }
|