15 instantiations of MatchState
Microsoft.NET.Sdk.StaticWebAssets.Tasks (15)
Utils\Globbing\StaticWebAssetGlobMatcher.cs (15)
44stateStack.Push(new(includes)); 375new(candidate, GetInitialStage(candidate), SegmentIndex + elements, 0, complexIndex) { StemStartIndex = StemStartIndex }; 384return new(Node, MatchStage.Extension, SegmentIndex, 0, 0) 390return new(Node, MatchStage.Complex, SegmentIndex, 0, 0) 396return new(Node, MatchStage.WildCard, SegmentIndex, 0, 0) 402return new(Node, MatchStage.RecursiveWildCard, SegmentIndex, 0, 0) 409return new(Node, MatchStage.Complex, SegmentIndex, 0, 0) 415return new(Node, MatchStage.WildCard, SegmentIndex, 0, 0) 421return new(Node, MatchStage.RecursiveWildCard, SegmentIndex, 0, 0) 428return new(Node, MatchStage.WildCard, SegmentIndex, 0, 0) 433return new(Node, MatchStage.RecursiveWildCard, SegmentIndex, 0, 0) 440return new(Node, MatchStage.RecursiveWildCard, SegmentIndex, 0, 0) 445return new(Node, MatchStage.Done, SegmentIndex, 0, 0) 482internal readonly MatchState NextExtension(int extensionIndex) => new(Node, MatchStage.Extension, SegmentIndex, extensionIndex, ComplexSegmentIndex); 484internal readonly MatchState NextComplex() => new(Node, MatchStage.Complex, SegmentIndex, ExtensionSegmentIndex, ComplexSegmentIndex + 1);
21 references to MatchState
Microsoft.NET.Sdk.StaticWebAssets.Tasks (21)
Utils\Globbing\StaticWebAssetGlobMatcher.cs (21)
42private static GlobMatch MatchCore(GlobNode includes, PathTokenizer.SegmentCollection segments, Stack<MatchState> stateStack) 47var state = stateStack.Pop(); 155private static void MatchComplex(PathTokenizer.SegmentCollection segments, Stack<MatchState> stateStack, MatchState state) 268private static void MatchRecursiveWildCard(PathTokenizer.SegmentCollection segments, Stack<MatchState> stateStack, MatchState state) 273var nextSegment = state.NextSegment(node.RecursiveWildCard, i); 285private static void MatchWildCard(Stack<MatchState> stateStack, MatchState state) 291private static void MatchExtension(PathTokenizer.SegmentCollection segments, Stack<MatchState> stateStack, MatchState state) 320private static void MatchLiteral(PathTokenizer.SegmentCollection segments, Stack<MatchState> stateStack, MatchState state) 333private static void PushNextStageIfAvailable(Stack<MatchState> stateStack, MatchState state) 337var nextStage = state.NextStage(); 374internal MatchState NextSegment(GlobNode candidate, int elements = 1, int complexIndex = 0) => 377internal MatchState NextStage() 482internal readonly MatchState NextExtension(int extensionIndex) => new(Node, MatchStage.Extension, SegmentIndex, extensionIndex, ComplexSegmentIndex); 484internal readonly MatchState NextComplex() => new(Node, MatchStage.Complex, SegmentIndex, ExtensionSegmentIndex, ComplexSegmentIndex + 1); 528internal Stack<MatchState> MatchStates { get; set; } = [];