Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
40.00% covered (danger)
40.00%
2 / 5
66.67% covered (warning)
66.67%
2 / 3
CRAP
0.00% covered (danger)
0.00%
0 / 1
UniversalSelector
40.00% covered (danger)
40.00%
2 / 5
66.67% covered (warning)
66.67%
2 / 3
7.46
0.00% covered (danger)
0.00%
0 / 1
 __construct
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 specificity
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 toString
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
6
1<?php
2
3declare(strict_types=1);
4
5namespace Phpdftk\Css\Selector;
6
7/**
8 * Universal selector per Selectors 4 ยง6.2: `*`, `*|*`, `ns|*`, `|*`.
9 * Doesn't contribute to specificity.
10 */
11final readonly class UniversalSelector extends SimpleSelector
12{
13    public function __construct(public ?string $namespacePrefix = null) {}
14
15    public function specificity(): Specificity
16    {
17        return new Specificity();
18    }
19
20    public function toString(): string
21    {
22        if ($this->namespacePrefix === null) {
23            return '*';
24        }
25        return $this->namespacePrefix . '|*';
26    }
27}