Completed
Push — master ( 3d0e76...43b3fb )
by Dominik
02:54
created

CallbackNode::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 5
rs 9.4285
cc 1
eloc 3
nc 1
nop 2
1
<?php
2
3
namespace Saxulum\ElasticSearchQueryBuilder\Node;
4
5
class CallbackNode extends AbstractNode
6
{
7
    /**
8
     * @var \Closure
9
     */
10
    protected $callback;
11
    
12
    public function __construct(\Closure $callback, $allowDefault = false)
13
    {
14
        $this->callback = $callback;
15
        $this->allowDefault = $allowDefault;
16
    }
17
18
    /**
19
     * @return \stdClass|array|string|float|integer|boolean|null
20
     */
21
    public function serialize()
22
    {
23
        $callback = $this->callback;
24
        
25
        return $callback($this);
26
    }
27
}
28