22
33namespace Sabberworm \CSS \CSSList ;
44
5+ use Sabberworm \CSS \Property \Selector ;
56use Sabberworm \CSS \Rule \Rule ;
67use Sabberworm \CSS \RuleSet \DeclarationBlock ;
78use Sabberworm \CSS \RuleSet \RuleSet ;
89use Sabberworm \CSS \Value \CSSFunction ;
10+ use Sabberworm \CSS \Value \CSSString ;
11+ use Sabberworm \CSS \Value \Value ;
912use Sabberworm \CSS \Value \ValueList ;
1013
1114/**
12- * A CSSBlockList is a CSSList whose DeclarationBlocks are guaranteed to contain valid declaration blocks or at-rules.
13- * Most CSSLists conform to this category but some at-rules (such as @keyframes) do not.
15+ * A `CSSBlockList` is a `CSSList` whose `DeclarationBlock`s are guaranteed to contain valid declaration blocks or
16+ * at-rules.
17+ *
18+ * Most `CSSList`s conform to this category but some at-rules (such as `@keyframes`) do not.
1419 */
1520abstract class CSSBlockList extends CSSList
1621{
22+ /**
23+ * @param int $iLineNo
24+ */
1725 public function __construct ($ iLineNo = 0 )
1826 {
1927 parent ::__construct ($ iLineNo );
2028 }
2129
30+ /**
31+ * @param array<int, DeclarationBlock> $aResult
32+ *
33+ * @return void
34+ */
2235 protected function allDeclarationBlocks (array &$ aResult )
2336 {
2437 foreach ($ this ->aContents as $ mContent ) {
@@ -30,6 +43,11 @@ protected function allDeclarationBlocks(array &$aResult)
3043 }
3144 }
3245
46+ /**
47+ * @param array<int, RuleSet> $aResult
48+ *
49+ * @return void
50+ */
3351 protected function allRuleSets (array &$ aResult )
3452 {
3553 foreach ($ this ->aContents as $ mContent ) {
@@ -41,6 +59,14 @@ protected function allRuleSets(array &$aResult)
4159 }
4260 }
4361
62+ /**
63+ * @param CSSList|Rule|RuleSet|Value $oElement
64+ * @param array<int, Value|CSSString> $aResult
65+ * @param string|null $sSearchString
66+ * @param bool $bSearchInFunctionArguments
67+ *
68+ * @return void
69+ */
4470 protected function allValues ($ oElement , array &$ aResult , $ sSearchString = null , $ bSearchInFunctionArguments = false )
4571 {
4672 if ($ oElement instanceof CSSBlockList) {
@@ -60,13 +86,20 @@ protected function allValues($oElement, array &$aResult, $sSearchString = null,
6086 }
6187 }
6288 } else {
63- //Non-List Value or CSSString (CSS identifier)
89+ // Non-List Value or CSSString (CSS identifier)
6490 $ aResult [] = $ oElement ;
6591 }
6692 }
6793
94+ /**
95+ * @param array<int, Selector|string> $aResult
96+ * @param string|null $sSpecificitySearch
97+ *
98+ * @return void
99+ */
68100 protected function allSelectors (array &$ aResult , $ sSpecificitySearch = null )
69101 {
102+ /** @var array<int, DeclarationBlock> $aDeclarationBlocks */
70103 $ aDeclarationBlocks = [];
71104 $ this ->allDeclarationBlocks ($ aDeclarationBlocks );
72105 foreach ($ aDeclarationBlocks as $ oBlock ) {
0 commit comments