提交 2f66a553 编写于 作者: C Cyrus Najmabadi 提交者: Sam Harwell

Reorder conditions for clarity

上级 e83ff3ff
......@@ -805,12 +805,6 @@ private static bool CanReplace(ISymbol symbol)
if (memberAccess.Name == null || memberAccess.Expression == null)
return false;
if (memberAccess.Expression.IsKind(SyntaxKind.ThisExpression) &&
!SimplificationHelpers.ShouldSimplifyMemberAccessExpression(semanticModel, memberAccess.Name, optionSet))
{
return false;
}
// if this node is annotated as being a SpecialType, let's use this information.
if (memberAccess.HasAnnotations(SpecialTypeAnnotation.Kind))
{
......@@ -824,6 +818,12 @@ private static bool CanReplace(ISymbol symbol)
return true;
}
if (memberAccess.Expression.IsKind(SyntaxKind.ThisExpression) &&
!SimplificationHelpers.ShouldSimplifyMemberAccessExpression(semanticModel, memberAccess.Name, optionSet))
{
return false;
}
// if this node is on the left side, we could simplify to aliases
if (!memberAccess.IsRightSideOfDot())
{
......@@ -1052,9 +1052,11 @@ private static bool PreferPredefinedTypeKeywordInDeclarations(NameSyntax name, O
private static bool PreferPredefinedTypeKeywordInMemberAccess(ExpressionSyntax expression, OptionSet optionSet, SemanticModel semanticModel)
{
if (!SimplificationHelpers.PreferPredefinedTypeKeywordInMemberAccess(optionSet, semanticModel.Language))
return false;
return (IsInMemberAccessContext(expression) || InsideCrefReference(expression)) &&
!InsideNameOfExpression(expression, semanticModel) &&
SimplificationHelpers.PreferPredefinedTypeKeywordInMemberAccess(optionSet, semanticModel.Language);
!InsideNameOfExpression(expression, semanticModel);
}
public static bool IsInMemberAccessContext(this ExpressionSyntax expression) =>
......
......@@ -969,11 +969,6 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.Extensions
Return False
End If
If memberAccess.Expression.IsKind(SyntaxKind.MeExpression) AndAlso
Not SimplificationHelpers.ShouldSimplifyMemberAccessExpression(semanticModel, memberAccess.Name, optionSet) Then
Return False
End If
If memberAccess.HasAnnotations(SpecialTypeAnnotation.Kind) Then
replacementNode = SyntaxFactory.PredefinedType(
SyntaxFactory.Token(
......@@ -984,6 +979,11 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.Extensions
Return True
End If
If memberAccess.Expression.IsKind(SyntaxKind.MeExpression) AndAlso
Not SimplificationHelpers.ShouldSimplifyMemberAccessExpression(semanticModel, memberAccess.Name, optionSet) Then
Return False
End If
If Not memberAccess.IsRightSideOfDot() Then
Dim aliasReplacement As IAliasSymbol = Nothing
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册