Passed
Push — develop ( 0de06e...665f09 )
by Sebastian
02:06 queued 12s
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 9
    public static function getAllPunctuations(): array
21
    {
22 9
        $values = new ArrayList();
23
        return $values
24 9
            ->setArray(Punctuation::toArray())
25
            ->map(function (string $punctuation) {
26 9
                return CiteProc::getContext()->getLocale()->filter("terms", $punctuation)->single;
27 9
            })
28
            ->collect(function ($items) {
29 9
                return array_values($items);
30 9
            });
31
    }
32
}
33