protected override EvaluationResult EvaluateImpl(SyntaxNode node)
{
var parentClass = FindClassParent(node);
if (parentClass != null && parentClass.Modifiers.Any(SyntaxKind.PublicKeyword))
{
var propertyDeclaration = (PropertyDeclarationSyntax)node;
if (propertyDeclaration.Modifiers.Any(SyntaxKind.PublicKeyword))
{
var type = propertyDeclaration.Type as SimpleNameSyntax;
if (type != null && type.Identifier.ValueText != null
&& type.Identifier.ValueText.EndsWith(TypeIdentifier ?? string.Empty, StringComparison.InvariantCultureIgnoreCase))
{
return new EvaluationResult
{
Snippet = parentClass.ToFullString()
};
}
}
}
return null;
}
}