@@ -44,7 +44,7 @@ private function internalQuerySelectorAll(string $selector, $preferredLimit = nu
44
44
} else {
45
45
$ getChildren = function () use ($ context ) {
46
46
$ result = [];
47
- $ process = function (\DOMNode $ node ) use (&$ process , &$ result ) {
47
+ $ process = function (\DOMNode $ node ) use (&$ process , &$ result ): void {
48
48
foreach ($ node ->childNodes as $ child ) {
49
49
if ($ child instanceof \DOMElement) {
50
50
$ result [] = $ child ;
@@ -94,7 +94,7 @@ private function internalQuerySelectorAll(string $selector, $preferredLimit = nu
94
94
$ simpleSelectors = [];
95
95
96
96
// all
97
- $ simpleSelectors ['\* ' ] = function (string $ mode , array $ matches , \DOMNode $ context , callable $ add = null ) use ($ walkChildren ) {
97
+ $ simpleSelectors ['\* ' ] = function (string $ mode , array $ matches , \DOMNode $ context , ? callable $ add = null ) use ($ walkChildren ) {
98
98
if ($ mode === 'validate ' ) {
99
99
return true ;
100
100
} else {
@@ -107,7 +107,7 @@ private function internalQuerySelectorAll(string $selector, $preferredLimit = nu
107
107
};
108
108
109
109
// tagname
110
- $ simpleSelectors ['[a-zA-Z0-9\-]+ ' ] = function (string $ mode , array $ matches , \DOMNode $ context , callable $ add = null ) use ($ walkChildren ) {
110
+ $ simpleSelectors ['[a-zA-Z0-9\-]+ ' ] = function (string $ mode , array $ matches , \DOMNode $ context , ? callable $ add = null ) use ($ walkChildren ) {
111
111
$ tagNames = [];
112
112
foreach ($ matches as $ match ) {
113
113
$ tagNames [] = strtolower ($ match [0 ]);
@@ -123,7 +123,7 @@ private function internalQuerySelectorAll(string $selector, $preferredLimit = nu
123
123
};
124
124
125
125
// tagname[target] or [target] // Available values for targets: attr, attr="value", attr~="value", attr|="value", attr^="value", attr$="value", attr*="value"
126
- $ simpleSelectors ['(?:[a-zA-Z0-9\-]*)(?:\[.+?\]) ' ] = function (string $ mode , array $ matches , \DOMNode $ context , callable $ add = null ) use ($ walkChildren ) {
126
+ $ simpleSelectors ['(?:[a-zA-Z0-9\-]*)(?:\[.+?\]) ' ] = function (string $ mode , array $ matches , \DOMNode $ context , ? callable $ add = null ) use ($ walkChildren ) {
127
127
$ run = function ($ match ) use ($ mode , $ context , $ add , $ walkChildren ) {
128
128
$ attributeSelectors = explode ('][ ' , substr ($ match [2 ], 1 , -1 ));
129
129
foreach ($ attributeSelectors as $ i => $ attributeSelector ) {
@@ -229,7 +229,7 @@ private function internalQuerySelectorAll(string $selector, $preferredLimit = nu
229
229
};
230
230
231
231
// tagname#id or #id
232
- $ simpleSelectors ['(?:[a-zA-Z0-9\-]*)#(?:[a-zA-Z0-9\-\_]+?) ' ] = function (string $ mode , array $ matches , \DOMNode $ context , callable $ add = null ) use ($ getElementById ) {
232
+ $ simpleSelectors ['(?:[a-zA-Z0-9\-]*)#(?:[a-zA-Z0-9\-\_]+?) ' ] = function (string $ mode , array $ matches , \DOMNode $ context , ? callable $ add = null ) use ($ getElementById ) {
233
233
$ run = function ($ match ) use ($ mode , $ context , $ add , $ getElementById ) {
234
234
$ tagName = strlen ($ match [1 ]) > 0 ? strtolower ($ match [1 ]) : null ;
235
235
$ id = $ match [2 ];
@@ -258,7 +258,7 @@ private function internalQuerySelectorAll(string $selector, $preferredLimit = nu
258
258
};
259
259
260
260
// tagname.classname, .classname, tagname.classname.classname2, .classname.classname2
261
- $ simpleSelectors ['(?:[a-zA-Z0-9\-]*)\.(?:[a-zA-Z0-9\-\_\.]+?) ' ] = function (string $ mode , array $ matches , \DOMNode $ context , callable $ add = null ) use ($ walkChildren ) {
261
+ $ simpleSelectors ['(?:[a-zA-Z0-9\-]*)\.(?:[a-zA-Z0-9\-\_\.]+?) ' ] = function (string $ mode , array $ matches , \DOMNode $ context , ? callable $ add = null ) use ($ walkChildren ) {
262
262
$ rawData = []; // Array containing [tag, classnames]
263
263
$ tagNames = [];
264
264
foreach ($ matches as $ match ) {
@@ -350,7 +350,7 @@ private function internalQuerySelectorAll(string $selector, $preferredLimit = nu
350
350
}
351
351
if (!$ found ) {
352
352
$ result [] = $ element ;
353
- if ($ preferredLimit !== null && sizeof ($ result ) >= $ preferredLimit ) {
353
+ if ($ preferredLimit !== null && count ($ result ) >= $ preferredLimit ) {
354
354
return true ;
355
355
}
356
356
}
@@ -359,8 +359,8 @@ private function internalQuerySelectorAll(string $selector, $preferredLimit = nu
359
359
}
360
360
361
361
$ selectorsToCall = [];
362
- $ addSelectorToCall = function ($ type , $ selector , $ argument ) use (&$ selectorsToCall ) {
363
- $ previousIndex = sizeof ($ selectorsToCall ) - 1 ;
362
+ $ addSelectorToCall = function ($ type , $ selector , $ argument ) use (&$ selectorsToCall ): void {
363
+ $ previousIndex = count ($ selectorsToCall ) - 1 ;
364
364
// todo optimize complex too
365
365
if ($ type === 1 && isset ($ selectorsToCall [$ previousIndex ]) && $ selectorsToCall [$ previousIndex ][0 ] === $ type && $ selectorsToCall [$ previousIndex ][1 ] === $ selector ) {
366
366
$ selectorsToCall [$ previousIndex ][2 ][] = $ argument ;
@@ -421,7 +421,7 @@ private function internalQuerySelectorAll(string $selector, $preferredLimit = nu
421
421
};
422
422
423
423
// div p (space between) - all <p> elements inside <div> elements
424
- $ complexSelectors [' ' ] = function (array $ parts , \DOMNode $ context , callable $ add = null ) use (&$ getMatchingElements ) {
424
+ $ complexSelectors [' ' ] = function (array $ parts , \DOMNode $ context , ? callable $ add = null ) use (&$ getMatchingElements ): void {
425
425
$ elements = null ;
426
426
foreach ($ parts as $ part ) {
427
427
if ($ elements === null ) {
@@ -440,7 +440,7 @@ private function internalQuerySelectorAll(string $selector, $preferredLimit = nu
440
440
};
441
441
442
442
// div > p - all <p> elements where the parent is a <div> element
443
- $ complexSelectors ['> ' ] = function (array $ parts , \DOMNode $ context , callable $ add = null ) use (&$ getMatchingElements , &$ isMatchingElement ) {
443
+ $ complexSelectors ['> ' ] = function (array $ parts , \DOMNode $ context , ? callable $ add = null ) use (&$ getMatchingElements , &$ isMatchingElement ): void {
444
444
$ elements = null ;
445
445
foreach ($ parts as $ part ) {
446
446
if ($ elements === null ) {
@@ -463,7 +463,7 @@ private function internalQuerySelectorAll(string $selector, $preferredLimit = nu
463
463
};
464
464
465
465
// div + p - all <p> elements that are placed immediately after <div> elements
466
- $ complexSelectors ['+ ' ] = function (array $ parts , \DOMNode $ context , callable $ add = null ) use (&$ getMatchingElements , &$ isMatchingElement ) {
466
+ $ complexSelectors ['+ ' ] = function (array $ parts , \DOMNode $ context , ? callable $ add = null ) use (&$ getMatchingElements , &$ isMatchingElement ): void {
467
467
$ elements = null ;
468
468
foreach ($ parts as $ part ) {
469
469
if ($ elements === null ) {
@@ -484,7 +484,7 @@ private function internalQuerySelectorAll(string $selector, $preferredLimit = nu
484
484
};
485
485
486
486
// p ~ ul - all <ul> elements that are preceded by a <p> element
487
- $ complexSelectors ['~ ' ] = function (array $ parts , \DOMNode $ context , callable $ add = null ) use (&$ getMatchingElements , &$ isMatchingElement ) {
487
+ $ complexSelectors ['~ ' ] = function (array $ parts , \DOMNode $ context , ? callable $ add = null ) use (&$ getMatchingElements , &$ isMatchingElement ): void {
488
488
$ elements = null ;
489
489
foreach ($ parts as $ part ) {
490
490
if ($ elements === null ) {
0 commit comments