7 writes to Options
System.Text.RegularExpressions (7)
System\Text\RegularExpressions\RegexNode.cs (7)
54Options = options; 60Options = options; 67Options = options; 74Options = options; 81Options = options; 529Options &= ~RegexOptions.IgnoreCase; 1050prev.Options &= ~RegexOptions.IgnoreCase;
61 references to Options
System.Text.RegularExpressions (61)
System\Text\RegularExpressions\RegexNode.cs (51)
95new RegexNode(Kind, Options, Str!) : 96new RegexNode(Kind, Options, Ch); 137if ((Options & RegexOptions.RightToLeft) != 0 && 315Debug.Assert((node.Options & RegexOptions.IgnoreCase) == 0, $"{node.Kind} node should not have RegexOptions.IgnoreCase"); 339if ((Options & (RegexOptions.RightToLeft | RegexOptions.NonBacktracking)) == 0) 388parent.InsertChild(1, new RegexNode(RegexNodeKind.UpdateBumpalong, node.Options)); 414(Options & (RegexOptions.RightToLeft | RegexOptions.NonBacktracking)) != 0) 456var atomic = new RegexNode(RegexNodeKind.Atomic, existingChild.Options); 5630 => new RegexNode(Kind == RegexNodeKind.Alternate ? RegexNodeKind.Nothing : RegexNodeKind.Empty, Options), 600if ((Options & RegexOptions.NonBacktracking) != 0) 644if ((Options & RegexOptions.RightToLeft) == 0) 654return new RegexNode(RegexNodeKind.Empty, child.Options); 837return new RegexNode(RegexNodeKind.Nothing, Options); 930return new RegexNode(RegexNodeKind.Nothing, Options); 1000optionsAt = at.Options & (RegexOptions.RightToLeft | RegexOptions.IgnoreCase); 1048if ((prev.Options & RegexOptions.IgnoreCase) != 0) 1082if ((alternation.Options & RegexOptions.RightToLeft) != 0) 1122required.Options != other.Options || 1139var newAlternate = new RegexNode(RegexNodeKind.Alternate, alternation.Options); 1149var atomic = new RegexNode(RegexNodeKind.Atomic, alternation.Options); 1156var newConcat = new RegexNode(RegexNodeKind.Concatenate, alternation.Options); 1225if ((alternation.Options & RegexOptions.RightToLeft) != 0) 1240RegexOptions startingNodeOptions = startingNode.Options; 1255if (startingNode is null || startingNode.Options != startingNodeOptions) 1386Debug.Assert((Options & RegexOptions.RightToLeft) == 0); 1396if (node is not null && (node.Options & RegexOptions.RightToLeft) == 0) 1506return new RegexNode(RegexNodeKind.Empty, Options); 1560((at.Options & RegexOptions.RightToLeft) == (Options & RegexOptions.RightToLeft))) 1581RegexOptions optionsAt = at.Options & (RegexOptions.RightToLeft | RegexOptions.IgnoreCase); 1636if (currentNode.Options == nextNode.Options) 1795Debug.Assert((Options & RegexOptions.NonBacktracking) == 0, "Atomic groups aren't supported and don't help performance with NonBacktracking"); 1803if ((Options & RegexOptions.RightToLeft) != 0) 2003AddChild(new RegexNode(RegexNodeKind.Empty, Options)); 2021AddChild(new RegexNode(RegexNodeKind.Empty, Options)); 2030if (condition.Kind == RegexNodeKind.PositiveLookaround && (condition.Options & RegexOptions.RightToLeft) == 0) 2072case RegexNodeKind.PositiveLookaround when (subsequent.Options & RegexOptions.RightToLeft) == 0: // only lookaheads, not lookbehinds (represented as RTL PositiveLookaround nodes) 2083if (node.Options != subsequent.Options) 2679return new RegexNode(RegexNodeKind.Empty, Options); 2707var result = new RegexNode(lazy ? RegexNodeKind.Lazyloop : RegexNodeKind.Loop, Options, min, max); 2786if ((Options & RegexOptions.NonBacktracking) != 0) 2877if ((Options & RegexOptions.ExplicitCapture) != 0) sb.Append("-C"); 2878if ((Options & RegexOptions.IgnoreCase) != 0) sb.Append("-I"); 2879if ((Options & RegexOptions.RightToLeft) != 0) sb.Append("-L"); 2880if ((Options & RegexOptions.Multiline) != 0) sb.Append("-M"); 2881if ((Options & RegexOptions.Singleline) != 0) sb.Append("-S"); 2882if ((Options & RegexOptions.IgnorePatternWhitespace) != 0) sb.Append("-X"); 2883if ((Options & RegexOptions.ECMAScript) != 0) sb.Append("-E");
System\Text\RegularExpressions\RegexParser.cs (1)
1142if (result != null && result.Kind == RegexNodeKind.Backreference && (result.Options & RegexOptions.IgnoreCase) != 0)
System\Text\RegularExpressions\RegexPrefixAnalyzer.cs (5)
65(node.Options & RegexOptions.RightToLeft) != 0 || 358bool rtl = (node.Options & RegexOptions.RightToLeft) != 0; 593if ((node.Options & RegexOptions.RightToLeft) != 0) 995cc.AddChar(node.Str![(node.Options & RegexOptions.RightToLeft) != 0 ? node.Str.Length - 1 : 0]); 1105if ((node.Options & RegexOptions.RightToLeft) != 0)
System\Text\RegularExpressions\RegexTreeAnalyzer.cs (2)
27results._hasIgnoreCase |= (node.Options & RegexOptions.IgnoreCase) != 0; 28results._hasRightToLeft |= (node.Options & RegexOptions.RightToLeft) != 0;
System\Text\RegularExpressions\RegexWriter.cs (2)
204if ((node.Options & RegexOptions.RightToLeft) != 0) 208if ((node.Options & RegexOptions.IgnoreCase) != 0)