protected override Task<EvaluationResult> EvaluateImpl(SyntaxNode node, SemanticModel semanticModel, Solution solution)
{
var counter = new MemberMetricsCalculator(semanticModel, solution, null);
var methodDeclaration = (MethodDeclarationSyntax)node;
var metric = counter.CalculateSlim(methodDeclaration);
return metric.MaintainabilityIndex <= Threshold
? Task.FromResult(
new EvaluationResult
{
Snippet = node.ToFullString()
})
: Task.FromResult((EvaluationResult)null);
}