public override void VisitMemberAccessExpression(MemberAccessExpressionSyntax node) { // Dong Xie: node.Name.GetText() if (node.Name.GetText().ToString() != PublishKeyword) { return; } PublicationCalls.Add(node); Publications.Add(node.Ancestors().OfType <InvocationExpressionSyntax>().Last()); }
public IEnumerable <string> DumpPublicationData() { if (!PublicationCalls.Any()) { yield break; } foreach (var pub in Publications) { yield return(string.Format("{0}.{1}.{2}:{3}{4}", pub.FirstAncestorOrSelf <NamespaceDeclarationSyntax>().Name.GetText(), pub.FirstAncestorOrSelf <ClassDeclarationSyntax>().Identifier.Text, pub.FirstAncestorOrSelf <MethodDeclarationSyntax>().Identifier.Text, pub.Span.ToString(), Environment.NewLine)); } }