23 references to Matcher
Microsoft.CodeAnalysis.CSharp.Features (6)
src\Analyzers\CSharp\CodeFixes\UsePrimaryConstructor\CSharpUsePrimaryConstructorCodeFixProvider.cs (6)
40
private static readonly Matcher<SyntaxTrivia> s_commentFollowedByBlankLine =
Matcher
.Sequence(
41
Matcher
.Single<SyntaxTrivia>(t => t.IsSingleOrMultiLineComment(), "comment"),
42
Matcher
.Single<SyntaxTrivia>(t => t.Kind() == SyntaxKind.EndOfLineTrivia, "first end of line"),
43
Matcher
.Repeat(
Matcher
.Single<SyntaxTrivia>(t => t.Kind() == SyntaxKind.WhitespaceTrivia, "whitespace")),
44
Matcher
.Single<SyntaxTrivia>(t => t.IsKind(SyntaxKind.EndOfLineTrivia), "second end of line"));
Microsoft.CodeAnalysis.Workspaces (17)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\FileBannerFacts\AbstractFileBannerFacts.cs (17)
33
var whitespace =
Matcher
.Repeat(
34
Matcher
.Single<SyntaxTrivia>(this.SyntaxFacts.IsWhitespaceTrivia, "\\b"));
35
var endOfLine =
Matcher
.Single<SyntaxTrivia>(this.SyntaxFacts.IsEndOfLineTrivia, "\\n");
36
var singleBlankLine =
Matcher
.Sequence(whitespace, endOfLine);
38
var shebangComment =
Matcher
.Single<SyntaxTrivia>(this.SyntaxFacts.IsShebangDirectiveTrivia, "#!");
39
var singleLineComment =
Matcher
.Single<SyntaxTrivia>(this.SyntaxFacts.IsSingleLineCommentTrivia, "//");
40
var multiLineComment =
Matcher
.Single<SyntaxTrivia>(this.SyntaxFacts.IsMultiLineCommentTrivia, "/**/");
41
var singleLineDocumentationComment =
Matcher
.Single<SyntaxTrivia>(this.SyntaxFacts.IsSingleLineDocCommentTrivia, "///");
42
var multiLineDocumentationComment =
Matcher
.Single<SyntaxTrivia>(this.SyntaxFacts.IsMultiLineDocCommentTrivia, "/** */");
43
var anyCommentMatcher =
Matcher
.Choice(shebangComment, singleLineComment, multiLineComment, singleLineDocumentationComment, multiLineDocumentationComment);
45
var commentLine =
Matcher
.Sequence(whitespace, anyCommentMatcher, whitespace, endOfLine);
47
_oneOrMoreBlankLines =
Matcher
.OneOrMore(singleBlankLine);
49
Matcher
.Sequence(
50
Matcher
.OneOrMore(commentLine),
53
Matcher
.Sequence(
54
Matcher
.OneOrMore(commentLine),
55
Matcher
.Repeat(singleBlankLine));