Copied!

This node is used internally by the format-preserving pretty printer to print anonymous classes.

The normal anonymous class structure violates assumptions about the order of token offsets. Namely, the constructor arguments are part of the Expr\New_ node and follow the class node, even though they are actually interleaved with them. This special node type is used temporarily to restore a sane token offset order.

  • internal
CloneableInstantiable
Properties
public array $args
 
  • var (\Node\Arg|\Node\VariadicPlaceholder)[] Arguments
public array $attrGroups
 
  • var \Node\AttributeGroup[] PHP attribute groups
public ?PhpParser\Node\Name $extends
 
  • var null|\Node\Name Name of extended class
public int $flags
 
  • var int Modifiers
public array $implements
 
  • var \Node\Name[] Names of implemented interfaces
public array $stmts
 
  • var \Node\Stmt[] Statements
Methods
public __construct(array $attrGroups, int $flags, array $args, ?PhpParser\Node\Name $extends, array $implements, array $stmts, array $attributes)
 
  • param \Node\AttributeGroup[] $attrGroups PHP attribute groups
  • param (\Node\Arg|\Node\VariadicPlaceholder)[] $args Arguments
  • param \Node\Name|null $extends Name of extended class
  • param \Node\Name[] $implements Names of implemented interfaces
  • param \Node\Stmt[] $stmts Statements
  • param array<string,mixed> $attributes Attributes
public static fromNewNode(PhpParser\Node\Expr\New_ $newNode) : self
public PhpParser\NodeAbstract::getAttribute(string $key, $default = NULL)
public PhpParser\NodeAbstract::getAttributes() : array
public PhpParser\NodeAbstract::getComments() : array
 

Gets all comments directly preceding this node.

The comments are also available through the "comments" attribute.

  • return \Comment[]
public PhpParser\NodeAbstract::getDocComment() : ?PhpParser\Comment\Doc
 

Gets the doc comment of the node.

  • return null|\Comment\Doc Doc comment object or null
public PhpParser\NodeAbstract::getEndFilePos() : int
 

Gets the file offset of the last character that is part of this node.

Requires the 'endFilePos' attribute to be enabled in the lexer (DISABLED by default).

  • return int File end position (or -1 if not available)
public PhpParser\NodeAbstract::getEndLine() : int
 

Gets the line the node ended in.

Requires the 'endLine' attribute to be enabled in the lexer (enabled by default).

  • return int End line (or -1 if not available)
  • phpstan-return -1|positive-int
public PhpParser\NodeAbstract::getEndTokenPos() : int
 

Gets the token offset of the last token that is part of this node.

The offset is an index into the array returned by Lexer::getTokens().

Requires the 'endTokenPos' attribute to be enabled in the lexer (DISABLED by default).

  • return int Token end position (or -1 if not available)
public PhpParser\NodeAbstract::getLine() : int
 

Gets line the node started in (alias of getStartLine).

  • return int Start line (or -1 if not available)
  • phpstan-return -1|positive-int
public PhpParser\NodeAbstract::getStartFilePos() : int
 

Gets the file offset of the first character that is part of this node.

Requires the 'startFilePos' attribute to be enabled in the lexer (DISABLED by default).

  • return int File start position (or -1 if not available)
public PhpParser\NodeAbstract::getStartLine() : int
 

Gets line the node started in.

Requires the 'startLine' attribute to be enabled in the lexer (enabled by default).

  • return int Start line (or -1 if not available)
  • phpstan-return -1|positive-int
public PhpParser\NodeAbstract::getStartTokenPos() : int
 

Gets the token offset of the first token that is part of this node.

The offset is an index into the array returned by Lexer::getTokens().

Requires the 'startTokenPos' attribute to be enabled in the lexer (DISABLED by default).

  • return int Token start position (or -1 if not available)
public getSubNodeNames() : array
public getType() : string
public PhpParser\NodeAbstract::hasAttribute(string $key) : bool
public PhpParser\NodeAbstract::jsonSerialize() : array
 
  • return array<string,mixed>
public PhpParser\NodeAbstract::setAttribute(string $key, $value) : void
public PhpParser\NodeAbstract::setAttributes(array $attributes) : void
public PhpParser\NodeAbstract::setDocComment(PhpParser\Comment\Doc $docComment) : void
 

Sets the doc comment of the node.

This will either replace an existing doc comment or add it to the comments array.

  • param \Comment\Doc $docComment Doc comment to set
Properties
protected array PhpParser\NodeAbstract::$attributes
 
  • var array<string,mixed> Attributes
Methods
public static fromNewNode(PhpParser\Node\Expr\New_ $newNode) : self
© 2024 Bruce Wells
Search Namespaces \ Classes
Configuration