DataFilterAbstract   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 38
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Importance

Changes 0
Metric Value
wmc 1
lcom 0
cbo 1
dl 0
loc 38
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 7 1
handlers() 0 1 ?
1
<?php
2
3
namespace yiicod\datafilter;
4
5
use yii\base\BaseObject;
6
7
/**
8
 * Class DataFilterAbstract
9
 * Base data filter class
10
 *
11
 * @author Alexey Orlov
12
 *
13
 * @package yiicod\datafilter
14
 */
15
abstract class DataFilterAbstract extends BaseObject
16
{
17
    /**
18
     * Filtered value
19
     *
20
     * @var mixed
21
     */
22
    public $value;
23
24
    /**
25
     * Filter additional params
26
     *
27
     * @var array
28
     */
29
    public $params = [];
30
31
    /**
32
     * DataFilter constructor.
33
     *
34
     * @param mixed $value
35
     * @param array $params
36
     * @param array $config
37
     */
38
    public function __construct($value, array $params = [], array $config = [])
39
    {
40
        parent::__construct($config);
41
42
        $this->value = $value;
43
        $this->params = $params;
44
    }
45
46
    /**
47
     * Filter handlers
48
     *
49
     * @return array
50
     */
51
    abstract public static function handlers(): array;
52
}
53