Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
6 / 6
100.00% covered (success)
100.00%
1 / 1
CRAP
100.00% covered (success)
100.00%
1 / 1
DeclarationOrAtRuleList
100.00% covered (success)
100.00%
6 / 6
100.00% covered (success)
100.00%
1 / 1
3
100.00% covered (success)
100.00%
1 / 1
 getSeparator
100.00% covered (success)
100.00%
6 / 6
100.00% covered (success)
100.00%
1 / 1
3
1<?php
2declare( strict_types = 1 );
3
4/**
5 * @file
6 * @license https://opensource.org/licenses/Apache-2.0 Apache-2.0
7 */
8
9namespace Wikimedia\CSS\Objects;
10
11/**
12 * Represent a list of CSS declarations and at-rules
13 * @extends CSSObjectList<DeclarationOrAtRule>
14 */
15class DeclarationOrAtRuleList extends CSSObjectList {
16    /**
17     * @var string
18     */
19    protected static $objectType = DeclarationOrAtRule::class;
20
21    /** @inheritDoc */
22    protected function getSeparator( CSSObject $left, ?CSSObject $right = null ) {
23        $ret = [];
24        if ( $left instanceof Declaration ) {
25            $ret[] = new Token( Token::T_SEMICOLON, [ 'significant' => (bool)$right ] );
26        }
27        if ( $right ) {
28            $ret[] = new Token( Token::T_WHITESPACE, [ 'significant' => false ] );
29        }
30        return $ret;
31    }
32}