65 references to One
System.Text.RegularExpressions (65)
System\Text\RegularExpressions\RegexCompiler.cs (7)
1467case RegexNodeKind.Multi or RegexNodeKind.Notone or RegexNodeKind.One or RegexNodeKind.Set: 2033case RegexNodeKind.One: 2045case RegexNodeKind.Concatenate when child.Child(0) == startingLiteralNode && (startingLiteralNode.Kind is RegexNodeKind.One or RegexNodeKind.Set or RegexNodeKind.Multi): 2097new(RegexNodeKind.One, multi.Options, multi.Str[1]) : 2988case RegexNodeKind.One: 3675case RegexNodeKind.One or RegexNodeKind.Oneloop or RegexNodeKind.Oneloopatomic or RegexNodeKind.Onelazy: 5667if (root.Kind is RegexNodeKind.Multi or RegexNodeKind.One or RegexNodeKind.Notone or RegexNodeKind.Set)
System\Text\RegularExpressions\RegexNode.cs (40)
121return new RegexNode(RegexNodeKind.One, options & ~RegexOptions.IgnoreCase, ch); 131return new RegexNode(RegexNodeKind.One, options, ch); 152Kind += kind - RegexNodeKind.One; 287case RegexNodeKind.One: 954case RegexNodeKind.One: 1018Kind == RegexNodeKind.Set ? RegexNodeKind.One : 1153else if (at.Kind is RegexNodeKind.Set or RegexNodeKind.One) 1182if (prev.Kind == RegexNodeKind.One) 1192if (at.Kind == RegexNodeKind.One) 1255case RegexNodeKind.One or RegexNodeKind.Notone or RegexNodeKind.Set: 1403if (startingNode.Kind == RegexNodeKind.One) 1423if (startingNode.Kind == RegexNodeKind.One) 1468new RegexNode(RegexNodeKind.One, startingNodeOptions, startingSpan[0]) : 1482if (node.Kind == RegexNodeKind.One) 1500node.Kind = RegexNodeKind.One; 1540return branch.Kind is RegexNodeKind.One or RegexNodeKind.Multi ? branch : null; 1546Debug.Assert(Kind is RegexNodeKind.One or RegexNodeKind.Multi || (IsOneFamily && M > 0)); 1631case RegexNodeKind.One: 1666case RegexNodeKind.One or RegexNodeKind.Oneloop or RegexNodeKind.Oneloopatomic or RegexNodeKind.Onelazy: 1809else if (at.Kind is RegexNodeKind.Multi or RegexNodeKind.One) 1823if (prev.Kind == RegexNodeKind.One) 1830((at.Kind == RegexNodeKind.One) ? $"{prev.Str}{at.Ch}" : prev.Str + at.Str) : 1831((at.Kind == RegexNodeKind.One) ? $"{at.Ch}{prev.Str}" : at.Str + prev.Str); 1920case RegexNodeKind.Oneloop or RegexNodeKind.Onelazy when nextNode.Kind == RegexNodeKind.One && currentNode.Ch == nextNode.Ch: 1970nextNode.Kind = RegexNodeKind.One; 1988case RegexNodeKind.One when (nextNode.Kind is RegexNodeKind.Oneloop or RegexNodeKind.Oneloopatomic or RegexNodeKind.Onelazy) && currentNode.Ch == nextNode.Ch: 2148RegexNodeKind.One or RegexNodeKind.Notone or RegexNodeKind.Set && 2402case RegexNodeKind.One when CharInLoopSet(loopNode, literal.Ch): // e.g. \w+a\s : 'a' is in \w, check \s is disjoint 2523case RegexNodeKind.One when node.Ch != subsequent.Ch: 2553case RegexNodeKind.One when node.Ch == subsequent.Ch: 2572case RegexNodeKind.One when !RegexCharClass.CharInClass(subsequent.Ch, node.Str!): 2619case RegexNodeKind.One when !CharInStartingOrEndingSet(subsequent.Ch): 2828case RegexNodeKind.One: 2941case RegexNodeKind.One: 3118if (child.Kind is RegexNodeKind.One) 3230RegexNodeKind.One or RegexNodeKind.Notone or RegexNodeKind.Set => true, 3282case <= MultiVsRepeaterLimit when Kind == RegexNodeKind.One: 3297case RegexNodeKind.One: 3438public bool IsOneFamily => Kind is RegexNodeKind.One or RegexNodeKind.Oneloop or RegexNodeKind.Oneloopatomic or RegexNodeKind.Onelazy; 3498case RegexNodeKind.One:
System\Text\RegularExpressions\RegexNodeKind.cs (3)
26/// <remarks>The characters are specified in <see cref="RegexNode.Str"/>. This is purely a representational optimization, equivalent to multiple <see cref="One"/> nodes concatenated together.</remarks> 32/// This is purely a representational optimization, equivalent to a <see cref="Loop"/> wrapped around a <see cref="One"/>. 46/// This is purely a representational optimization, equivalent to a <see cref="Lazyloop"/> wrapped around a <see cref="One"/>.
System\Text\RegularExpressions\RegexParser.cs (4)
1742lookbehindCr.AddChild(new RegexNode(RegexNodeKind.One, lookbehindOptsNoCase, '\r')); 1747crThenLf.AddChild(new RegexNode(RegexNodeKind.One, lookaheadOptsNoCase, '\n')); 1770crlfEnd.AddChild(new RegexNode(RegexNodeKind.One, lookaheadOptsNoCase, '\r')); 1771crlfEnd.AddChild(new RegexNode(RegexNodeKind.One, lookaheadOptsNoCase, '\n'));
System\Text\RegularExpressions\RegexPrefixAnalyzer.cs (7)
112case RegexNodeKind.One or RegexNodeKind.Oneloop or RegexNodeKind.Onelazy or RegexNodeKind.Oneloopatomic when !ignoreCase || !RegexCharClass.ParticipatesInCaseConversion(node.Ch): 114int reps = node.Kind is RegexNodeKind.One ? 1 : Math.Min(node.M, MaxPrefixLength); 119return node.Kind is RegexNodeKind.One || reps == node.N; 422case RegexNodeKind.One: 600case RegexNodeKind.One: 954case RegexNodeKind.One or RegexNodeKind.Oneloop or RegexNodeKind.Onelazy or RegexNodeKind.Oneloopatomic: 959return node.Kind is RegexNodeKind.One || node.M > 0 ? true : null;
System\Text\RegularExpressions\RegexReplacement.cs (1)
54case RegexNodeKind.One:
System\Text\RegularExpressions\RegexWriter.cs (1)
381case RegexNodeKind.One:
System\Text\RegularExpressions\Symbolic\RegexNodeConverter.cs (1)
57case RegexNodeKind.One:
System\Text\RegularExpressions\Symbolic\SymbolicRegexKind.cs (1)
11/// <summary>A node that matches a single character (i.e. <see cref="RegexNodeKind.One"/>, <see cref="RegexNodeKind.Notone"/>, or <see cref="RegexNodeKind.Set"/>).</summary>