@@ -488,19 +488,24 @@ module NSStringCompareOptionsFlagFlow = DataFlow::Global<NSStringCompareOptionsF
488
488
* A call to a function that evaluates a regular expression because
489
489
* `NSString.CompareOptions.regularExpression` is set as an `options` argument.
490
490
*/
491
- private class NSStringCompareOptionsRegexEval extends RegexEval {
492
- NSStringCompareOptionsPotentialRegexEval potentialEval ;
493
-
491
+ private class NSStringCompareOptionsRegexEval extends RegexEval instanceof NSStringCompareOptionsPotentialRegexEval
492
+ {
494
493
NSStringCompareOptionsRegexEval ( ) {
495
- this = potentialEval and
496
494
// check there is flow from a `NSString.CompareOptions.regularExpression` value to an `options` argument;
497
495
// if there isn't, the input won't be interpretted as a regular expression.
498
- NSStringCompareOptionsFlagFlow:: flow ( _, potentialEval .getAnOptionsInput ( ) )
496
+ NSStringCompareOptionsFlagFlow:: flow ( _,
497
+ this .( NSStringCompareOptionsPotentialRegexEval ) .getAnOptionsInput ( ) )
499
498
}
500
499
501
- override DataFlow:: Node getRegexInputNode ( ) { result = potentialEval .getRegexInput ( ) }
500
+ override DataFlow:: Node getRegexInputNode ( ) {
501
+ result = this .( NSStringCompareOptionsPotentialRegexEval ) .getRegexInput ( )
502
+ }
502
503
503
- override DataFlow:: Node getStringInputNode ( ) { result = potentialEval .getStringInput ( ) }
504
+ override DataFlow:: Node getStringInputNode ( ) {
505
+ result = this .( NSStringCompareOptionsPotentialRegexEval ) .getStringInput ( )
506
+ }
504
507
505
- override DataFlow:: Node getAnOptionsInput ( ) { result = potentialEval .getAnOptionsInput ( ) }
508
+ override DataFlow:: Node getAnOptionsInput ( ) {
509
+ result = this .( NSStringCompareOptionsPotentialRegexEval ) .getAnOptionsInput ( )
510
+ }
506
511
}
0 commit comments