10 writes to _options
System.Text.RegularExpressions (10)
System\Text\RegularExpressions\RegexParser.cs (10)
61_options = options; 263_options = options; 376_options = (RegexOptions)_optionsStack.Pop(); 858_options &= ~RegexOptions.RightToLeft; 864_options &= ~RegexOptions.RightToLeft; 892_options |= RegexOptions.RightToLeft; 903_options |= RegexOptions.RightToLeft; 1638_options &= ~options; 1642_options |= options; 1896_options = (RegexOptions)_optionsStack.Pop();
86 references to _options
System.Text.RegularExpressions (86)
System\Text\RegularExpressions\RegexParser.cs (86)
277StartGroup(new RegexNode(RegexNodeKind.Capture, (_options & ~RegexOptions.IgnoreCase), 0, -1)); 290if ((_options & RegexOptions.IgnorePatternWhitespace) != 0) 332_unit = RegexNode.CreateOneWithCaseConversion(_pattern[endpos - 1], _options, _culture, ref _caseBehavior); 346string setString = ScanCharClass((_options & RegexOptions.IgnoreCase) != 0, scanOnly: false)!.ToStringClass(); 347_unit = new RegexNode(RegexNodeKind.Set, _options & ~RegexOptions.IgnoreCase, setString); 352_optionsStack.Append((int)_options); 394if ((_options & (RegexOptions.AnyNewLine | RegexOptions.Multiline)) == (RegexOptions.AnyNewLine | RegexOptions.Multiline)) 400_unit = new RegexNode((_options & RegexOptions.Multiline) != 0 ? RegexNodeKind.Bol : RegexNodeKind.Beginning, _options); 405if ((_options & RegexOptions.AnyNewLine) != 0) 407_unit = (_options & RegexOptions.Multiline) != 0 ? AnyNewLineEolNode() : AnyNewLineEndZNode(); 411_unit = new RegexNode((_options & RegexOptions.Multiline) != 0 ? RegexNodeKind.Eol : RegexNodeKind.EndZ, _options); 416if ((_options & RegexOptions.Singleline) != 0) 418_unit = new RegexNode(RegexNodeKind.Set, _options & ~RegexOptions.IgnoreCase, RegexCharClass.AnyClass); 420else if ((_options & RegexOptions.AnyNewLine) != 0) 422_unit = new RegexNode(RegexNodeKind.Set, _options & ~RegexOptions.IgnoreCase, RegexCharClass.NotAnyNewLineClass); 426_unit = new RegexNode(RegexNodeKind.Notone, _options & ~RegexOptions.IgnoreCase, '\n'); 544_concatenation = new RegexNode(RegexNodeKind.Concatenate, _options); 594if ((_options & RegexOptions.ECMAScript) != 0 && _pattern[_pos] == ']') 614if ((_options & RegexOptions.ECMAScript) != 0 && _pos < _pattern.Length && _pattern[_pos] == ']') 672charClass!.AddDigit((_options & RegexOptions.ECMAScript) != 0, ch == 'D', _pattern, _pos); 684charClass!.AddSpace((_options & RegexOptions.ECMAScript) != 0, ch == 'S'); 697charClass!.AddWord((_options & RegexOptions.ECMAScript) != 0, ch == 'W'); 826if ((_options & RegexOptions.ExplicitCapture) != 0 || _ignoreNextParen) 829return new RegexNode(RegexNodeKind.Group, _options); 833return new RegexNode(RegexNodeKind.Capture, _options, _autocap++, -1); 1007return new RegexNode(RegexNodeKind.Capture, _options, capnum, uncapnum); 1029return new RegexNode(RegexNodeKind.BackreferenceConditional, _options, capnum); 1043return new RegexNode(RegexNodeKind.BackreferenceConditional, _options, tmpCapnum); 1097return new RegexNode(nodeType, _options); 1112if ((_options & RegexOptions.IgnorePatternWhitespace) != 0) 1120if ((_options & RegexOptions.IgnorePatternWhitespace) != 0 && _pos < _pattern.Length && _pattern[_pos] == '#') 1161new RegexNode(TypeFromCode(ch), _options); 1166(_options & RegexOptions.AnyNewLine) != 0 ? AnyNewLineEndZNode() : new RegexNode(RegexNodeKind.EndZ, _options); 1171new RegexNode(RegexNodeKind.Set, (_options & ~RegexOptions.IgnoreCase), (_options & RegexOptions.ECMAScript) != 0 ? RegexCharClass.ECMAWordClass : RegexCharClass.WordClass); 1176new RegexNode(RegexNodeKind.Set, (_options & ~RegexOptions.IgnoreCase), (_options & RegexOptions.ECMAScript) != 0 ? RegexCharClass.NotECMAWordClass : RegexCharClass.NotWordClass); 1181new RegexNode(RegexNodeKind.Set, (_options & ~RegexOptions.IgnoreCase), (_options & RegexOptions.ECMAScript) != 0 ? RegexCharClass.ECMASpaceClass : RegexCharClass.SpaceClass); 1186new RegexNode(RegexNodeKind.Set, (_options & ~RegexOptions.IgnoreCase), (_options & RegexOptions.ECMAScript) != 0 ? RegexCharClass.NotECMASpaceClass : RegexCharClass.NotSpaceClass); 1191new RegexNode(RegexNodeKind.Set, (_options & ~RegexOptions.IgnoreCase), (_options & RegexOptions.ECMAScript) != 0 ? RegexCharClass.ECMADigitClass : RegexCharClass.DigitClass); 1196new RegexNode(RegexNodeKind.Set, (_options & ~RegexOptions.IgnoreCase), (_options & RegexOptions.ECMAScript) != 0 ? RegexCharClass.NotECMADigitClass : RegexCharClass.NotDigitClass); 1207cc.AddCategoryFromName(ParseProperty(), ch != 'p', (_options & RegexOptions.IgnoreCase) != 0, _pattern, _pos); 1208if ((_options & RegexOptions.IgnoreCase) != 0) 1213return new RegexNode(RegexNodeKind.Set, (_options & ~RegexOptions.IgnoreCase), cc.ToStringClass()); 1278IsCaptureSlot(capnum) ? new RegexNode(RegexNodeKind.Backreference, _options, capnum) : 1287if ((_options & RegexOptions.ECMAScript) != 0) 1310return scanOnly ? null : new RegexNode(RegexNodeKind.Backreference, _options, capnum); 1324return new RegexNode(RegexNodeKind.Backreference, _options, capnum); 1344_capnames?[capname] is int tmpCapnum ? new RegexNode(RegexNodeKind.Backreference, _options, tmpCapnum) : 1355RegexNode.CreateOneWithCaseConversion(ch, _options, _culture, ref _caseBehavior) : 1364return RegexNode.CreateOneWithCaseConversion('$', _options, _culture, ref _caseBehavior); 1389if (!angled && (_options & RegexOptions.ECMAScript) != 0) 1420return new RegexNode(RegexNodeKind.Backreference, _options, capnum); 1430return new RegexNode(RegexNodeKind.Backreference, _options, capnum); 1442return new RegexNode(RegexNodeKind.Backreference, _options, tmpCapnum); 1454return RegexNode.CreateOneWithCaseConversion('$', _options, _culture, ref _caseBehavior); 1480return new RegexNode(RegexNodeKind.Backreference, _options, capnum); 1487return RegexNode.CreateOneWithCaseConversion('$', _options, _culture, ref _caseBehavior); 1518if ((_options & RegexOptions.ECMAScript) != 0 && i >= 0x20) 1684if ((_options & RegexOptions.ECMAScript) == 0 && RegexCharClass.IsBoundaryWordChar(ch)) 1735RegexOptions lookaheadOpts = _options & ~RegexOptions.RightToLeft; 1736RegexOptions lookbehindOpts = _options | RegexOptions.RightToLeft; 1764RegexOptions opts = _options; 1801RegexOptions opts = _options; 1827RegexOptions opts = _options; 1850'b' => (_options & RegexOptions.ECMAScript) != 0 ? RegexNodeKind.ECMABoundary : RegexNodeKind.Boundary, 1851'B' => (_options & RegexOptions.ECMAScript) != 0 ? RegexNodeKind.NonECMABoundary : RegexNodeKind.NonBoundary, 1882if ((_options & RegexOptions.IgnorePatternWhitespace) != 0) 1909_optionsStack.Append((int)_options); 1940optionsFoundInPattern |= _options; 1967if ((_options & RegexOptions.ExplicitCapture) == 0 && !_ignoreNextParen) 2194_concatenation!.AddChild(RegexNode.CreateOneWithCaseConversion(_pattern[pos], isReplacement ? _options & ~RegexOptions.IgnoreCase : _options, _culture, ref _caseBehavior)); 2197case > 1 when (_options & RegexOptions.IgnoreCase) == 0 || isReplacement || !RegexCharClass.ParticipatesInCaseConversion(_pattern.AsSpan(pos, cch)): 2198_concatenation!.AddChild(new RegexNode(RegexNodeKind.Multi, _options & ~RegexOptions.IgnoreCase, _pattern.Substring(pos, cch))); 2204_concatenation!.AddChild(RegexNode.CreateOneWithCaseConversion(c, _options, _culture, ref _caseBehavior)); 2244_alternation = new RegexNode(RegexNodeKind.Alternate, _options); 2245_concatenation = new RegexNode(RegexNodeKind.Concatenate, _options); 2262_concatenation = new RegexNode(RegexNodeKind.Concatenate, _options);