ArchiMetrics.CodeReview.Rules.Code.ServiceLocatorInvocationRule.EvaluateImpl C# (CSharp) Метод

EvaluateImpl() защищенный Метод

protected EvaluateImpl ( Microsoft.CodeAnalysis.SyntaxNode node ) : EvaluationResult
node Microsoft.CodeAnalysis.SyntaxNode
Результат EvaluationResult
		protected override EvaluationResult EvaluateImpl(SyntaxNode node)
		{
			var memberAccess = (MemberAccessExpressionSyntax)node;
			if (memberAccess.Expression.IsKind(SyntaxKind.SimpleMemberAccessExpression)
				&& ((MemberAccessExpressionSyntax)memberAccess.Expression).Expression.IsKind(SyntaxKind.IdentifierName)
				&& ((IdentifierNameSyntax)((MemberAccessExpressionSyntax)memberAccess.Expression).Expression).Identifier.ValueText == "ServiceLocator"
				&& memberAccess.Name.Identifier.ValueText == "Resolve")
			{
				var methodParent = FindMethodParent(node);
				var snippet = methodParent == null
					? FindClassParent(node).ToFullString()
					: methodParent.ToFullString();

				return new EvaluationResult
				{
					Snippet = snippet
				};
			}

			return null;
		}
	}
ServiceLocatorInvocationRule