ArrayGenerator   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 3

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
c 1
b 0
f 0
lcom 0
cbo 3
dl 0
loc 28
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A generate() 0 10 2
A extractFieldToOutput() 0 5 1
1
<?php
2
3
namespace PhpHocon\Generator;
4
5
use PhpHocon\Token\Field;
6
7
class ArrayGenerator implements Generator
8
{
9
    /**
10
     * @param array $tokens
11
     * @return array
12
     */
13
    public function generate(array $tokens)
14
    {
15
        $output = [];
16
17
        if (count($tokens)) {
18
            $output = $this->extractFieldToOutput($tokens[0], $output);
19
        }
20
21
        return $output;
22
    }
23
24
    /**
25
     * @param Field $field
26
     * @param array $output
27
     * @return array
28
     */
29
    private function extractFieldToOutput(Field $field, array $output)
30
    {
31
        $output[$field->getKey()->getName()] = $field->getValue()->getContent();
32
        return $output;
33
    }
34
}
35