mirror of
https://github.com/github/codeql.git
synced 2026-05-05 05:35:13 +02:00
Rename CommentPopulator
This commit is contained in:
@@ -374,9 +374,14 @@ namespace Semmle.Extraction.CSharp
|
||||
if (!upToDate)
|
||||
{
|
||||
var cx = extractor.CreateContext(compilation.Clone(), trapWriter, new SourceScope(tree), AddAssemblyTrapPrefix);
|
||||
CompilationUnitVisitor.Extract(cx, tree.GetRoot());
|
||||
// Ensure that the file itself is populated in case the source file is totally empty
|
||||
var root = tree.GetRoot();
|
||||
Extraction.Entities.File.Create(cx, root.SyntaxTree.FilePath);
|
||||
|
||||
var csNode = (CSharpSyntaxNode)root;
|
||||
csNode.Accept(new CompilationUnitVisitor(cx));
|
||||
cx.PopulateAll();
|
||||
TriviaPopulator.ExtractCommentBlocks(cx, cx.CommentGenerator);
|
||||
CommentPopulator.ExtractCommentBlocks(cx, cx.CommentGenerator);
|
||||
cx.PopulateAll();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,9 +7,9 @@ using System;
|
||||
namespace Semmle.Extraction.CSharp.Populators
|
||||
{
|
||||
/// <summary>
|
||||
/// Populators for trivias.
|
||||
/// Populators for comments.
|
||||
/// </summary>
|
||||
public static class TriviaPopulator
|
||||
public static class CommentPopulator
|
||||
{
|
||||
public static void ExtractCommentBlocks(Context cx, ICommentGenerator gen)
|
||||
{
|
||||
@@ -33,7 +33,7 @@ namespace Semmle.Extraction.CSharp.Populators
|
||||
});
|
||||
}
|
||||
|
||||
public static void ExtractTrivia(Context cx, SyntaxTrivia trivia)
|
||||
public static void ExtractComment(Context cx, SyntaxTrivia trivia)
|
||||
{
|
||||
switch (trivia.Kind())
|
||||
{
|
||||
@@ -7,7 +7,7 @@ namespace Semmle.Extraction.CSharp.Populators
|
||||
{
|
||||
internal class CompilationUnitVisitor : TypeOrNamespaceVisitor
|
||||
{
|
||||
private CompilationUnitVisitor(Context cx)
|
||||
public CompilationUnitVisitor(Context cx)
|
||||
: base(cx, cx.TrapWriter.Writer, null) { }
|
||||
|
||||
public override void VisitExternAliasDirective(ExternAliasDirectiveSyntax node)
|
||||
@@ -26,26 +26,18 @@ namespace Semmle.Extraction.CSharp.Populators
|
||||
// Gather comments:
|
||||
foreach (var trivia in compilationUnit.DescendantTrivia(compilationUnit.Span, descendIntoTrivia: true))
|
||||
{
|
||||
TriviaPopulator.ExtractTrivia(cx, trivia);
|
||||
CommentPopulator.ExtractComment(cx, trivia);
|
||||
}
|
||||
|
||||
foreach (var trivia in compilationUnit.GetLeadingTrivia())
|
||||
{
|
||||
TriviaPopulator.ExtractTrivia(cx, trivia);
|
||||
CommentPopulator.ExtractComment(cx, trivia);
|
||||
}
|
||||
|
||||
foreach (var trivia in compilationUnit.GetTrailingTrivia())
|
||||
{
|
||||
TriviaPopulator.ExtractTrivia(cx, trivia);
|
||||
CommentPopulator.ExtractComment(cx, trivia);
|
||||
}
|
||||
}
|
||||
|
||||
public static void Extract(Context cx, SyntaxNode unit)
|
||||
{
|
||||
// Ensure that the file itself is populated in case the source file is totally empty
|
||||
Extraction.Entities.File.Create(cx, unit.SyntaxTree.FilePath);
|
||||
|
||||
((CSharpSyntaxNode)unit).Accept(new CompilationUnitVisitor(cx));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user