LinkableTrait::getLinkGenerator()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 1

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 2
c 1
b 0
f 0
nc 1
nop 1
dl 0
loc 4
ccs 3
cts 3
cp 1
crap 1
rs 10
1
<?php
2
3
namespace Oddvalue\LinkBuilder\Traits;
4
5
use Oddvalue\LinkBuilder\Contracts\LinkGenerator;
6
7
trait LinkableTrait
8
{
9
    /**
10
     * Get the fully qualified class name of the model's link generator
11
     *
12
     * @return string
13
     */
14
    abstract protected function getLinkGeneratorClass();
15
16
    /**
17
     * Get the model's link generator
18
     *
19
     * @param array $options
20
     * @return LinkGenerator
21
     */
22 24
    public function getLinkGenerator(array $options = []) : LinkGenerator
23
    {
24 24
        $generatorClass = $this->getLinkGeneratorClass();
25 24
        return new $generatorClass($this, $options);
26
    }
27
}
28