Completed
Push — master ( a943ea...15df77 )
by Igor
01:36
created

InterfaceGenerator   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 26
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 1

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 3
lcom 1
cbo 1
dl 0
loc 26
ccs 6
cts 6
cp 1
rs 10
c 0
b 0
f 0

3 Methods

Rating   Name   Duplication   Size   Complexity  
A scope() 0 4 1
A generateScope() 0 4 1
A generateProperties() 0 4 1
1
<?php
2
3
namespace Leaditin\Code\Generator;
4
5
/**
6
 * @package Leaditin\Code
7
 * @author Igor Vuckovic <[email protected]>
8
 * @license MIT
9
 */
10
class InterfaceGenerator extends ClassAwareGenerator
11
{
12
    /**
13
     * @inheritDoc
14
     */
15 2
    protected function scope(): string
16
    {
17 2
        return 'interface';
18
    }
19
20
    /**
21
     * @inheritDoc
22
     */
23 4
    protected function generateScope(): string
24
    {
25 4
        return $this->generateLine('interface ' . $this->name . $this->generateInheritance()). $this->generateLine('{');
26
    }
27
28
    /**
29
     * @inheritDoc
30
     */
31 4
    protected function generateProperties(): string
32
    {
33 4
        return '';
34
    }
35
}
36