1: <?php declare(strict_types = 1);
2:
3: namespace PHPStan\Node;
4:
5: use PhpParser\Node;
6: use PHPStan\Reflection\ClassReflection;
7:
8: /**
9: * @api
10: */
11: final class InTraitNode extends Node\Stmt implements VirtualNode
12: {
13:
14: public function __construct(private Node\Stmt\Trait_ $originalNode, private ClassReflection $traitReflection, private ClassReflection $implementingClassReflection)
15: {
16: parent::__construct($originalNode->getAttributes());
17: }
18:
19: public function getOriginalNode(): Node\Stmt\Trait_
20: {
21: return $this->originalNode;
22: }
23:
24: public function getTraitReflection(): ClassReflection
25: {
26: return $this->traitReflection;
27: }
28:
29: public function getImplementingClassReflection(): ClassReflection
30: {
31: return $this->implementingClassReflection;
32: }
33:
34: public function getType(): string
35: {
36: return 'PHPStan_Stmt_InTraitNode';
37: }
38:
39: /**
40: * @return string[]
41: */
42: public function getSubNodeNames(): array
43: {
44: return [];
45: }
46:
47: }
48: