Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
88.89% covered (warning)
88.89%
8 / 9
75.00% covered (warning)
75.00%
3 / 4
CRAP
0.00% covered (danger)
0.00%
0 / 1
PhrasePrefixNode
88.89% covered (warning)
88.89%
8 / 9
75.00% covered (warning)
75.00%
3 / 4
4.02
0.00% covered (danger)
0.00%
0 / 1
 __construct
100.00% covered (success)
100.00%
2 / 2
100.00% covered (success)
100.00%
1 / 1
1
 toArray
100.00% covered (success)
100.00%
5 / 5
100.00% covered (success)
100.00%
1 / 1
1
 getPhrase
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 accept
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3namespace CirrusSearch\Parser\AST;
4
5use CirrusSearch\Parser\AST\Visitor\Visitor;
6
7/**
8 * A phrase prefix.
9 */
10class PhrasePrefixNode extends ParsedNode {
11
12    /**
13     * @var string
14     */
15    private $phrase;
16
17    /**
18     * @param int $startOffset
19     * @param int $endOffset
20     * @param string $phrase
21     */
22    public function __construct( $startOffset, $endOffset, $phrase ) {
23        parent::__construct( $startOffset, $endOffset );
24        $this->phrase = $phrase;
25    }
26
27    /**
28     * @return array
29     */
30    public function toArray() {
31        return [
32            "phrase_prefix" => array_merge( parent::baseParams(), [
33                'phrase' => $this->phrase
34            ] )
35        ];
36    }
37
38    /**
39     * @return string
40     */
41    public function getPhrase() {
42        return $this->phrase;
43    }
44
45    /**
46     * @param Visitor $visitor
47     */
48    public function accept( Visitor $visitor ) {
49        $visitor->visitPhrasePrefixNode( $this );
50    }
51}