ÿØÿà JFIF ÿá Exif MM * ÿÛ C
Server IP : 199.250.214.225 / Your IP : 3.129.21.30 Web Server : Apache System : Linux vps64074.inmotionhosting.com 3.10.0-1160.105.1.vz7.214.3 #1 SMP Tue Jan 9 19:45:01 MSK 2024 x86_64 User : nicngo5 ( 1001) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /home/nicngo5/hrupgrade/vendor/nikic/php-parser/lib/PhpParser/Internal/ |
Upload File : |
<?php declare(strict_types=1); namespace PhpParser\Internal; use PhpParser\Node; use PhpParser\Node\Expr; /** * 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 */ class PrintableNewAnonClassNode extends Expr { /** @var Node\AttributeGroup[] PHP attribute groups */ public $attrGroups; /** @var Node\Arg[] Arguments */ public $args; /** @var null|Node\Name Name of extended class */ public $extends; /** @var Node\Name[] Names of implemented interfaces */ public $implements; /** @var Node\Stmt[] Statements */ public $stmts; public function __construct( array $attrGroups, array $args, Node\Name $extends = null, array $implements, array $stmts, array $attributes ) { parent::__construct($attributes); $this->attrGroups = $attrGroups; $this->args = $args; $this->extends = $extends; $this->implements = $implements; $this->stmts = $stmts; } public static function fromNewNode(Expr\New_ $newNode) { $class = $newNode->class; assert($class instanceof Node\Stmt\Class_); // We don't assert that $class->name is null here, to allow consumers to assign unique names // to anonymous classes for their own purposes. We simplify ignore the name here. return new self( $class->attrGroups, $newNode->args, $class->extends, $class->implements, $class->stmts, $newNode->getAttributes() ); } public function getType() : string { return 'Expr_PrintableNewAnonClass'; } public function getSubNodeNames() : array { return ['attrGroups', 'args', 'extends', 'implements', 'stmts']; } }