Passed
Push — feature/117-numberhelperpatter... ( e42d7e )
by Sebastian
02:39 queued 13s
created

Punctuation   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 21
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 2
Bugs 0 Features 0
Metric Value
eloc 16
dl 0
loc 21
ccs 6
cts 6
cp 1
rs 10
c 2
b 0
f 0
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A getAllPunctuations() 0 10 1
1
<?php
2
3
namespace Seboettg\CiteProc\Rendering\Term;
4
5
use MyCLabs\Enum\Enum;
6
use Seboettg\CiteProc\CiteProc;
7
use Seboettg\Collection\ArrayList;
8
9
class Punctuation extends Enum
10
{
11
    public const OPEN_QUOTE = "open-quote";
12
    public const CLOSE_QUOTE = "close-quote";
13
    public const OPEN_INNER_QUOTE = "open-inner-quote";
14
    public const CLOSE_INNER_QUOTE = "close-inner-quote";
15
    public const PAGE_RANGE_DELIMITER = "page-range-delimiter";
16
    public const COLON = "colon";
17
    public const COMMA = "comma";
18
    public const SEMICOLON = "semicolon";
19
20 8
    public static function getAllPunctuations(): array
21
    {
22 8
        $values = new ArrayList();
23
        return $values
24 8
            ->setArray(Punctuation::toArray())
25
            ->map(function (string $punctuation) {
26 8
                return CiteProc::getContext()->getLocale()->filter("terms", $punctuation)->single;
27 8
            })
28
            ->collect(function ($items) {
29 8
                return array_values($items);
30 8
            });
31
    }
32
}
33