@@ -26,11 +26,10 @@ namespace ICSharpCode.CodeConverter.CSharp
2626 internal class VisualBasicEqualityComparison
2727 {
2828 private readonly SemanticModel _semanticModel ;
29- private readonly HashSet < string > _extraUsingDirectives ;
3029
3130 public VisualBasicEqualityComparison ( SemanticModel semanticModel , HashSet < string > extraUsingDirectives )
3231 {
33- _extraUsingDirectives = extraUsingDirectives ;
32+ ExtraUsingDirectives = extraUsingDirectives ;
3433 _semanticModel = semanticModel ;
3534 }
3635
@@ -43,6 +42,8 @@ public enum RequiredType
4342
4443 public bool OptionCompareTextCaseInsensitive { get ; set ; }
4544
45+ public HashSet < string > ExtraUsingDirectives { get ; }
46+
4647 public RequiredType GetObjectEqualityType ( VBSyntax . BinaryExpressionSyntax node , TypeInfo leftType , TypeInfo rightType )
4748 {
4849 var typeInfos = new [ ] { leftType , rightType } ;
@@ -191,7 +192,7 @@ private static ExpressionSyntax NegateIfNeeded(VBSyntax.BinaryExpressionSyntax n
191192 public ( ExpressionSyntax csLeft , ExpressionSyntax csRight ) AdjustForVbStringComparison ( VBSyntax . ExpressionSyntax vbLeft , ExpressionSyntax csLeft , TypeInfo lhsTypeInfo , VBSyntax . ExpressionSyntax vbRight , ExpressionSyntax csRight , TypeInfo rhsTypeInfo )
192193 {
193194 if ( OptionCompareTextCaseInsensitive ) {
194- _extraUsingDirectives . Add ( "System.Globalization" ) ;
195+ ExtraUsingDirectives . Add ( "System.Globalization" ) ;
195196 var compareOptions = SyntaxFactory . Argument ( GetCompareTextCaseInsensitiveCompareOptions ( ) ) ;
196197 var compareString = SyntaxFactory . InvocationExpression ( ValidSyntaxFactory . MemberAccess ( nameof ( CultureInfo ) , nameof ( CultureInfo . CurrentCulture ) ,
197198 nameof ( CultureInfo . CompareInfo ) , nameof ( CompareInfo . Compare ) ) ,
@@ -209,7 +210,7 @@ private static ExpressionSyntax NegateIfNeeded(VBSyntax.BinaryExpressionSyntax n
209210
210211 public ExpressionSyntax GetFullExpressionForVbObjectComparison ( VBSyntax . BinaryExpressionSyntax node , ExpressionSyntax lhs , ExpressionSyntax rhs )
211212 {
212- _extraUsingDirectives . Add ( "Microsoft.VisualBasic.CompilerServices" ) ;
213+ ExtraUsingDirectives . Add ( "Microsoft.VisualBasic.CompilerServices" ) ;
213214 var optionCompareTextCaseInsensitive = SyntaxFactory . Argument ( SyntaxFactory . LiteralExpression ( OptionCompareTextCaseInsensitive ? SyntaxKind . TrueKeyword : SyntaxKind . FalseLiteralExpression ) ) ;
214215 var compareObject = SyntaxFactory . InvocationExpression ( ValidSyntaxFactory . MemberAccess ( nameof ( Operators ) , nameof ( Operators . ConditionalCompareObjectEqual ) ) ,
215216 SyntaxFactory . ArgumentList ( SyntaxFactory . SeparatedList ( new [ ]
0 commit comments