本文整理汇总了C#中Microsoft.CodeAnalysis.CSharp.Syntax.FieldDeclarationSyntax.GetLeadingTrivia方法的典型用法代码示例。如果您正苦于以下问题:C# FieldDeclarationSyntax.GetLeadingTrivia方法的具体用法?C# FieldDeclarationSyntax.GetLeadingTrivia怎么用?C# FieldDeclarationSyntax.GetLeadingTrivia使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Microsoft.CodeAnalysis.CSharp.Syntax.FieldDeclarationSyntax
的用法示例。
在下文中一共展示了FieldDeclarationSyntax.GetLeadingTrivia方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: MakeSingleFieldReadonly
private static SyntaxNode MakeSingleFieldReadonly(SyntaxNode root, FieldDeclarationSyntax fieldDeclaration)
{
var newFieldDeclaration = fieldDeclaration.AddModifiers(SyntaxFactory.Token(SyntaxKind.ReadOnlyKeyword))
.WithTrailingTrivia(fieldDeclaration.GetTrailingTrivia())
.WithLeadingTrivia(fieldDeclaration.GetLeadingTrivia())
.WithAdditionalAnnotations(Formatter.Annotation);
var newRoot = root.ReplaceNode(fieldDeclaration, newFieldDeclaration);
return newRoot;
}
示例2: MakePrivateAsync
private async Task<Document> MakePrivateAsync(Document document, FieldDeclarationSyntax fieldDeclaration, CancellationToken cancellationToken) {
SyntaxToken privateSyntaxToken = CreatePrivateSyntaxToken(fieldDeclaration);
IEnumerable<SyntaxToken> newFieldModifiers = new[] { privateSyntaxToken }.Union(
fieldDeclaration.Modifiers.Where(modifier =>
modifier.Kind() != SyntaxKind.InternalKeyword && modifier.Kind() != SyntaxKind.PublicKeyword)
.Select(modifier => modifier.WithLeadingTrivia()));
FieldDeclarationSyntax newfieldDeclaration = fieldDeclaration.Update(fieldDeclaration.AttributeLists,
new SyntaxTokenList().AddRange(newFieldModifiers),
fieldDeclaration.Declaration.WithoutTrivia(),
fieldDeclaration.SemicolonToken)
.WithLeadingTrivia(fieldDeclaration.GetLeadingTrivia())
.WithTrailingTrivia(fieldDeclaration.GetTrailingTrivia());
return await this.ReplaceNodeInDocumentAsync(document, cancellationToken, fieldDeclaration, newfieldDeclaration);
}
示例3: InternalStaticAsync
private async Task<Document> InternalStaticAsync(Document document, FieldDeclarationSyntax declaration, CancellationToken c)
{
SyntaxGenerator generator = SyntaxGenerator.GetGenerator(document);
var newFieldDecl = generator.FieldDeclaration(declaration.Declaration.Variables[0].Identifier.Text, generator.IdentifierName("DiagnosticDescriptor"), accessibility: Accessibility.Internal, modifiers: DeclarationModifiers.Static, initializer: declaration.Declaration.Variables[0].Initializer.Value as SyntaxNode).WithLeadingTrivia(declaration.GetLeadingTrivia()).WithTrailingTrivia(declaration.GetTrailingTrivia());
return await ReplaceNode(declaration, newFieldDecl, document);
}
示例4: TransverseVariables
private Variables TransverseVariables(FieldDeclarationSyntax fds, bool isRef = false)
{
Variables retVar = new Variables();
if (fds.HasLeadingTrivia)
{
SetOuterComments(retVar, fds.GetLeadingTrivia().ToFullString());
}
if (fds.HasTrailingTrivia)
{
SetInnerComments(retVar, fds.GetTrailingTrivia().ToFullString());
}
retVar.IsReferenced = isRef;
//Not sure if right
retVar.Type.IsKnownType = SyntaxFacts.IsKeywordKind(fds.CSharpKind());
retVar.Type.IsNotUserDefined = SyntaxFacts.IsKeywordKind(fds.CSharpKind());
//This should pick up the "type" name
retVar.Type.Name = fds.Declaration.Type.ToString();
foreach (SyntaxToken st in fds.Modifiers)
{
string modifier = System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase(st.ValueText);
Encapsulation encap;
Qualifiers qual;
if (System.Enum.TryParse<Encapsulation>(modifier, out encap))
{
retVar.Accessibility.Add(encap);
}
else if (System.Enum.TryParse<Qualifiers>(modifier, out qual))
{
retVar.Qualifiers.Add(qual);
}
}
//This does return variable name but I don't know if fds can contain a list of
//variables or if it will always be 1
retVar.Name = fds.Declaration.Variables.ToString();
return retVar;
}