LeagueCsv   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Test Coverage

Coverage 100%

Importance

Changes 2
Bugs 0 Features 0
Metric Value
wmc 3
c 2
b 0
f 0
lcom 0
cbo 1
dl 0
loc 22
ccs 7
cts 7
cp 1
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A writer() 0 14 3
1
<?php
2
namespace Madewithlove\Export\Csv\Traits;
3
4
use League\Csv\Writer;
5
use Madewithlove\Export\Csv\Transformer;
6
use Madewithlove\Export\Csv\WithHeaders;
7
use SplTempFileObject;
8
9
trait LeagueCsv
10
{
11
    /**
12
     * @param \Madewithlove\Export\Csv\Transformer $transformer
13
     *
14
     * @return \League\Csv\Writer
15
     */
16 4
    private function writer(Transformer $transformer = null)
17
    {
18 4
        $writer = Writer::createFromFileObject(new SplTempFileObject());
19
20 4
        if ($transformer instanceof WithHeaders) {
21 1
            $writer->insertOne($transformer->getHeaders());
22
        }
23
24 4
        if ($transformer instanceof Transformer) {
25 1
            $writer->addFormatter([$transformer, 'transform']);
26
        }
27
28 4
        return $writer;
29
    }
30
}
31