private IMemberMetric CalculateMemberMetricSlim(SyntaxNode syntaxNode)
{
var analyzer = new HalsteadAnalyzer();
var halsteadMetrics = analyzer.Calculate(syntaxNode);
var memberName = _nameResolver.TryResolveMemberSignatureString(syntaxNode);
var complexity = CalculateCyclomaticComplexity(syntaxNode);
var linesOfCode = CalculateLinesOfCode(syntaxNode);
var maintainabilityIndex = CalculateMaintainablityIndex(complexity, linesOfCode, halsteadMetrics);
var location = syntaxNode.GetLocation();
var lineNumber = location.GetLineSpan().StartLinePosition.Line;
var filePath = location.SourceTree == null ? string.Empty : location.SourceTree.FilePath;
var accessModifier = GetAccessModifier(syntaxNode);
return new MemberMetric(
filePath,
accessModifier,
halsteadMetrics,
lineNumber,
linesOfCode,
maintainabilityIndex,
complexity,
memberName,
new ITypeCoupling[0],
0,
0,
0,
null);
}