StructParserVisitor   A
last analyzed

Complexity

Total Complexity 13

Size/Duplication

Total Lines 37
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 13
c 0
b 0
f 0
lcom 0
cbo 0
dl 0
loc 37
ccs 5
cts 5
cp 1
rs 10

13 Methods

Rating   Name   Duplication   Size   Complexity  
A visitStruct() 0 1 1
A visitClass() 0 1 1
A visitInterface() 0 1 1
A visitTrait() 0 1 1
A visitTraitUse() 0 1 1
A visitConstants() 0 1 1
A visitConstant() 0 1 1
A visitProperty() 0 1 1
A visitNamespace() 0 1 1
A visitUseStatement() 0 1 1
A visitMethod() 0 1 1
A getStruct() 0 3 1
A __construct() 0 3 1
1
<?php
2
declare(strict_types=1);
3
4
namespace gossi\codegen\parser\visitor;
5
6
use gossi\codegen\model\AbstractPhpStruct;
7
use PhpParser\Comment\Doc;
8
use PhpParser\Node\Const_;
9
use PhpParser\Node\Stmt\Class_;
10
use PhpParser\Node\Stmt\ClassConst;
11
use PhpParser\Node\Stmt\ClassLike;
12
use PhpParser\Node\Stmt\ClassMethod;
13
use PhpParser\Node\Stmt\Interface_;
14
use PhpParser\Node\Stmt\Namespace_;
15
use PhpParser\Node\Stmt\Property;
16
use PhpParser\Node\Stmt\Trait_;
17
use PhpParser\Node\Stmt\TraitUse;
18
use PhpParser\Node\Stmt\UseUse;
19
20
class StructParserVisitor implements ParserVisitorInterface {
21
22
	protected $struct;
23
24
	/**
25
	 * @return AbstractPhpStruct
26
	 */
27 15
	protected function getStruct(): AbstractPhpStruct {
28 15
		return $this->struct;
29
	}
30
31 16
	public function __construct(AbstractPhpStruct $struct) {
32 16
		$this->struct = $struct;
33 16
	}
34
35
	public function visitStruct(ClassLike $node) {}
36
37
	public function visitClass(Class_ $node) {}
38
39
	public function visitInterface(Interface_ $node) {}
40
41
	public function visitTrait(Trait_ $node) {}
42
43
	public function visitTraitUse(TraitUse $node) {}
44
45
	public function visitConstants(ClassConst $node) {}
46
47
	public function visitConstant(Const_ $node, Doc $doc = null) {}
48
49
	public function visitProperty(Property $node) {}
50
51
	public function visitNamespace(Namespace_ $node) {}
52
53
	public function visitUseStatement(UseUse $node) {}
54
55
	public function visitMethod(ClassMethod $node) {}
56
}
57