Passed
Push — postgis-operators ( 7356f8...e040f1 )
by Martin
29:11 queued 14:16
created

Tsmatch   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 7
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
eloc 4
dl 0
loc 7
ccs 4
cts 4
cp 1
rs 10
c 0
b 0
f 0
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A customizeFunction() 0 5 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace MartinGeorgiev\Doctrine\ORM\Query\AST\Functions;
6
7
/**
8
 * Implementation of PostgreSQL text search matching (using @@).
9
 *
10
 * @see https://www.postgresql.org/docs/9.4/static/textsearch-controls.html
11
 * @since 0.1
12
 *
13
 * @author Martin Georgiev <[email protected]>
14
 *
15
 * @example Using it in DQL with boolean comparison: "WHERE TSMATCH(TO_TSVECTOR(e.text), TO_TSQUERY(:query)) = TRUE"
16
 * Returns boolean, must be used with "= TRUE" or "= FALSE" in DQL.
17
 */
18
class Tsmatch extends BaseFunction
19
{
20 1
    protected function customizeFunction(): void
21
    {
22 1
        $this->setFunctionPrototype('(%s @@ %s)');
23 1
        $this->addNodeMapping('StringPrimary');
24 1
        $this->addNodeMapping('StringPrimary');
25
    }
26
}
27