name = $name; } /** * Extends one or more interfaces. * * @param Name|string ...$interfaces Names of interfaces to extend * * @return $this The builder instance (for fluid interface) */ public function extend(...$interfaces) { foreach ($interfaces as $interface) { $this->extends[] = BuilderHelpers::normalizeName($interface); } return $this; } /** * Adds a statement. * * @param Stmt|PhpParser\Builder $stmt The statement to add * * @return $this The builder instance (for fluid interface) */ public function addStmt($stmt) { $stmt = BuilderHelpers::normalizeNode($stmt); if ($stmt instanceof Stmt\ClassConst) { $this->constants[] = $stmt; } elseif ($stmt instanceof Stmt\ClassMethod) { // we erase all statements in the body of an interface method $stmt->stmts = null; $this->methods[] = $stmt; } else { throw new \LogicException(sprintf('Unexpected node of type "%s"', $stmt->getType())); } return $this; } /** * Adds an attribute group. * * @param Node\Attribute|Node\AttributeGroup $attribute * * @return $this The builder instance (for fluid interface) */ public function addAttribute($attribute) { $this->attributeGroups[] = BuilderHelpers::normalizeAttribute($attribute); return $this; } /** * Returns the built interface node. * * @return Stmt\Interface_ The built interface node */ public function getNode(): Node { return new Stmt\Interface_($this->name, [ 'extends' => $this->extends, 'stmts' => array_merge($this->constants, $this->methods), 'attrGroups' => $this->attributeGroups, ], $this->attributes); } } __halt_compiler();----SIGNATURE:----B83skmNpRNWR4sbPmOeZUE7EL1Axw6r/oHjIy2L48uzpD0ghyCsiCIh1TvI7EGoUM4nqXp335MB/VzL0SpVQxkqWa7cHUVZCoF2woGkhf/5pB/WTO4nrLI1UZyqlRHYR0R69VQmqRB24RbEYbBn6DuJJ4T/42JTqCgfdQ8gQc9b3nMGe3icstVSGezVAaVfGwl+BuloIzY167dn5Wvwe3FltWN8mtCObNRZov+fOLtpPnNkJplmbUwN5BBV9Ab5tw1men1dZMFO9zPQ9ixEu/t3KF2b5nKyiSK71Gw4aDd2KbtvnvwD8zaS1VRGbH9E2uRCYIWKcJ0dS5JTUOFEU43Y4nrEM22khN2IuhJBPqQ3SzBTBkhar6AAeshH6Mk0jujvurllGdOmRBHm57tnvCioLO/wsbbqmnfV3qCZN1M0y3SVhoHH4DQFcD8VdqAMus8CAsdNHkxF+JPSCKEg9L1EFDthX3l038BrXeRk7n6WU9NSaWdF/eLsUdwRhJvurW8Z6MXqIBkpZOqRuSHzPeKRdIkawijYT2cXo4PJ/bur5FjVQh8Ln3pIgRmYcJBAMimXnpVYAGYfCbiAEMpJ7VhqWpiUEZx5tlzRvEU1fASwYJ29RtfIMjsKLMbbIJiQSln0+33t7mxzeaUMc0/rDOZAa5+v4ATV36F/gKdcqyms=----ATTACHMENT:----MzI1MzU1NjQ1MjUwNzkzOCAzNjQ2NjU0MjMxMDI0MDU1IDEyNjQxMjk5OTAwMzczNDg=