diff --git a/StyleChecker/StyleChecker/Refactoring/NoUsingDeclaration/Analyzer.cs b/StyleChecker/StyleChecker/Refactoring/NoUsingDeclaration/Analyzer.cs index 7c50753..eae3d6b 100644 --- a/StyleChecker/StyleChecker/Refactoring/NoUsingDeclaration/Analyzer.cs +++ b/StyleChecker/StyleChecker/Refactoring/NoUsingDeclaration/Analyzer.cs @@ -110,7 +110,7 @@ static bool IsNewOperatorUsed(ExpressionSyntax s) || s is ImplicitObjectCreationExpressionSyntax; static ExpressionSyntax? ToNewExpr(VariableDeclaratorSyntax s) - => ((s.Initializer?.Value is { } value) + => ((s.Initializer?.Value is {} value) && IsNewOperatorUsed(value)) ? value : null; @@ -119,7 +119,7 @@ static bool CanUseUsingPotentially( IdentifierNameSyntax s, SeparatedSyntaxList variables, Func toTypeInfo) - => s.Identifier.Text is not "var" + => !s.IsVar /* Explicit declaration */ ? !variables.All(i => ToNewExpr(i) is not null) || !IsTrulyDisposable(toTypeInfo(s))