using Microsoft.CodeAnalysis; using Microsoft.CodeAnalysis.CSharp.Syntax; using System.Collections.Generic; using System.Linq; namespace XFEExtension.NetCore.AutoPath.Analyzer.Generator { public class AutoPathSyntaxReceiver : ISyntaxReceiver { public List CandidateFields { get; } = new List(); public void OnVisitSyntaxNode(SyntaxNode syntaxNode) { if (syntaxNode is FieldDeclarationSyntax fieldDeclarationSyntax) { if (fieldDeclarationSyntax.AttributeLists.Any(PathPropertyAutoGenerator.IsAutoPathAttribute)) { CandidateFields.Add(fieldDeclarationSyntax); } } } } }