1<?php declare(strict_types=1);
2
3namespace PhpParser\Node\Expr;
4
5use PhpParser\Node\Expr;
6use PhpParser\Node\Name;
7
8class Instanceof_ extends Expr
9{
10    /** @var Expr Expression */
11    public $expr;
12    /** @var Name|Expr Class name */
13    public $class;
14
15    /**
16     * Constructs an instanceof check node.
17     *
18     * @param Expr      $expr       Expression
19     * @param Name|Expr $class      Class name
20     * @param array     $attributes Additional attributes
21     */
22    public function __construct(Expr $expr, $class, array $attributes = []) {
23        $this->attributes = $attributes;
24        $this->expr = $expr;
25        $this->class = $class;
26    }
27
28    public function getSubNodeNames() : array {
29        return ['expr', 'class'];
30    }
31
32    public function getType() : string {
33        return 'Expr_Instanceof';
34    }
35}
36