Skip to content

Commit d8b3cd2

Browse files
Pass through comparison and use invocation style
1 parent 2e1ee73 commit d8b3cd2

3 files changed

Lines changed: 6 additions & 3 deletions

File tree

CodeConverter/CSharp/CommonConversions.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ internal class CommonConversions
4141
public Document Document { get; }
4242
private readonly SemanticModel _semanticModel;
4343
public SyntaxGenerator CsSyntaxGenerator { get; }
44+
public VisualBasicEqualityComparison VisualBasicEqualityComparison { get; }
45+
4446
private readonly CSharpCompilation _csCompilation;
4547
private readonly ITypeContext _typeContext;
4648

@@ -49,14 +51,15 @@ internal class CommonConversions
4951

5052
public CommonConversions(Document document, SemanticModel semanticModel,
5153
TypeConversionAnalyzer typeConversionAnalyzer, SyntaxGenerator csSyntaxGenerator,
52-
CSharpCompilation csCompilation, ITypeContext typeContext)
54+
CSharpCompilation csCompilation, ITypeContext typeContext, VisualBasicEqualityComparison visualBasicEqualityComparison)
5355
{
5456
TypeConversionAnalyzer = typeConversionAnalyzer;
5557
Document = document;
5658
_semanticModel = semanticModel;
5759
CsSyntaxGenerator = csSyntaxGenerator;
5860
_csCompilation = csCompilation;
5961
_typeContext = typeContext;
62+
VisualBasicEqualityComparison = visualBasicEqualityComparison;
6063
}
6164

6265
public async Task<(IReadOnlyCollection<(VariableDeclarationSyntax Decl, ITypeSymbol Type)> Variables, IReadOnlyCollection<CSharpSyntaxNode> Methods)> SplitVariableDeclarationsAsync(

CodeConverter/CSharp/DeclarationNodeVisitor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ public DeclarationNodeVisitor(Document document, Compilation compilation, Semant
6161
TriviaConvertingDeclarationVisitor = new CommentConvertingVisitorWrapper(this, _semanticModel.SyntaxTree);
6262
var expressionEvaluator = new ExpressionEvaluator(semanticModel, _visualBasicEqualityComparison);
6363
var typeConversionAnalyzer = new TypeConversionAnalyzer(semanticModel, csCompilation, _extraUsingDirectives, _csSyntaxGenerator, expressionEvaluator);
64-
CommonConversions = new CommonConversions(document, semanticModel, typeConversionAnalyzer, csSyntaxGenerator, csCompilation, _typeContext);
64+
CommonConversions = new CommonConversions(document, semanticModel, typeConversionAnalyzer, csSyntaxGenerator, csCompilation, _typeContext, _visualBasicEqualityComparison);
6565
var expressionNodeVisitor = new ExpressionNodeVisitor(semanticModel, _visualBasicEqualityComparison, csCompilation, _typeContext, CommonConversions, _extraUsingDirectives);
6666
_triviaConvertingExpressionVisitor = expressionNodeVisitor.TriviaConvertingExpressionVisitor;
6767
_createMethodBodyVisitorAsync = expressionNodeVisitor.CreateMethodBodyVisitorAsync;

CodeConverter/CSharp/TypeConversionAnalyzer.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ public ExpressionSyntax AddExplicitConversion(Microsoft.CodeAnalysis.VisualBasic
5959

6060
public (ExpressionSyntax Expr, bool IsConst) AddExplicitConversion(Microsoft.CodeAnalysis.VisualBasic.Syntax.ExpressionSyntax vbNode, ExpressionSyntax csNode, TypeConversionKind conversionKind, bool addParenthesisIfNeeded = false, bool requiresConst = false, ITypeSymbol forceSourceType = null, ITypeSymbol forceTargetType = null)
6161
{
62-
var typeInfo = ModelExtensions.GetTypeInfo(_semanticModel, vbNode);
62+
var typeInfo = _semanticModel.GetTypeInfo(vbNode);
6363
var vbType = forceSourceType ?? typeInfo.Type;
6464
var vbConvertedType = forceTargetType ?? typeInfo.ConvertedType;
6565
bool resultConst = false;

0 commit comments

Comments
 (0)