35 references to MatchStage
Microsoft.NET.Sdk.StaticWebAssets.Tasks (35)
Utils\Globbing\StaticWebAssetGlobMatcher.cs (35)
48var stage = state.Stage; 54case MatchStage.Done: 67case MatchStage.Literal: 76case MatchStage.Extension: 85case MatchStage.Complex: 94case MatchStage.WildCard: 103case MatchStage.RecursiveWildCard: 346internal struct MatchState(GlobNode node, MatchStage stage, int segmentIndex, int extensionSegmentIndex, int complexSegmentIndex) 352public MatchStage Stage { get; set; } = stage; 365public readonly void Deconstruct(out GlobNode node, out MatchStage stage, out int segmentIndex, out int extensionIndex, out int complexIndex) 381case MatchStage.Literal: 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) 406case MatchStage.Extension: 409return new(Node, MatchStage.Complex, SegmentIndex, 0, 0) 415return new(Node, MatchStage.WildCard, SegmentIndex, 0, 0) 421return new(Node, MatchStage.RecursiveWildCard, SegmentIndex, 0, 0) 425case MatchStage.Complex: 428return new(Node, MatchStage.WildCard, SegmentIndex, 0, 0) 433return new(Node, MatchStage.RecursiveWildCard, SegmentIndex, 0, 0) 437case MatchStage.WildCard: 440return new(Node, MatchStage.RecursiveWildCard, SegmentIndex, 0, 0) 444case MatchStage.RecursiveWildCard: 445return new(Node, MatchStage.Done, SegmentIndex, 0, 0) 452private static MatchStage GetInitialStage(GlobNode node) 456return MatchStage.Literal; 461return MatchStage.Extension; 466return MatchStage.Complex; 471return MatchStage.WildCard; 476return MatchStage.RecursiveWildCard; 479return MatchStage.Done; 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);