1 write to Type
Microsoft.CodeAnalysis (1)
Compilation\TypeInfo.cs (1)
45this.Type = type;
2902 references to Type
GenerateDocumentationAndConfigFiles (26)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
59return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
Metrics (27)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
256AddCoupledNamedTypesCore(builder, typeInfo.Type, context.WellKnownTypeProvider);
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
59return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
Metrics.Legacy (27)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
256AddCoupledNamedTypesCore(builder, typeInfo.Type, context.WellKnownTypeProvider);
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
59return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
Microsoft.Analyzers.Extra (1)
CallAnalysis\Fixers\LegacyLoggingFixer.cs (1)
404var type = e.SemanticModel?.GetTypeInfo(e.Syntax).Type!;
Microsoft.AspNetCore.App.Analyzers (1)
src\Shared\Roslyn\CodeAnalysisExtensions.cs (1)
206return typeInfo?.Type as INamedTypeSymbol;
Microsoft.AspNetCore.Mvc.Analyzers (1)
src\Shared\Roslyn\CodeAnalysisExtensions.cs (1)
206return typeInfo?.Type as INamedTypeSymbol;
Microsoft.AspNetCore.Mvc.Api.Analyzers (1)
src\Shared\Roslyn\CodeAnalysisExtensions.cs (1)
206return typeInfo?.Type as INamedTypeSymbol;
Microsoft.AspNetCore.SignalR.Client.SourceGenerator (1)
HubClientProxyGenerator.Parser.cs (1)
262symbol = argTypeInfo.Type;
Microsoft.CodeAnalysis (3)
Compilation\TypeInfo.cs (3)
53return object.Equals(this.Type, other.Type) 67Hash.Combine(this.Type,
Microsoft.CodeAnalysis.Analyzers (29)
MetaAnalyzers\DiagnosticAnalyzerAPIUsageAnalyzer.cs (1)
220AddUsedNamedTypeCore(typeInfo.Type, builder, ref hasAccessToTypeFromWorkspaceAssemblies);
MetaAnalyzers\DiagnosticAnalyzerFieldsAnalyzer.cs (1)
135ITypeSymbol? type = semanticModel.GetTypeInfo(typeNode, symbolContext.CancellationToken).Type;
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
256AddCoupledNamedTypesCore(builder, typeInfo.Type, context.WellKnownTypeProvider);
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
59return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
Microsoft.CodeAnalysis.AnalyzerUtilities (27)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
256AddCoupledNamedTypesCore(builder, typeInfo.Type, context.WellKnownTypeProvider);
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
59return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
Microsoft.CodeAnalysis.BannedApiAnalyzers (28)
RestrictedInternalsVisibleToAnalyzer.cs (1)
80VerifySymbol(typeInfo.Type as INamedTypeSymbol, name,
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
256AddCoupledNamedTypesCore(builder, typeInfo.Type, context.WellKnownTypeProvider);
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
59return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
Microsoft.CodeAnalysis.CodeStyle (43)
src\Analyzers\Core\Analyzers\ForEachCast\AbstractForEachCastDiagnosticAnalyzer.cs (1)
73var collectionType = semanticModel.GetTypeInfo(syntaxFacts.GetExpressionOfForeachStatement(node), cancellationToken).Type;
src\Analyzers\Core\Analyzers\SimplifyBooleanExpression\AbstractSimplifyConditionalDiagnosticAnalyzer.cs (1)
154typeInfo.Type?.SpecialType == SpecialType.System_Boolean &&
src\Analyzers\Core\Analyzers\SimplifyLinqExpression\AbstractSimplifyLinqExpressionDiagnosticAnalyzer.cs (1)
194return invocation.SemanticModel?.GetTypeInfo(expression).Type;
src\Analyzers\Core\Analyzers\UseCoalesceExpression\AbstractUseCoalesceExpressionForIfNullCheckDiagnosticAnalyzer.cs (1)
161var exprType = semanticModel.GetTypeInfo(initializer, cancellationToken).Type;
src\Analyzers\Core\Analyzers\UseCoalesceExpression\AbstractUseCoalesceExpressionForNullableTernaryConditionalCheckDiagnosticAnalyzer.cs (1)
115if (!nullableType.Equals(type.Type?.OriginalDefinition))
src\Analyzers\Core\Analyzers\UseCoalesceExpression\AbstractUseCoalesceExpressionForTernaryConditionalCheckDiagnosticAnalyzer.cs (1)
105conditionLeftIsNull ? conditionRightLow : conditionLeftLow, cancellationToken).Type;
src\Analyzers\Core\Analyzers\UseCollectionInitializer\AbstractObjectCreationExpressionAnalyzer.cs (1)
157if (typeInfo.Type is IDynamicTypeSymbol || typeInfo.ConvertedType is IDynamicTypeSymbol)
src\Analyzers\Core\Analyzers\UseCollectionInitializer\AbstractUseCollectionInitializerAnalyzer.cs (1)
216var type = this.SemanticModel.GetTypeInfo(_objectCreationExpression, cancellationToken).Type;
src\Analyzers\Core\Analyzers\UseCollectionInitializer\AbstractUseCollectionInitializerDiagnosticAnalyzer.cs (2)
149if (objectType.Type == null || !objectType.Type.AllInterfaces.Contains(ienumerableType))
src\Analyzers\Core\Analyzers\UseIsNullCheck\AbstractUseIsNullForReferenceEqualsDiagnosticAnalyzer.cs (1)
154var parameterType = semanticModel.GetTypeInfo(argumentExpression, cancellationToken).Type;
src\Analyzers\Core\Analyzers\UseNullPropagation\AbstractUseNullPropagationDiagnosticAnalyzer.cs (4)
192var whenPartType = semanticModel.GetTypeInfo(whenPartMatch, cancellationToken).Type; 196var type = semanticModel.GetTypeInfo(conditionalExpression, cancellationToken).Type; 221var memberType = semanticModel.GetTypeInfo(whenPartToCheck, cancellationToken).Type; 418var typeSymbol = semanticModel.GetTypeInfo(type, cancellationToken).Type;
src\Analyzers\Core\Analyzers\UseNullPropagation\AbstractUseNullPropagationDiagnosticAnalyzer_IfStatement.cs (2)
140var whenPartType = semanticModel.GetTypeInfo(whenPartMatch, cancellationToken).Type; 144var whenPartIsNullable = semanticModel.GetTypeInfo(whenPartMatch, cancellationToken).Type?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T;
src\Analyzers\Core\Analyzers\UseObjectInitializer\UseNamedMemberInitializerAnalyzer.cs (1)
126var type = this.SemanticModel.GetTypeInfo(_objectCreationExpression, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
Microsoft.CodeAnalysis.CodeStyle.Fixes (16)
src\Analyzers\Core\CodeFixes\AddExplicitCast\AbstractAddExplicitCastCodeFixProvider.cs (1)
141var castType = semanticModel.GetTypeInfo(castTypeNode, cancellationToken).Type;
src\Analyzers\Core\CodeFixes\AddExplicitCast\Fixer.cs (1)
169&& semanticModel.GetTypeInfo(argumentExpression, cancellationToken).Type is ITypeSymbol argumentType
src\Analyzers\Core\CodeFixes\AddExplicitCast\InheritanceDistanceComparer.cs (1)
49var baseType = _semanticModel.GetTypeInfo(x.syntax).Type;
src\Analyzers\Core\CodeFixes\AddParameter\AbstractAddParameterCodeFixProvider.cs (4)
484if (argumentTypeInfo.Type == null && argumentTypeInfo.ConvertedType == null) 540if (parameterType.Equals(argumentTypeInfo.Type) || parameterType.Equals(argumentTypeInfo.ConvertedType)) 561if (argumentTypeInfo.Type != null) 563var conversion = compilation.ClassifyCommonConversion(argumentTypeInfo.Type, parameterType);
src\Analyzers\Core\CodeFixes\GenerateMember\AbstractGenerateMemberService.cs (8)
118if (typeInfo.Type is IPointerTypeSymbol pointerType) 132typeToGenerateIn = attributeType.Type as INamedTypeSymbol; 137typeToGenerateIn = semanticModel.GetTypeInfo(initializedObject, cancellationToken).Type as INamedTypeSymbol; 156typeToGenerateIn = semanticModel.GetTypeInfo(target, cancellationToken).Type as INamedTypeSymbol; 193typeToGenerateIn = typeInfo.Type is ITypeParameterSymbol typeParameter 195: typeInfo.Type as INamedTypeSymbol; 198isColorColorCase = typeInfo.Type != null && semanticInfo.Symbol != null && semanticInfo.Symbol.Name == typeInfo.Type.Name;
src\Analyzers\Core\CodeFixes\RemoveUnusedParametersAndValues\AbstractRemoveUnusedValuesCodeFixProvider.cs (1)
601var type = semanticModel.GetTypeInfo(node, cancellationToken).Type;
Microsoft.CodeAnalysis.CSharp (2)
SymbolDisplay\SymbolDisplayVisitor_Minimal.cs (2)
257queryBody.SelectOrGroup.Span.End - 1, identifierName, SpeculativeBindingOption.BindAsExpression).Type; 263type = SemanticModelOpt.GetTypeInfo(identifier).Type;
Microsoft.CodeAnalysis.CSharp.CodeStyle (85)
src\Analyzers\CSharp\Analyzers\InvokeDelegateWithConditionalAccess\InvokeDelegateWithConditionalAccessAnalyzer.cs (2)
90if (syntaxContext.SemanticModel.GetTypeInfo(invocationExpression.Expression, syntaxContext.CancellationToken).Type is { TypeKind: TypeKind.FunctionPointer }) 157var type = context.SemanticModel.GetTypeInfo(expression, context.CancellationToken).Type;
src\Analyzers\CSharp\Analyzers\SimplifyLinqExpression\CSharpSimplifyLinqTypeCheckAndCastDiagnosticAnalyzer.cs (2)
85whereType = semanticModel.GetTypeInfo(whereTypeSyntax, cancellationToken).Type; 201var castType = semanticModel.GetTypeInfo(castTypeArgument, cancellationToken).Type;
src\Analyzers\CSharp\Analyzers\UseCollectionExpression\CSharpUseCollectionExpressionForFluentDiagnosticAnalyzer.cs (4)
171var expressionType = semanticModel.GetTypeInfo(memberAccess.Expression, cancellationToken).Type; 238var argumentType = semanticModel.GetTypeInfo(objectCreation.ArgumentList.Arguments[0].Expression, cancellationToken).Type; 327var type = semanticModel.GetTypeInfo(expression, cancellationToken).Type; 393var type = state.SemanticModel.GetTypeInfo(memberAccess.Expression, cancellationToken).Type;
src\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (7)
113if (originalTypeInfo.Type is IErrorTypeSymbol) 130if (originalTypeInfo.Type != null && 131!originalTypeInfo.Type.Equals(originalTypeInfo.ConvertedType) && 146return IsConstructibleCollectionType(compilation, semanticModel.GetTypeInfo(parent, cancellationToken).Type); 195var type = originalTypeInfo.Type; 680semanticModel.GetTypeInfo(expression, cancellationToken).Type?.IsValueType == true; 1102var type = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
src\Analyzers\CSharp\Analyzers\UseCompoundAssignment\CSharpUseCompoundCoalesceAssignmentDiagnosticAnalyzer.cs (1)
159if (semanticModel.GetTypeInfo(testedExpression, cancellationToken).Type is IPointerTypeSymbol or IFunctionPointerTypeSymbol)
src\Analyzers\CSharp\Analyzers\UseDeconstruction\CSharpUseDeconstructionDiagnosticAnalyzer.cs (1)
164var type = semanticModel.GetTypeInfo(typeNode, cancellationToken).Type;
src\Analyzers\CSharp\Analyzers\UseImplicitObjectCreation\CSharpUseImplicitObjectCreationDiagnosticAnalyzer.cs (2)
146var leftType = semanticModel.GetTypeInfo(typeNode, cancellationToken).Type; 147var rightType = semanticModel.GetTypeInfo(objectCreation, cancellationToken).Type;
src\Analyzers\CSharp\Analyzers\UseIsNullCheck\CSharpUseIsNullCheckForCastAndEqualityOperatorDiagnosticAnalyzer.cs (2)
76if (semanticModel.GetTypeInfo(castExpression.Type).Type?.SpecialType == SpecialType.System_Object) 78var expressionType = semanticModel.GetTypeInfo(castExpression.Expression).Type;
src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpAsAndNullCheckDiagnosticAnalyzer.cs (3)
87var castType = semanticModel.GetTypeInfo(castExpression.Type).Type; 121var asType = semanticModel.GetTypeInfo(typeNode, cancellationToken).Type; 245if (rightType.Type is null or { NullableAnnotation: NullableAnnotation.Annotated })
src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpIsAndCastCheckDiagnosticAnalyzer.cs (1)
112var isType = semanticModel.GetTypeInfo(castExpression.Type).Type;
src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpUseNotPatternDiagnosticAnalyzer.cs (1)
82=> semanticModel.GetTypeInfo(type, cancellationToken).Type.IsNullable()
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\CodeStyle\TypeStyle\TypeStyleHelper.cs (1)
126if (semanticModel.GetTypeInfo(containingTypeName, cancellationToken).Type is not INamedTypeSymbol containingType)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\DefaultExpressionSyntaxExtensions.cs (2)
52var entityType = semanticModel.GetTypeInfo(typeSyntax, cancellationToken).Type; 53var defaultType = semanticModel.GetTypeInfo(defaultExpression.Type, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ExpressionSyntaxExtensions.cs (3)
388expressionTypes.Type.IsInlineArray()) 938type = semanticModel.GetTypeInfo(expression, cancellationToken).Type; 996=> semanticModel.GetTypeInfo(castExpression.Type, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (2)
74if (semanticModel.GetTypeInfo(varDecl.Type, cancellationToken).Type.IsSpanOrReadOnlySpan()) 376var potentialType = semanticModel.GetSpeculativeTypeInfo(expression.SpanStart, expression, SpeculativeBindingOption.BindAsTypeOrNamespace).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SemanticModelExtensions.cs (4)
115if (typeInfo.Type != null) 117symbol = typeInfo.Type; 420if (info.Type == null) 425return semanticModel.GenerateNameFromType(info.Type, CSharpSyntaxFacts.Instance, capitalize);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\TypeSyntaxExtensions.cs (1)
38var type = semanticModel.GetTypeInfo(typeSyntax).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SemanticFacts\CSharpSemanticFacts.cs (1)
375var type = semanticModel.GetTypeInfo(node, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (20)
128var enumType = semanticModel.GetTypeInfo(castExpression.Expression, cancellationToken).Type as INamedTypeSymbol; 129var castedType = semanticModel.GetTypeInfo(castExpression.Type, cancellationToken).Type; 163var enumType = semanticModel.GetTypeInfo(castExpression.Expression, cancellationToken).Type as INamedTypeSymbol; 164var castedType = semanticModel.GetTypeInfo(castExpression.Type, cancellationToken).Type; 168var parentCastType = semanticModel.GetTypeInfo(parentCast.Type, cancellationToken).Type; 507var castedExpressionType = originalSemanticModel.GetTypeInfo(castedExpressionNode, cancellationToken).Type; 508var isType = originalSemanticModel.GetTypeInfo(isExpression.Right, cancellationToken).Type; 623var castedType = originalSemanticModel.GetTypeInfo(castNode, cancellationToken).Type; 698var castType = semanticModel.GetTypeInfo(castNode, cancellationToken).Type; 954var castType = originalSemanticModel.GetTypeInfo(castExpression, cancellationToken).Type; 988var otherSideType = originalSemanticModel.GetTypeInfo(otherSide, cancellationToken).Type; 989var thisSideRewrittenType = rewrittenSemanticModel.GetTypeInfo(rewrittenExpression, cancellationToken).Type; 1034=> IsNullOrErrorType(info.Type) || IsNullOrErrorType(info.ConvertedType); 1159var castSideType = semanticModel.GetTypeInfo(castSide, cancellationToken).Type; 1160var castedExpressionType = semanticModel.GetTypeInfo(castExpression.Expression, cancellationToken).Type; 1164var otherSideType = semanticModel.GetTypeInfo(otherSide, cancellationToken).Type; 1182var castType = semanticModel.GetTypeInfo(castNode, cancellationToken).Type; 1183var castedExpressionType = semanticModel.GetTypeInfo(castedExpressionNode, cancellationToken).Type; 1224return typeInfo.Type?.Kind == SymbolKind.ArrayType; 1409var rewrittenType = rewrittenSemanticModel.GetTypeInfo(rewrittenExpression, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\SpeculationAnalyzer.cs (15)
386var originalExpressionType = originalExpressionTypeInfo.Type; 387var newExpressionType = newExpressionTypeInfo.Type; 435var originalCaseType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode, this.CancellationToken).Type; 436var newCaseType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode, this.CancellationToken).Type; 494if (!Equals(originalExprType.Type, replacedExprType.Type)) 545if (!Equals(originalExpressionTypeInfo.Type, newExpressionTypeInfo.Type)) 561var originalExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalAnonymousObjectMemberDeclarator.Expression, this.CancellationToken).Type; 562var newExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(replacedAnonymousObjectMemberDeclarator.Expression, this.CancellationToken).Type; 702var originalConvertedType = this.OriginalSemanticModel.GetTypeInfo(originalIsOrAsExpression.Right).Type; 703var newConvertedType = this.SpeculativeSemanticModel.GetTypeInfo(newIsOrAsExpression.Right).Type; 758SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.ConvertedType)) 785SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.ConvertedType)) 804SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.ConvertedType))
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpTypeStyleHelper.State.cs (3)
94var declaredTypeSymbol = semanticModel.GetTypeInfo(variableDeclaration.Type.StripRefIfNeeded(), cancellationToken).Type; 112? IsMadeOfSpecialTypes(semanticModel.GetTypeInfo(typeSyntax.StripRefIfNeeded()).Type) 152semanticModel.GetTypeInfo(typeSyntax).Type?.IsSpecialType() == true;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseExplicitTypeHelper.cs (2)
146return !initializerTypeInfo.Type.IsErrorType(); 155var declaredType = semanticModel.GetTypeInfo(typeName.StripRefIfNeeded(), cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseImplicitTypeHelper.cs (5)
175var declarationType = semanticModel.GetTypeInfo(declarationTypeNode, cancellationToken).Type; 185var newDeclarationType = newSemanticModel.GetTypeInfo(newDeclarationTypeNode, cancellationToken).Type; 258var declaredType = semanticModel.GetTypeInfo(typeName.StripRefIfNeeded(), cancellationToken).Type; 298var initializerType = semanticModel.GetTypeInfo(expression, cancellationToken).Type; 306var initializerType = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (49)
src\Analyzers\CSharp\CodeFixes\AddExplicitCast\CSharpAddExplicitCastCodeFixProvider.cs (2)
97var leftType = semanticModel.GetTypeInfo(assignmentExpression.Left).Type; 98var rightType = semanticModel.GetTypeInfo(assignmentExpression.Right).Type;
src\Analyzers\CSharp\CodeFixes\ConvertSwitchStatementToExpression\ConvertSwitchStatementToExpressionCodeFixProvider.Rewriter.cs (3)
194typeInfo.Type is not null && 195!Equals(typeInfo.ConvertedType, typeInfo.Type)) 197var conversion = _semanticModel.Compilation.ClassifyConversion(typeInfo.Type, typeInfo.ConvertedType);
src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordEngine.cs (1)
290=> iEquatable.Equals(semanticModel.GetTypeInfo(baseItem.Type, cancellationToken).Type));
src\Analyzers\CSharp\CodeFixes\FixReturnType\CSharpFixReturnTypeCodeFixProvider.cs (3)
77var returnedType = semanticModel.GetTypeInfo(returnedValue, cancellationToken).Type; 93var previousReturnType = semanticModel.GetTypeInfo(declarationTypeToFix, cancellationToken).Type; 167var type = semanticModel.GetTypeInfo(argumentExpression, cancellationToken).Type;
src\Analyzers\CSharp\CodeFixes\GenerateConstructor\CSharpGenerateConstructorService.cs (1)
158if (typeInfo.Type is INamedTypeSymbol typeSymbol)
src\Analyzers\CSharp\CodeFixes\GenerateMethod\GenerateDeconstructMethodCodeFixProvider.cs (2)
68type = model.GetTypeInfo(assignment.Right).Type; 73type = model.GetTypeInfo(deconstruction.GetRequiredParent()).Type;
src\Analyzers\CSharp\CodeFixes\GenerateParameterizedMember\CSharpGenerateConversionService.cs (3)
142typeToGenerateIn = document.SemanticModel.GetTypeInfo(castExpression.Type, cancellationToken).Type as INamedTypeSymbol; 144|| document.SemanticModel.GetTypeInfo(castExpression.Expression, cancellationToken).Type is not INamedTypeSymbol parameterSymbol 175|| document.SemanticModel.GetTypeInfo(expression, cancellationToken).Type is not INamedTypeSymbol parameterSymbol
src\Analyzers\CSharp\CodeFixes\GenerateParameterizedMember\CSharpGenerateDeconstructMethodService.cs (2)
53type: semanticModel.GetTypeInfo(((ConstantPatternSyntax)positionalPattern.Subpatterns[i].Pattern).Expression, cancellationToken).Type ?? semanticModel.Compilation.GetSpecialType(SpecialType.System_Object), 58var targetType = semanticModel.GetTypeInfo(target, cancellationToken: cancellationToken).Type;
src\Analyzers\CSharp\CodeFixes\GenerateParameterizedMember\CSharpGenerateMethodService.cs (1)
66typeToGenerateIn = semanticInfo.Type as INamedTypeSymbol;
src\Analyzers\CSharp\CodeFixes\GenerateParameterizedMember\CSharpGenerateParameterizedMemberService.cs (2)
117if (info.Type is ITypeParameterSymbol { TypeParameterKind: TypeParameterKind.Method } typeParameter) 154result.Add(typeInfo.Type ?? Document.SemanticModel.Compilation.ObjectType);
src\Analyzers\CSharp\CodeFixes\Iterator\CSharpAddYieldCodeFixProvider.cs (1)
98returnExpressionType = info.Type;
src\Analyzers\CSharp\CodeFixes\RemoveUnusedParametersAndValues\CSharpRemoveUnusedValuesCodeFixProvider.cs (1)
125semanticModel.GetTypeInfo(implicitObjectCreation).Type is { } type)
src\Analyzers\CSharp\CodeFixes\UseCoalesceExpression\CSharpUseCoalesceExpressionForIfNullStatementCheckCodeFixProvider.cs (3)
26var leftPartTypeSymbol = semanticModel.GetTypeInfo(expressionToCoalesce, cancellationToken).Type; 27var rightPartTypeSymbol = semanticModel.GetTypeInfo(rightAssignmentPart, cancellationToken).Type; 28var finalDestinationTypeSymbol = semanticModel.GetTypeInfo(leftAssignmentPart, cancellationToken).Type;
src\Analyzers\CSharp\CodeFixes\UseCompoundAssignment\CSharpUseCompoundCoalesceAssignmentCodeFixProvider.cs (1)
97var type = semanticModel.GetTypeInfo(coalesce, cancellationToken).Type;
src\Analyzers\CSharp\CodeFixes\UseExplicitArrayInExpressionTree\CSharpUseExplicitArrayInExpressionTreeCodeFixProvider.cs (1)
134a => a.Expression.Kind() != SyntaxKind.DefaultLiteralExpression && Equals(arrayElementType, semanticModel.GetTypeInfo(a.Expression).Type));
src\Analyzers\CSharp\CodeFixes\UsePatternCombinators\CSharpUsePatternCombinatorsCodeFixProvider.cs (2)
127var type = semanticModel.GetTypeInfo(expr).Type; 141var governingType = semanticModel.GetTypeInfo(p.Target.Syntax).Type.RemoveNullableIfPresent();
src\Analyzers\CSharp\CodeFixes\UsePatternMatching\CSharpAsAndNullCheckCodeFixProvider.cs (2)
141if (asExpressionTypeInfo.Type != null) 145var asType = asExpressionTypeInfo.Type.WithNullableAnnotation(NullableAnnotation.NotAnnotated);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTokenExtensions.cs (1)
693return typeInfo.Type.IsNumericType();
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ExpressionSyntaxExtensions.cs (2)
119SpeculativeBindingOption.BindAsTypeOrNamespace).Type; 176name.SpanStart, name, SpeculativeBindingOption.BindAsExpression).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\InternalExtensions.cs (4)
26return typeInfo.Type?.IsErrorType() == false ? typeInfo.Type : semanticModel.Compilation.ObjectType; 33if (typeInfo.Type != null && typeInfo.Type.SpecialType == SpecialType.System_Void)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpMoveDeclarationNearReferenceService.cs (1)
63return Equals(localSymbol.Type, rightType.Type);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpSemanticFactsService.cs (1)
135var type = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (8)
106var typeInferenceInfo = new TypeInferenceInfo(typeInfo.Type); 440if (info.Type is not INamedTypeSymbol type) 461if (info.Type is not INamedTypeSymbol type) 501if (typeInfo.Type != null && typeInfo.Type.IsEnumType()) 503return CreateResult(typeInfo.Type); 567if (info.Type is INamedTypeSymbol type) 1234return CreateResult(typeInfo.Type);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Utilities\NullableHelpers\NullableExtensions.cs (1)
13=> typeInfo.Type?.WithNullableAnnotation(typeInfo.Nullability.Annotation);
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (6)
CodeGeneration\SyntaxGeneratorTests.cs (1)
91Assert.Equal(SpecialType.System_String, typeInfo.Type.SpecialType);
SymbolKey\SymbolKeyTestBase.cs (5)
57ResolveAndVerifySymbol(typeinfo.Type ?? typeinfo.ConvertedType, sourceSymbol, sourceComp); 408else if (tinfo.Type != null && tinfo.Type.TypeKind != TypeKind.Delegate) 412list.Add(tinfo.Type); // NamedType with empty name 413foreach (var m in tinfo.Type.GetMembers())
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (255)
CodeGen\CodeGenAsyncMethodBuilderOverrideTests.cs (4)
898Assert.Null(firstLambda.Type); 902Assert.Null(secondLambda.Type); 950Assert.Null(firstLambda.Type); 954Assert.Null(secondLambda.Type);
CodeGen\CodeGenDeconstructTests.cs (64)
98Assert.Equal("(System.Int64 x, System.String y)", model.GetTypeInfo(lhs).Type.ToTestDisplayString()); 103Assert.Equal("C", model.GetTypeInfo(right).Type.ToTestDisplayString()); 1471var tuple1 = model.GetTypeInfo(xy).Type; 1475var tuple2 = model.GetTypeInfo(ab).Type; 1512var tupleType1 = model.GetTypeInfo(tuple1).Type; 1517var tupleType2 = model.GetTypeInfo(tuple1).Type; 1565var tupleType = model.GetTypeInfo(tuple).Type; 2690Assert.Equal("(System.Int64 x, (System.String y, System.String z))", model.GetTypeInfo(lhs).Type.ToTestDisplayString()); 3132Assert.Equal("(System.Int32 x1, (System.Int32 x2, System.String x3))", model.GetTypeInfo(lhs).Type.ToTestDisplayString()); 3137Assert.Null(model.GetTypeInfo(lhsNested).Type); 3181model.GetTypeInfo(lhs).Type.ToTestDisplayString()); 3186Assert.Equal("(System.Int32 x2, (System.Int32 x3, System.String x4))", model.GetTypeInfo(x234).Type.ToTestDisplayString()); 3191Assert.Null(model.GetTypeInfo(x34).Type); 3245model.GetTypeInfo(x123).Type.ToTestDisplayString()); 3250Assert.Equal("(System.Int32 x2, System.Int32 x3)", model.GetTypeInfo(x23).Type.ToTestDisplayString()); 3282Assert.Equal("(System.Int32 x1, (System.Int32 x2, System.String x3))", model.GetTypeInfo(lhs).Type.ToTestDisplayString()); 3288Assert.Equal("(System.Int32 x2, System.String x3)", model.GetTypeInfo(lhsNested).Type.ToTestDisplayString()); 3332Assert.Equal("(System.Int32 x1, System.Byte, (System.Int32 x2, System.String x3))", model.GetTypeInfo(lhs).Type.ToTestDisplayString()); 3338Assert.Equal("(System.Int32 x2, System.String x3)", model.GetTypeInfo(lhsNested).Type.ToTestDisplayString()); 3445Assert.Equal("(System.String x1, System.Byte x2, System.Int32 x3)", model.GetTypeInfo(lhs).Type.ToTestDisplayString()); 3449Assert.Null(model.GetTypeInfo(literal).Type); 3481Assert.Equal("(System.String x1, (System.Int32, System.Int32) x2)", model.GetTypeInfo(lhs).Type.ToTestDisplayString()); 3485Assert.Null(model.GetTypeInfo(literal).Type); 3491Assert.Equal("(System.Int32, System.Int32)", model.GetTypeInfo(nestedLiteral).Type.ToTestDisplayString()); 3605Assert.Equal(local.Type.GetPublicSymbol(), model.GetTypeInfo(reference).Type); 3624Assert.Equal(field.Type, model.GetTypeInfo(reference).Type); 4038Assert.Equal("(System.Int32 x1, System.Int32 x2)", model.GetTypeInfo(x12Var).Type.ToTestDisplayString()); 5741Assert.Equal("System.Byte", model.GetTypeInfo(x123Var.Type).Type.ToTestDisplayString()); 5783Assert.Equal("Script.var", model.GetTypeInfo(x123Var.Type).Type.ToTestDisplayString()); 5913Assert.Equal("System.Int32", model.GetTypeInfo(declaration1).Type.ToTestDisplayString()); 5921Assert.Equal("C", model.GetTypeInfo(declaration2).Type.ToTestDisplayString()); 5927Assert.Equal("(C, System.Int32 z)", model.GetTypeInfo(declaration3).Type.ToTestDisplayString()); 6002Assert.Equal("System.Int32", model.GetTypeInfo(discard).Type.ToTestDisplayString()); 6258Assert.Equal("System.Int32", model.GetTypeInfo(discard).Type.ToTestDisplayString()); 6311Assert.Equal("(System.Int64, System.Int32 x)", model.GetTypeInfo(tuple1).Type.ToTestDisplayString()); 6341Assert.Equal("(System.Int32, System.Int32 x)", model.GetTypeInfo(tuple1).Type.ToTestDisplayString()); 6396Assert.Null(model.GetTypeInfo(discard1).Type); 6400Assert.Null(model.GetTypeInfo(discard1).Type); 6401Assert.Equal("(System.Int32, System.String x)", model.GetTypeInfo(declaration1).Type.ToTestDisplayString()); 6406Assert.Equal("System.Int32", model.GetTypeInfo(discard2).Type.ToTestDisplayString()); 6410Assert.Equal("(System.String y, System.Int32 z)", model.GetTypeInfo(yz).Type.ToTestDisplayString()); 6415Assert.Equal("System.String", model.GetTypeInfo(y).Type.ToTestDisplayString()); 6446Assert.Equal("(System.Int32, System.String)", model.GetTypeInfo(tuple).Type.ToTestDisplayString()); 6564Assert.Equal("System.Int32", model.GetTypeInfo(discard1).Type.ToTestDisplayString()); 6874Assert.Equal("(System.String, System.Int32)", model.GetTypeInfo(tuple).Type.ToTestDisplayString()); 6937Assert.Equal("(System.Int32, System.Int32 x3)", model.GetTypeInfo(nestedDeclaration).Type.ToTestDisplayString()); 6942Assert.Equal("(System.String, (System.Int32, System.Int32 x3))", model.GetTypeInfo(tuple).Type.ToTestDisplayString()); 6978Assert.Null(model.GetTypeInfo(discard1).Type); 6981Assert.Equal("System.Int64", model.GetTypeInfo(declaration1).Type.ToTestDisplayString()); 6987Assert.Null(model.GetTypeInfo(discard2).Type); 6990Assert.Equal("System.Int32", model.GetTypeInfo(declaration2).Type.ToTestDisplayString()); 6996Assert.Equal("System.Int32", model.GetTypeInfo(discard3).Type.ToTestDisplayString()); 7000Assert.Equal("System.Int32", model.GetTypeInfo(discard3).Type.ToTestDisplayString()); 7005Assert.Null(model.GetTypeInfo(discard4).Type); 7009Assert.Equal("(System.String, System.Int32)", model.GetTypeInfo(nestedDeclaration).Type.ToTestDisplayString()); 7240Assert.Equal("(System.Int32 x1, System.Int32 z)", model.GetTypeInfo(lhs).Type.ToTestDisplayString()); 7356Assert.Equal("int", model.GetTypeInfo(x1Ref).Type.ToDisplayString()); 7361Assert.Equal("string[]", model.GetTypeInfo(x2Ref).Type.ToDisplayString()); 7395Assert.Equal("int", model.GetTypeInfo(x1Ref).Type.ToDisplayString()); 7431Assert.Equal("int", model.GetTypeInfo(x1Ref.First()).Type.ToDisplayString()); 7436Assert.Equal("string[]", model.GetTypeInfo(x2Ref.First()).Type.ToDisplayString()); 7522Assert.Equal("(System.Int32 x, (System.String y, System.Boolean z))", model.GetTypeInfo(lhs).Type.ToTestDisplayString()); 7565Assert.Equal("int", model.GetTypeInfo(x1Ref).Type.ToDisplayString()); 7569Assert.Equal("string", model.GetTypeInfo(x2Ref).Type.ToDisplayString());
CodeGen\CodeGenFunctionPointersTests.cs (2)
10800typeInfo.Type.ToTestDisplayString(includeNonNullable: false)); 10807Assert.Null(typeInfo.Type);
CodeGen\CodeGenLocalFunctionTests.cs (1)
166Assert.Equal("System.Object", info.Type.ToTestDisplayString());
CodeGen\CodeGenRefLocalTests.cs (6)
4047Assert.Equal("System.Int32", model.GetTypeInfo(type).Type.ToTestDisplayString()); 4052Assert.Null(model.GetTypeInfo(refVar).Type); 4084Assert.Equal("C", model.GetTypeInfo(type).Type.ToTestDisplayString()); 4091Assert.Null(model.GetTypeInfo(refVar).Type); 4118Assert.Equal("System.Int32", model.GetTypeInfo(type).Type.ToTestDisplayString()); 4123Assert.Null(model.GetTypeInfo(refInt).Type);
CodeGen\CodeGenTupleEqualityTests.cs (80)
373Assert.Equal("System.Int32", xSymbol.Type.ToTestDisplayString()); 377Assert.Equal("(System.Int32, System.Int32)", tupleXSymbol.Type.ToTestDisplayString()); 390Assert.Equal("System.Byte", ySymbol.Type.ToTestDisplayString()); 394Assert.Equal("(System.Byte, System.Byte)", tupleYSymbol.Type.ToTestDisplayString()); 684Assert.Null(symbol1.Type); 690Assert.Equal("(System.String, System.Int32)", symbol2.Type.ToTestDisplayString()); 722Assert.Equal("(System.Int32, System.Byte)", tTypeInfo.Type.ToTestDisplayString()); 732Assert.Equal("(System.Int64, System.Int32)", tupleTypeInfo.Type.ToTestDisplayString()); 796Assert.Null(tupleType1.Type); 801Assert.Null(tuple1NullTypeInfo.Type); 809Assert.Null(tupleType2.Type); 814Assert.Null(tuple2NullTypeInfo.Type); 861Assert.Equal("(System.Int32, System.Int64)", t1TypeInfo.Type.ToTestDisplayString()); 870Assert.Equal("(System.Int64, System.Int32)", tupleType.Type.ToTestDisplayString()); 878Assert.Equal("System.Int32", twoType.Type.ToTestDisplayString()); 909Assert.Equal("(System.Int32, System.UInt64)", t1TypeInfo.Type.ToTestDisplayString()); 918Assert.Equal("(System.Int64, System.Int32)", tupleType.Type.ToTestDisplayString()); 926Assert.Equal("System.Int32", twoType.Type.ToTestDisplayString()); 958Assert.Equal("(System.Int32, (System.Int64, System.String))", t1TypeInfo.Type.ToTestDisplayString()); 967Assert.Equal("(System.Int64, (System.Int32, System.String) t2)", tupleType.Type.ToTestDisplayString()); 974Assert.Equal("(System.Int32, System.String)", t2TypeInfo.Type.ToTestDisplayString()); 1004Assert.Null(tupleType.Type); 1012Assert.Null(lastTupleTypeInfo.Type); 1019Assert.Null(nullNullTypeInfo.Type); 1026Assert.Null(lastNullTypeInfo.Type); 1062Assert.Equal("(System.String, System.String)", info.Type.ToTestDisplayString()); 1096Assert.Equal("(System.String, System.String)?", info.Type.ToTestDisplayString()); 1128Assert.Equal("(System.String, System.String)?", info.Type.ToTestDisplayString()); 1159Assert.Equal("System.Int32", info.Type.ToTestDisplayString()); 1217Assert.Equal("S?", type.Type.ToTestDisplayString()); 1314Assert.Null(model.GetTypeInfo(lastTuple).Type); 1319Assert.Equal("System.String", model.GetTypeInfo(lastDefault).Type.ToTestDisplayString()); 1405Assert.Null(model.GetTypeInfo(nullLiteral2).Type); 1414Assert.Null(model.GetTypeInfo(defaultLiteral).Type); 1470Assert.Null(model.GetTypeInfo(defaultLiteral).Type); 1501Assert.Null(tupleType.Type); 1510Assert.Equal("(System.String, System.String)", tType.Type.ToTestDisplayString()); 1521Assert.Null(nestedTupleType.Type); 1532Assert.Null(nestedNullType.Type); 1562Assert.Null(symbol.Type); 1571Assert.Null(symbol.Type); 1597Assert.Equal("System.Int32", literalInfo.Type.ToTestDisplayString()); 1622Assert.Null(literalInfo.Type); 1628Assert.Null(nestedLiteralInfo.Type); 1634Assert.Equal("System.Int32", twoInfo.Type.ToTestDisplayString()); 1679Assert.Null(tupleType1.Type); 1687Assert.Null(tupleType2.Type); 1692Assert.Null(model.GetTypeInfo(firstLambda).Type); 1697Assert.Null(model.GetTypeInfo(methodGroup).Type); 1704verifyType("System.Func<System.Int32, System.Int32>", model.GetTypeInfo(secondLambda).Type, inferDelegate); 1779Assert.Equal("(System.String, System.String)", tupleType1.Type.ToTestDisplayString()); 1785Assert.Null(tupleType2.Type); 1921Assert.Null(tupleType1.Type); 1927Assert.Null(tupleType2.Type); 2578Assert.Equal("(System.Int32, System.Int32)", intTupleType.Type.ToTestDisplayString()); 2586Assert.Equal("(C, C)", lastTupleType.Type.ToTestDisplayString()); 2646Assert.Equal("(System.Int32, System.Int32)?", t1Type.Type.ToTestDisplayString()); 3282Assert.Equal("(System.Int32, System.Int32)?", nt1Type.Type.ToTestDisplayString()); 3288Assert.Equal("(System.Int32, System.Int32)?", nt2Type.Type.ToTestDisplayString()); 3688Assert.Equal("(System.Int32, System.Int32)?", nt1Type.Type.ToTestDisplayString()); 3694Assert.Equal("(System.Int32, System.Int32)?", nt2Type.Type.ToTestDisplayString()); 3812Assert.Equal("(System.Int32, System.Int32)?", nt1Type.Type.ToTestDisplayString()); 3818Assert.Equal("(System.Byte, System.Int64)?", nt2Type.Type.ToTestDisplayString()); 3915Assert.Equal("(C, System.Int32)?", nt1Type.Type.ToTestDisplayString()); 3921Assert.Equal("(System.Int32, C)?", nt2Type.Type.ToTestDisplayString()); 4040Assert.Equal("(System.Int32, System.Int32)", tupleType.Type.ToTestDisplayString()); 4046Assert.Equal("(System.Byte, System.Int32)?", ntType.Type.ToTestDisplayString()); 4088Assert.Equal("(System.Int32, System.Int32)", tupleType.Type.ToTestDisplayString()); 4094Assert.Equal("(C, System.Int32)?", ntType.Type.ToTestDisplayString()); 4187Assert.Null(nullType.Type); 4280Assert.Equal("System.ValueTuple<System.Int32?>", left.Type.ToTestDisplayString()); 4282Assert.True(left.Type.IsTupleType); 5127Assert.Equal("(System.Int32 Alice, (System.Int32 Bob, System.Int32))", leftInfo.Type.ToTestDisplayString()); 5133Assert.Equal("(System.Int32 Bob, (System.Int32, System.Int32 Other))", rightInfo.Type.ToTestDisplayString()); 5164Assert.Equal("(System.String, (System.Byte, System.Int64))", leftCastInfo.Type.ToTestDisplayString()); 5172Assert.Null(leftTupleInfo.Type); 5180Assert.Null(leftNullInfo.Type); 5188Assert.Equal("(System.Int32, System.Int64)", leftNestedTupleInfo.Type.ToTestDisplayString()); 5195Assert.Equal("(System.String, (System.Int64, System.Byte))", rightCastInfo.Type.ToTestDisplayString()); 5202Assert.Null(rightTupleInfo.Type);
CodeGen\CodeGenTupleTest.cs (96)
1613Assert.Equal("(System.Int32, System.String, System.Int32 c)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 3471model.GetTypeInfo(node).Type.ToTestDisplayString()); 3639var type = (INamedTypeSymbol)model.GetTypeInfo(node).Type; 3689var yType = (INamedTypeSymbol)model.GetTypeInfo(yTuple).Type; 3706Assert.Equal("(System.Int32 x, System.Int32 b)", model.GetTypeInfo(zTuple).Type.ToTestDisplayString()); 3936model.GetTypeInfo(yTuple).Type.ToTestDisplayString()); 3939Assert.Equal("(System.Int32 x, System.Int32 b)", model.GetTypeInfo(zTuple).Type.ToTestDisplayString()); 3942Assert.Equal("(System.String, System.Int32 value)", model.GetTypeInfo(tTuple).Type.ToTestDisplayString()); 3995model.GetTypeInfo(yTuple).Type.ToTestDisplayString()); 4157Assert.Equal("(System.String, System.Int32)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 7572Assert.Null(model.GetTypeInfo(tuple1).Type); 7581Assert.Null(model.GetTypeInfo(tuple2).Type); 7590Assert.Null(model.GetTypeInfo(tuple3).Type); 7638Assert.Null(model.GetTypeInfo(tuple).Type); 8295Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8327Assert.Equal("System.Int32", model.GetTypeInfo(l11).Type.ToTestDisplayString()); 8334Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8341Assert.Equal("System.Int32", model.GetTypeInfo(element).Type.ToTestDisplayString()); 8346Assert.Equal("System.String", model.GetTypeInfo(element).Type.ToTestDisplayString()); 8352Assert.Equal("(System.Int16 c, System.String d)?", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8382Assert.Equal("(System.Int32, System.String)", typeInfo.Type.ToTestDisplayString()); 8410Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8439Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8446Assert.Equal("System.Int32", model.GetTypeInfo(element).Type.ToTestDisplayString()); 8451Assert.Equal("System.String", model.GetTypeInfo(element).Type.ToTestDisplayString()); 8457Assert.Equal("(System.Int16 c, System.String d)", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8487Assert.Equal("(System.Int64 c, System.String d)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8494Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8521Assert.Equal("(System.Int64 c, System.String d)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8528Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8554Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8583Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8590Assert.Equal("System.Int32", model.GetTypeInfo(element).Type.ToTestDisplayString()); 8595Assert.Equal("System.String", model.GetTypeInfo(element).Type.ToTestDisplayString()); 8601Assert.Equal("(System.Int32 c, System.String d)?", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8630Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8636Assert.Equal("(System.Int32 c, System.String d)", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8665Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8694Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8723Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8754Assert.Equal("System.Int32", model.GetTypeInfo(l11).Type.ToTestDisplayString()); 8761Assert.Equal("(System.Int32 e, System.String f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8768Assert.Equal("System.Int32", model.GetTypeInfo(element).Type.ToTestDisplayString()); 8773Assert.Equal("System.String", model.GetTypeInfo(element).Type.ToTestDisplayString()); 8779Assert.Equal("(System.Int16 c, System.String d)", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8808Assert.Null(model.GetTypeInfo(node).Type); 8839Assert.Null(model.GetTypeInfo(lnull).Type); 8846Assert.Null(model.GetTypeInfo(node).Type); 8852Assert.Equal("(System.Int16 c, System.String d)", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 8897Assert.Equal("(System.Int32 e, C.C1 f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8944Assert.Equal("(System.Int32 e, C.C1 f)", model.GetTypeInfo(node).Type.ToTestDisplayString()); 8951Assert.Equal("System.Int32", model.GetTypeInfo(element).Type.ToTestDisplayString()); 8956Assert.Equal("C.C1", model.GetTypeInfo(element).Type.ToTestDisplayString()); 8962Assert.Equal("(System.Int16 c, System.String d)", model.GetTypeInfo(node.Parent).Type.ToTestDisplayString()); 9018Assert.Equal("(System.Int32, System.String)", typeInfo.Type.ToTestDisplayString()); 9075Assert.Equal("(System.String, System.String)", typeInfo.Type.ToTestDisplayString()); 9147Assert.Equal("(System.Int32, System.String)", typeInfo.Type.ToTestDisplayString()); 9228Assert.Equal("(System.Int32, System.String)", typeInfo.Type.ToTestDisplayString()); 9311Assert.Null(typeInfo.Type); 13988Assert.Equal(typeInfo.Type, symbolInfo.Symbol); 13994Assert.True(typeInfo.Type.IsTupleType); 13996typeInfo.Type.ToTestDisplayString()); 13999Assert.True(typeInfo.Type.IsTupleType); 14001typeInfo.Type.ToTestDisplayString()); 14005Assert.False(typeInfo.Type.IsTupleType); 14006Assert.True(((INamedTypeSymbol)typeInfo.Type).IsUnboundGenericType); 16544Assert.Equal("(System.Int32, System.String)", typeInfo.Type.ToTestDisplayString()); 17215Assert.Equal("(System.Int32, System.String)", model.GetTypeInfo(n1).Type.ToTestDisplayString()); 17222Assert.Null(model.GetTypeInfo(n2).Type); 17229Assert.Equal("System.Int32", model.GetTypeInfo(n3).Type.ToTestDisplayString()); 17236Assert.Null(model.GetTypeInfo(n4).Type); 17243Assert.Null(model.GetTypeInfo(n5).Type); 17276Assert.Equal("(System.Int32, System.String)", model.GetTypeInfo(n1).Type.ToTestDisplayString()); 17283Assert.Null(model.GetTypeInfo(n2).Type); 17290Assert.Equal("System.Int32", model.GetTypeInfo(n3).Type.ToTestDisplayString()); 17297Assert.Null(model.GetTypeInfo(n4).Type); 17304Assert.Null(model.GetTypeInfo(n5).Type); 17335Assert.Equal("(System.Int32, System.String)", model.GetTypeInfo(n1).Type.ToTestDisplayString()); 17342Assert.Null(model.GetTypeInfo(n2).Type); 24202Assert.Equal("(System.Int32 elem1, System.Int32 elem2)", typeInfo.Type.ToTestDisplayString()); 24204Assert.Equal(symbolInfo.Symbol, typeInfo.Type); 25056Assert.Equal("(?, ?)", yType.Type.ToTestDisplayString()); 25061Assert.Equal("(System.Int32 a, ?)", zType.Type.ToTestDisplayString()); 25087Assert.Equal("(System.Int32 Alice, ?)", tupleType.Type.ToTestDisplayString()); 25704Assert.Null(model.GetTypeInfo(tuple).Type); 25709Assert.Equal("System.Int32?", model.GetTypeInfo(first).Type.ToTestDisplayString()); 25714Assert.Null(model.GetTypeInfo(second).Type); 25775Assert.Null(model.GetTypeInfo(tuple).Type); 25780Assert.Equal("System.Int32?", model.GetTypeInfo(first).Type.ToTestDisplayString()); 25785Assert.Null(model.GetTypeInfo(second).Type); 25840Assert.Null(model.GetTypeInfo(tuple).Type); 25845Assert.Equal("System.Int32?", model.GetTypeInfo(first).Type.ToTestDisplayString()); 25850Assert.Null(model.GetTypeInfo(second).Type); 25882Assert.Equal("(System.Int32, System.Int32)", model.GetTypeInfo(tuple).Type.ToTestDisplayString()); 25912Assert.Equal("(System.Int32? e, System.String)", model.GetTypeInfo(tuple).Type.ToTestDisplayString()); 26228Assert.Null(tupleSymbol.Type);
CodeGen\IndexAndRangeTests.cs (2)
3862Assert.Equal("C", model.GetTypeInfo(receivers[0]).Type.ToTestDisplayString()); 3865Assert.Equal("C", model.GetTypeInfo(receivers[1]).Type.ToTestDisplayString());
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (1)
Emit\NumericIntPtrTests.cs (1)
6022Assert.Equal(AsNative(sourceType), typeInfo.Type.ToString());
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (425)
Attributes\AttributeTests.cs (3)
11641Assert.Equal("System.Int32", model.GetTypeInfo(firstArgument.Expression).Type.ToTestDisplayString()); 11645Assert.Null(model.GetTypeInfo(secondArgument.Expression).Type); 11649Assert.Equal("System.Int32", model.GetTypeInfo(thirdArgument.Expression).Type.ToTestDisplayString());
FieldKeywordTests.cs (7)
619AssertEx.Equal("System.Collections.Generic.List<System.String!>?", fieldType.Type.ToTestDisplayString(includeNonNullable: true)); 620Assert.Equal(CodeAnalysis.NullableAnnotation.Annotated, fieldType.Type.NullableAnnotation); 668AssertEx.Equal("System.Collections.Generic.List<System.String!>!", fieldType.Type.ToTestDisplayString(includeNonNullable: true)); 669Assert.Equal(CodeAnalysis.NullableAnnotation.NotAnnotated, fieldType.Type.NullableAnnotation); 709AssertEx.Equal("System.Collections.Generic.List<System.String?>!", fieldType.Type.ToTestDisplayString(includeNonNullable: true)); 710Assert.Equal(CodeAnalysis.NullableAnnotation.NotAnnotated, fieldType.Type.NullableAnnotation); 9590return (model.GetConstantValue(value).Value, typeInfo.Type.ToTestDisplayString(), typeInfo.ConvertedType.ToTestDisplayString());
FirstClassSpanTests.cs (1)
2828Assert.Equal(sourceType, argType.Type.ToTestDisplayString());
Semantics\CollectionExpressionTests.cs (23)
16088Assert.Null(typeInfo.Type); 16164Assert.Null(typeInfo.Type); 16229Assert.Null(typeInfo.Type); 16298Assert.Null(typeInfo.Type); 16423Assert.Null(typeInfo.Type); 16503Assert.Null(typeInfo.Type); 16598Assert.Null(typeInfo.Type); 16941Assert.Equal(expectedType, typeInfo.Type?.ToTestDisplayString()); 30969Assert.Null(typeInfo2.Type); 31013Assert.Null(typeInfo2.Type); 31057Assert.Null(model.GetTypeInfo(collections[0]).Type); 31062Assert.Null(model.GetTypeInfo(collections[1]).Type); 31103Assert.Null(typeInfo2.Type); 31146Assert.Null(typeInfo2.Type); 31296Assert.Null(typeInfo2.Type); 31304Assert.Null(typeInfo3.Type); 31349Assert.Null(typeInfo2.Type); 31357Assert.Null(typeInfo3.Type); 31413Assert.Null(typeInfo2.Type); 31420Assert.Null(typeInfo3.Type); 31474Assert.Null(typeInfo2.Type); 31481Assert.Null(typeInfo3.Type); 44980Assert.Equal("MyCollection<System.Object>", info.Type.ToTestDisplayString());
Semantics\ExtensionOperatorsTests.cs (48)
695Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 794Assert.Equal("System.Int32", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 842Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 913Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 2195Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 4791Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 4909Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5081Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5135Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5183Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5231Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5280Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5328Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5377Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5428Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5483Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5597Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5669Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5740Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 5811Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 8421Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 8492Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 11601Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 11700Assert.Equal("System.Int32", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 11748Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 11819Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 13852Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 14937Assert.Equal("System.Boolean", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 14991Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 15161Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 18954Assert.Equal("C1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 19081Assert.Equal("C1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 19185Assert.Equal("System.Boolean", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 20436Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 20563Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 20743Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 20797Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 20845Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 20893Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 20942Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 20990Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 21039Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 21090Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 21145Assert.Equal("S2", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 21259Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 21331Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 21402Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 21473Assert.Equal("S1", model.GetTypeInfo(opNode).Type.ToTestDisplayString());
Semantics\ExtensionTests.cs (41)
2889AssertEx.Equal("System.Int32", model.GetTypeInfo(parameterSyntaxes[1].Type).Type.ToTestDisplayString()); 2892AssertEx.Equal("C", model.GetTypeInfo(parameterSyntaxes[2].Type).Type.ToTestDisplayString()); 16714AssertEx.Equal("System.Int32", model.GetTypeInfo(memberAccess).Type.ToTestDisplayString()); 16743AssertEx.Equal("System.Int32", model.GetTypeInfo(memberAccess[0]).Type.ToTestDisplayString()); 16746AssertEx.Equal("System.Int32", model.GetTypeInfo(memberAccess[1]).Type.ToTestDisplayString()); 16845AssertEx.Equal("System.Int32", model.GetTypeInfo(memberAccess).Type.ToTestDisplayString()); 16963AssertEx.Equal("System.Int32", model.GetTypeInfo(memberAccess).Type.ToTestDisplayString()); 18490AssertEx.Equal("System.String", model.GetTypeInfo(defaultExpr).Type.ToTestDisplayString()); 19074Assert.Null(model.GetTypeInfo(memberAccess).Type); 19106Assert.Null(model.GetTypeInfo(memberAccess).Type); 19138Assert.Null(model.GetTypeInfo(memberAccess).Type); 35549AssertEx.Equal("System.Int32", model.GetTypeInfo(literal).Type.ToTestDisplayString()); 35583AssertEx.Equal("Color", model.GetTypeInfo(color).Type.ToTestDisplayString()); 35607AssertEx.Equal("System.Int32", model.GetTypeInfo(literal).Type.ToTestDisplayString()); 35661AssertEx.Equal("Color", model.GetTypeInfo(color).Type.ToTestDisplayString()); 36952var dynamicType = model.GetTypeInfo(memberAccess.Expression).Type; 40408AssertEx.Equal("System.Action", model.GetTypeInfo(localDeclaration.Type).Type.ToTestDisplayString()); 40434Assert.True(model.GetTypeInfo(localDeclaration.Type).Type.IsErrorType()); 40457Assert.True(model.GetTypeInfo(localDeclaration.Type).Type.IsErrorType()); 40483AssertEx.Equal("System.Action", model.GetTypeInfo(localDeclaration.Type).Type.ToTestDisplayString()); 40507AssertEx.Equal("System.Action", model.GetTypeInfo(localDeclaration.Type).Type.ToTestDisplayString()); 40533Assert.True(model.GetTypeInfo(localDeclaration.Type).Type.IsErrorType()); 40559Assert.True(model.GetTypeInfo(localDeclaration.Type).Type.IsErrorType()); 40583AssertEx.Equal("System.Action", model.GetTypeInfo(localDeclaration.Type).Type.ToTestDisplayString()); 40608AssertEx.Equal("System.Action", model.GetTypeInfo(localDeclaration.Type).Type.ToTestDisplayString()); 40652Assert.True(model.GetTypeInfo(localDeclaration.Type).Type.IsErrorType()); 40693AssertEx.Equal("System.Action<System.Int32>", model.GetTypeInfo(localDeclaration.Type).Type.ToTestDisplayString()); 40808Assert.Equal("?", model.GetTypeInfo(localDeclaration.Type).Type.ToTestDisplayString()); 40833Assert.Equal("System.Int32", model.GetTypeInfo(localDeclaration.Type).Type.ToTestDisplayString()); 40880Assert.True(model.GetTypeInfo(localDeclaration.Type).Type.IsErrorType()); 46556AssertEx.Equal("System.Action?", model.GetTypeInfo(localDeclaration1.Type).Type.ToTestDisplayString()); 46562AssertEx.Equal("System.Action?", model.GetTypeInfo(localDeclaration2.Type).Type.ToTestDisplayString()); 46597AssertEx.Equal("System.Action?", model.GetTypeInfo(localDeclaration1.Type).Type.ToTestDisplayString()); 46603AssertEx.Equal("System.Action?", model.GetTypeInfo(localDeclaration2.Type).Type.ToTestDisplayString()); 46665AssertEx.Equal("System.Func<System.Object>?", model.GetTypeInfo(varDeclaration1.Type).Type.ToTestDisplayString(includeNonNullable: true)); 46673AssertEx.Equal("System.Func<System.Object>?", model.GetTypeInfo(varDeclaration2.Type).Type.ToTestDisplayString(includeNonNullable: true)); 46689AssertEx.Equal("System.Func<System.Object>?", model.GetTypeInfo(varDeclaration3.Type).Type.ToTestDisplayString(includeNonNullable: true)); 46801AssertEx.Equal("System.Func<System.Object>?", model.GetTypeInfo(localDeclaration1.Type).Type.ToTestDisplayString(includeNonNullable: true)); 46809AssertEx.Equal("System.Func<System.Object>?", model.GetTypeInfo(localDeclaration2.Type).Type.ToTestDisplayString(includeNonNullable: true)); 46901AssertEx.Equal("System.Func<System.Object!>?", model.GetTypeInfo(varDeclaration1.Type).Type.ToTestDisplayString(includeNonNullable: true)); 46908AssertEx.Equal("System.Func<System.Object!>?", model.GetTypeInfo(varDeclaration2.Type).Type.ToTestDisplayString(includeNonNullable: true));
Semantics\InlineArrayTests.cs (22)
2364Assert.Equal("C", typeInfo.Type.ToTestDisplayString()); 2399Assert.Equal("C", typeInfo.Type.ToTestDisplayString()); 2433Assert.Equal("C", typeInfo.Type.ToTestDisplayString()); 2513Assert.Equal("Buffer10<System.Int32>", typeInfo.Type.ToTestDisplayString()); 2523Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 6038Assert.Equal("Buffer10<System.Int32>", typeInfo.Type.ToTestDisplayString()); 6204Assert.Equal("Buffer10<System.Int32>", typeInfo.Type.ToTestDisplayString()); 6214Assert.Equal("System.Span<System.Int32>", typeInfo.Type.ToTestDisplayString()); 8128Assert.True(typeInfo.Type.IsErrorType()); 8846Assert.Equal("Buffer10<System.Int32>", typeInfo.Type.ToTestDisplayString()); 8856Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 9214Assert.Equal("Buffer10<System.Int32>", typeInfo.Type.ToTestDisplayString()); 10558Assert.Equal("Buffer10<System.Int32>", typeInfo.Type.ToTestDisplayString()); 10568Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 11302Assert.Equal("Buffer10<System.Int32>", typeInfo.Type.ToTestDisplayString()); 11312Assert.Equal("System.ReadOnlySpan<System.Int32>", typeInfo.Type.ToTestDisplayString()); 15219Assert.Equal("Buffer10<System.Int32>", typeInfo.Type.ToTestDisplayString()); 15226Assert.Equal("Buffer10<System.Int32>", typeInfo.Type.ToTestDisplayString()); 16506Assert.Equal("Buffer10<System.Int32>", typeInfo.Type.ToTestDisplayString()); 18594Assert.Equal("Buffer4<System.Int32>", typeInfo.Type.ToTestDisplayString()); 18920Assert.Equal("Buffer4<System.Int32>", typeInfo.Type.ToTestDisplayString()); 19257Assert.Equal("Buffer4<System.Int32>", typeInfo.Type.ToTestDisplayString());
Semantics\OutVarTests.cs (86)
992Assert.Equal(local.Type, model.GetTypeInfo(reference).Type); 1015Assert.Equal(expectedType, typeInfo.Type); 1051Assert.Equal(expected, typeInfo.Type); 4011Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 5117Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 8811Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 9650Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 10218Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 10867Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 13347Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 13746Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 14259Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14306Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14355Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14397Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14439Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14484Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14526Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14570Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14574Assert.Equal("System.Boolean", model.GetTypeInfo(zRef).Type.ToTestDisplayString()); 14620Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14674Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14733Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14779Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14783Assert.Equal("System.Boolean", model.GetTypeInfo(zRef).Type.ToTestDisplayString()); 14829Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 14833Assert.Equal("System.Boolean", model.GetTypeInfo(zRef).Type.ToTestDisplayString()); 15267Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 16545Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 17104Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 17540Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 18447Assert.Equal("System.Void", typeInfo.Type.ToTestDisplayString()); 19366Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref).Type.ToTestDisplayString()); 19678Assert.True(compilation.GetSemanticModel(tree).GetTypeInfo(x1Ref).Type.TypeKind == TypeKind.Error); 19721Assert.True(compilation.GetSemanticModel(tree).GetTypeInfo(x1Ref).Type.TypeKind == TypeKind.Error); 19834Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 19867Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 19900Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 19935Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 19970Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 20352Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 20358Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(x2Ref[0]).Type.ToTestDisplayString()); 20364Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(x3Ref[0]).Type.ToTestDisplayString()); 20370Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(x4Ref[0]).Type.ToTestDisplayString()); 20606Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(x1Ref).Type.ToTestDisplayString()); 20651Assert.True(compilation.GetSemanticModel(tree).GetTypeInfo(x4Ref).Type.TypeKind == TypeKind.Error); 20766Assert.True(model.GetTypeInfo(x1Ref).Type.TypeKind == TypeKind.Error); 20769Assert.True(model.GetTypeInfo(x2Ref).Type.TypeKind == TypeKind.Error); 20772Assert.True(model.GetTypeInfo(x3Ref).Type.TypeKind == TypeKind.Error); 20775Assert.True(model.GetTypeInfo(x4Ref).Type.TypeKind == TypeKind.Error); 21298Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 21406Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 21410Assert.True(((ITypeSymbol)model.GetTypeInfo(zRef).Type).IsErrorType()); 22710Assert.True(((ITypeSymbol)model.GetTypeInfo(reference).Type).IsErrorType()); 32768Assert.Equal(local.Type, model.GetTypeInfo(reference).Type); 32941Assert.Equal("System.String", model.GetTypeInfo(x1Ref).Type.ToTestDisplayString()); 32969Assert.Null(model.GetTypeInfo(discard1).Type); 32973Assert.Equal("System.Int32", model.GetTypeInfo(declaration1).Type.ToTestDisplayString()); 32978Assert.Null(model.GetTypeInfo(discard2).Type); 32982Assert.Equal("System.Int32", model.GetTypeInfo(declaration2).Type.ToTestDisplayString()); 32989Assert.Equal("System.Int32", model.GetTypeInfo(discard3).Type.ToTestDisplayString()); 33057Assert.Equal("System.Int32", model.GetTypeInfo(declaration1).Type.ToTestDisplayString()); 33063Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 33073Assert.Equal("System.Int32", model.GetTypeInfo(declaration2).Type.ToTestDisplayString()); 33079Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 33085Assert.Equal("System.Int32", model.GetTypeInfo(discard3).Type.ToTestDisplayString()); 33129Assert.Equal("System.Int64", model.GetTypeInfo(declaration1).Type.ToTestDisplayString()); 33135Assert.Equal("System.Int64", typeInfo.Type.ToTestDisplayString()); 33171Assert.Equal("System.Int32", model.GetTypeInfo(declaration1).Type.ToTestDisplayString()); 33177Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 33187Assert.Equal("System.Int32", model.GetTypeInfo(declaration2).Type.ToTestDisplayString()); 33193Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 33235Assert.Equal("alias1", model.GetTypeInfo(declaration1).Type.ToTestDisplayString()); 33241Assert.Equal("alias1", typeInfo.Type.ToTestDisplayString()); 33251Assert.Equal("var", model.GetTypeInfo(declaration2).Type.ToTestDisplayString()); 33252Assert.Equal(TypeKind.Class, model.GetTypeInfo(declaration2).Type.TypeKind); 33258Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 33259Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 33260Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 33684Assert.Equal("System.Int32", model.GetTypeInfo(z1).Type.ToTestDisplayString()); 35358Assert.Equal("var", model.GetTypeInfo(decl).Type.ToTestDisplayString()); // crashes 35394Assert.Equal("var", model.GetTypeInfo(decl).Type.ToTestDisplayString()); // crashes 35433Assert.Equal("var", model.GetTypeInfo(decl).Type.ToTestDisplayString()); // crashes 35463Assert.Equal("var", model.GetTypeInfo(decl).Type.ToTestDisplayString()); // crashes 35500Assert.Equal("var", model.GetTypeInfo(decl).Type.ToTestDisplayString()); // crashes 35550Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(xRef[0]).Type.ToTestDisplayString());
Semantics\ParamsCollectionTests.cs (8)
167Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 223Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 339Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 522Assert.Equal("System.Char", typeInfo.Type.ToTestDisplayString()); 667Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 1411Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 2535Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 2671Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString());
Semantics\PatternMatchingTestBase.cs (6)
133Assert.Equal(expectedType, typeInfo.Type); 314Assert.Equal(local.Type, model.GetTypeInfo(reference).Type); 380Assert.Null(model.GetTypeInfo(designation).Type); 394Assert.Equal(type, typeInfo.Type); 399Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 421Assert.True(model.GetTypeInfo(reference).Type.IsErrorType());
Semantics\PatternMatchingTests.cs (15)
3449Assert.Equal(SymbolKind.NamedType, typeInfo1.Type.Kind); 3450Assert.Equal("System.Boolean", typeInfo1.Type.ToTestDisplayString()); 3453Assert.Equal(SymbolKind.NamedType, typeInfo1.Type.Kind); 3454Assert.Equal("System.Int32", typeInfo1.Type.ToTestDisplayString()); 3459Assert.Equal(SymbolKind.NamedType, typeInfo2.Type.Kind); 3460Assert.Equal("System.Int32", typeInfo2.Type.ToTestDisplayString()); 3482Assert.True(((ITypeSymbol)compilation.GetSemanticModel(tree).GetTypeInfo(x1Ref).Type).IsErrorType()); 3488Assert.True(((ITypeSymbol)compilation.GetSemanticModel(tree).GetTypeInfo(x2Ref).Type).IsErrorType()); 4253Assert.Equal("System.Collections.Generic.IEnumerable<System.String>", model.GetTypeInfo(x2Ref).Type.ToTestDisplayString()); 4295Assert.Equal("System.Int32", model.GetTypeInfo(declaration1).Type.ToTestDisplayString()); 4296Assert.Equal("System.Int32", model.GetTypeInfo(declaration1.Type).Type.ToTestDisplayString()); 4309Assert.Equal("System.Int32", model.GetTypeInfo(declaration3).Type.ToTestDisplayString()); 4310Assert.Equal("System.Int32", model.GetTypeInfo(declaration3.Type).Type.ToTestDisplayString()); 6575Assert.Equal("System.Int32", model.GetTypeInfo(caseDefault.Pattern).Type.ToTestDisplayString()); 11398Assert.Equal(SpecialType.System_String, typeInfo.Type.SpecialType);
Semantics\PatternMatchingTests_ListPatterns.cs (9)
3712Assert.Null(typeInfo.Type); 3715Assert.Equal(type, typeInfo.Type.ToDisplayString()); 3758Assert.Equal(type, typeInfo.Type.ToDisplayString()); 3797Assert.Null(typeInfo.Type); 3801Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 3812Assert.Null(typeInfo.Type); 3816Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4486Assert.Null(typeInfo.Type); 4489Assert.Equal(type, typeInfo.Type.ToDisplayString());
Semantics\PatternMatchingTests_Scope.cs (38)
418Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 723Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 992Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 1296Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 5352Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 6482Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 6893Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 7222Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 7545Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 9651Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 10214Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 10730Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 11134Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 11182Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 11232Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 11275Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 11318Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 11364Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 11407Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 11451Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(yRef).Type.ToTestDisplayString()); 11454Assert.Equal("System.Boolean", compilation.GetSemanticModel(tree).GetTypeInfo(zRef).Type.ToTestDisplayString()); 11497Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(xRef).Type.ToTestDisplayString()); 11500Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(yRef).Type.ToTestDisplayString()); 11503Assert.Equal("System.Boolean", compilation.GetSemanticModel(tree).GetTypeInfo(zRef).Type.ToTestDisplayString()); 11549Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(xRef).Type.ToTestDisplayString()); 11556Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(yRef).Type.ToTestDisplayString()); 11612Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(xRef).Type.ToTestDisplayString()); 11615Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(yRef).Type.ToTestDisplayString()); 11667Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(y1Ref).Type.ToTestDisplayString()); 11670Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(z0Ref).Type.ToTestDisplayString()); 11673Assert.Equal("System.Boolean", compilation.GetSemanticModel(tree).GetTypeInfo(z1Ref).Type.ToTestDisplayString()); 11727Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(y1Ref).Type.ToTestDisplayString()); 11730Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(z0Ref).Type.ToTestDisplayString()); 11733Assert.Equal("System.Int32", compilation.GetSemanticModel(tree).GetTypeInfo(z1Ref).Type.ToTestDisplayString()); 11736Assert.Equal("System.Boolean", compilation.GetSemanticModel(tree).GetTypeInfo(z2Ref).Type.ToTestDisplayString()); 12156Assert.Equal("System.Int32", model.GetTypeInfo(x1Ref[0]).Type.ToTestDisplayString()); 12252Assert.Equal("System.Int32", model.GetTypeInfo(yRef).Type.ToTestDisplayString()); 12256Assert.True(model.GetTypeInfo(zRef).Type.IsErrorType());
Semantics\PatternMatchingTests2.cs (20)
748Assert.Equal("int", typeInfo.Type.ToDisplayString()); 2045Assert.Equal(SpecialType.System_Boolean, typeInfo.Type.SpecialType); 2086Assert.Equal(SpecialType.System_Boolean, typeInfo.Type.SpecialType); 2182Assert.Equal(ex.Type, typeInfo.Type.ToTestDisplayString()); 2273Assert.Equal("T1", ti.Type.ToTestDisplayString()); 2278Assert.Equal("T3", ti.Type.ToTestDisplayString()); 2283Assert.Equal("T4", ti.Type.ToTestDisplayString()); 2288Assert.Equal("T5", ti.Type.ToTestDisplayString()); 2317Assert.Equal("System.Object", ti.Type.ToTestDisplayString()); 2322Assert.Equal("System.Object", ti.Type.ToTestDisplayString()); 2327Assert.Equal("System.IComparable", ti.Type.ToTestDisplayString()); 2363Assert.Equal("System.Object", ti.Type.ToTestDisplayString()); 2368Assert.Equal("?", ti.Type.ToTestDisplayString()); 2369Assert.Equal(TypeKind.Error, ti.Type.TypeKind); 2374Assert.Equal("?", ti.Type.ToTestDisplayString()); 2375Assert.Equal(TypeKind.Error, ti.Type.TypeKind); 2380Assert.Equal("?", ti.Type.ToTestDisplayString()); 2381Assert.Equal(TypeKind.Error, ti.Type.TypeKind); 2387Assert.Equal("System.Object", ti.Type.ToTestDisplayString()); 2893Assert.Equal(expectedNaturalType, typeInfo.Type?.ToTestDisplayString());
Semantics\PatternMatchingTests3.cs (56)
4112Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4118Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4126Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4128Assert.Equal("System.Int32", model.GetTypeInfo(((ConstantPatternSyntax)pattern).Expression).Type.ToTestDisplayString()); 4134Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4140Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4147Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4155Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4161Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4170Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4176Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4183Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4190Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4196Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4202Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4208Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4215Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4222Assert.Equal("System.Char", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4228Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4234Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4241Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4248Assert.Equal("System.Char", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4254Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4260Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4266Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4273Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4280Assert.Equal("System.Char", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4339Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4345Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4353Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4355Assert.Equal("System.Int32", model.GetTypeInfo(((ConstantPatternSyntax)pattern).Expression).Type.ToTestDisplayString()); 4361Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4367Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4374Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4382Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4388Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4390Assert.Equal("System.Int32", model.GetTypeInfo(((ConstantPatternSyntax)pattern).Expression).Type.ToTestDisplayString()); 4396Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4404Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4410Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4417Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4424Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4430Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4436Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4442Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4449Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4456Assert.Equal("System.Char", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4462Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4468Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4475Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4482Assert.Equal("System.Char", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4488Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4494Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4500Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4507Assert.Equal("System.Object", model.GetTypeInfo(pattern).Type.ToTestDisplayString()); 4514Assert.Equal("System.Char", model.GetTypeInfo(pattern).Type.ToTestDisplayString());
Semantics\PatternMatchingTests5.cs (6)
1300Assert.Equal("C", xyType.Type.ToTestDisplayString()); 1308Assert.Equal("S?", xType.Type.ToTestDisplayString()); 1316Assert.Equal("C", yNameType.Type.ToTestDisplayString()); 1327Assert.Equal("S?", yxType.Type.ToTestDisplayString()); 1335Assert.Equal("C", yType.Type.ToTestDisplayString()); 1343Assert.Equal("S?", xNameType.Type.ToTestDisplayString());
Semantics\PatternSwitchTests.cs (5)
1512Assert.Equal("System.String", model.GetTypeInfo(sRef).Type.ToTestDisplayString()); 1514Assert.Equal("System.Object", model.GetTypeInfo(iRef).Type.ToTestDisplayString()); 1516Assert.Equal("System.String", model.GetTypeInfo(s2Ref).Type.ToTestDisplayString()); 1518Assert.Equal("System.Object", model.GetTypeInfo(i2Ref).Type.ToTestDisplayString()); 3276Assert.Equal(SpecialType.System_Boolean, type.Type.SpecialType);
Semantics\PrimaryConstructorTests.cs (3)
1218Assert.Equal("Base", model.GetTypeInfo(baseWithargs.Type).Type.ToTestDisplayString()); 2251Assert.Equal("Base", model.GetTypeInfo(baseWithargs.Type).Type.ToTestDisplayString()); 2433Assert.Equal("Base", model.GetTypeInfo(baseWithargs.Type).Type.ToTestDisplayString());
Semantics\RecordTests.cs (4)
8667Assert.True(c.ISymbol.Equals(typeInfo.Type)); 21264Assert.Equal("Base", model.GetTypeInfo(baseWithargs.Type).Type.ToTestDisplayString()); 22337Assert.Equal("Base", model.GetTypeInfo(baseWithargs.Type).Type.ToTestDisplayString()); 22519Assert.Equal("Base", model.GetTypeInfo(baseWithargs.Type).Type.ToTestDisplayString());
Symbols\UserDefinedCompoundAssignmentOperatorsTests.cs (24)
3140Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 3230Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 3688Assert.Equal("C1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 3791Assert.Equal("T", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 4222Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 4300Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 12045Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 12051Assert.Equal("C1", typeInfo.Type.ToTestDisplayString()); 12056Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 12158Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 12431Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 12532Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 13019Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 13096Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 13324Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 13399Assert.Equal("System.Void", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 13890Assert.Equal("C1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 14013Assert.Equal("T", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 14303Assert.Equal("C1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 14424Assert.Equal("T", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 14988Assert.Equal("C1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 15083Assert.Equal("T", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 15338Assert.Equal("C1", model.GetTypeInfo(opNode).Type.ToTestDisplayString()); 15431Assert.Equal("T", model.GetTypeInfo(opNode).Type.ToTestDisplayString());
Microsoft.CodeAnalysis.CSharp.EndToEnd.UnitTests (1)
EndToEndTests.cs (1)
618var type = model.GetTypeInfo(literal).Type;
Microsoft.CodeAnalysis.CSharp.Features (116)
AddImport\CSharpAddImportFeatureService.cs (2)
256return semanticModel.GetTypeInfo(node, cancellationToken).Type; 285return semanticModel.GetTypeInfo(fromClause.Expression, cancellationToken).Type;
Completion\CompletionProviders\AttributeNamedParameterCompletionProvider.cs (2)
225if (within != null && semanticModel.GetTypeInfo(attribute, cancellationToken).Type is INamedTypeSymbol attributeType) 241var attributeType = (INamedTypeSymbol?)semanticModel.GetTypeInfo(attribute, cancellationToken).Type;
Completion\CompletionProviders\AwaitCompletionProvider.cs (3)
84var returnType = semanticModel.GetTypeInfo(existingReturnType, cancellationToken).Type; 156return symbol is ITypeSymbol ? null : semanticModel.GetTypeInfo(memberAccessExpression, cancellationToken).Type; 165return semanticModel.GetTypeInfo(potentialAwaitableExpression, cancellationToken).Type;
Completion\CompletionProviders\CrefCompletionProvider.cs (1)
215var leftType = semanticModel.GetTypeInfo(parent.Container, cancellationToken).Type;
Completion\CompletionProviders\DeclarationName\DeclarationNameInfo.cs (3)
152if (typeInfo.Type != null) 157type: typeInfo.Type); 371var type = semanticModel.GetTypeInfo(typeSyntax, cancellationToken).Type;
Completion\CompletionProviders\DeclarationName\DeclarationNameRecommender.cs (1)
307var methodParameterType = semanticModel.GetTypeInfo(parameterType, cancellationToken).Type;
Completion\CompletionProviders\NamedParameterCompletionProvider.cs (4)
174if (semanticModel.GetTypeInfo(objectCreationExpression, cancellationToken).Type is INamedTypeSymbol type && within != null && type.TypeKind != TypeKind.Delegate) 190var expressionType = semanticModel.GetTypeInfo(elementAccessExpression.Expression, cancellationToken).Type; 242var type = semanticModel.GetTypeInfo(baseType.Type, cancellationToken).Type as INamedTypeSymbol; 258var expressionType = semanticModel.GetTypeInfo(invocationExpression.Expression, cancellationToken).Type as INamedTypeSymbol;
Completion\CompletionProviders\ObjectAndWithInitializerCompletionProvider.cs (3)
74var initializedType = semanticModel.GetTypeInfo(expression, cancellationToken).Type; 130return semanticModel.GetTypeInfo(parent, cancellationToken).Type; 145return semanticModel.GetTypeInfo(withExpression.Expression, cancellationToken).Type;
Completion\CompletionProviders\OverrideCompletionProvider.cs (1)
64returnType = semanticModel.GetTypeInfo(typeSyntax, cancellationToken).Type;
ConvertForEachToFor\CSharpConvertForEachToForCodeRefactoringProvider.cs (1)
69model.GetTypeInfo(foreachCollectionExpression, cancellationToken).Type ??
ConvertLinq\CSharpConvertLinqQueryToForEachProvider.cs (6)
431if (typeCheckMethod(_semanticModel.GetTypeInfo(expressionToVerifyType, _cancellationToken).Type) && 554if (returnTypeInfo.Type.OriginalDefinition?.SpecialType == SpecialType.System_Collections_Generic_IEnumerable_T) 556returnedType = returnTypeInfo.Type; 664var forEachStatementTypeSymbolType = _semanticModel.GetTypeInfo(forEachStatement.Type, _cancellationToken).Type; 666if (Equals(lastSelectExpressionTypeInfo.ConvertedType, lastSelectExpressionTypeInfo.Type) && 880if (_semanticModel.GetTypeInfo(selectClause.Expression, _cancellationToken).Type.ContainsAnonymousType())
Debugging\DataTipInfoGetter.cs (2)
40var type = semanticModel.GetTypeInfo(typeSyntax, cancellationToken).Type; 51var type = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
ExtractMethod\CSharpMethodExtractor.Analyzer.cs (4)
29if (info.Type is IErrorTypeSymbol) 32return info.Type == null || info.Type.SpecialType == SpecialType.System_Object 33? info.Type
ExtractMethod\CSharpMethodExtractor.PostProcessor.cs (2)
122var type = _semanticModel.GetSpeculativeTypeInfo(_contextPosition, statement.Declaration.Type, SpeculativeBindingOption.BindAsTypeOrNamespace).Type; 187var semanticInfo = _semanticModel.GetSpeculativeTypeInfo(_contextPosition, declarationStatement.Declaration.Type, SpeculativeBindingOption.BindAsTypeOrNamespace).Type;
ExtractMethod\CSharpSelectionResult.ExpressionResult.cs (4)
61return (model.GetTypeInfo(variableDeclExpression.Type, cancellationToken).Type, returnsByRef: false); 76return (model.GetTypeInfo(castExpression, cancellationToken).Type, returnsByRef: false); 122if (info.Type?.SpecialType == SpecialType.System_String && 129return !info.Type.IsObjectType() ? info.GetTypeWithAnnotatedNullability() : info.GetConvertedTypeWithAnnotatedNullability();
GenerateMember\GenerateVariable\CSharpGenerateVariableService.cs (1)
77typeToGenerateIn = info.Type as INamedTypeSymbol;
GenerateType\CSharpGenerateTypeService.cs (1)
434var expressionType = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
InlineHints\CSharpInlineTypeHintsService.cs (3)
37var type = semanticModel.GetTypeInfo(variableDeclaration.Type, cancellationToken).Type; 47var type = semanticModel.GetTypeInfo(declarationExpression.Type, cancellationToken).Type; 91var type = semanticModel.GetTypeInfo(implicitNew, cancellationToken).Type;
QuickInfo\CSharpSemanticQuickInfoProvider.cs (1)
168if (typeInfo.Type is { IsValueType: true })
SignatureHelp\AbstractGenericNameSignatureHelpProvider.cs (1)
62: semanticModel.GetTypeInfo(beforeDotExpression, cancellationToken).Type as INamespaceOrTypeSymbol;
SignatureHelp\AttributeSignatureHelpProvider.cs (1)
81if (semanticModel.GetTypeInfo(attribute, cancellationToken).Type is not INamedTypeSymbol attributeType)
SignatureHelp\ElementAccessExpressionSignatureHelpProvider.cs (2)
186expressionType = semanticModel.GetTypeInfo(memberAccessExpression.Expression, cancellationToken).Type; 198expressionType = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
SignatureHelp\InvocationExpressionSignatureHelpProvider.cs (2)
80var invokedType = semanticModel.GetTypeInfo(invocationExpression.Expression, cancellationToken).Type; 127var invokedType = semanticModel.GetTypeInfo(invocationExpression.Expression, cancellationToken).Type;
SignatureHelp\InvocationExpressionSignatureHelpProviderBase_MethodGroup.cs (1)
54throughType = semanticModel.GetTypeInfo(throughExpression, cancellationToken).Type;
SignatureHelp\ObjectCreationExpressionSignatureHelpProvider.cs (1)
70if (semanticModel.GetTypeInfo(objectCreationExpression, cancellationToken).Type is not INamedTypeSymbol type)
SignatureHelp\PrimaryConstructorBaseTypeSignatureHelpProvider.cs (1)
85if (semanticModel.GetTypeInfo(baseTypeSyntax.Type, cancellationToken).Type is not INamedTypeSymbol baseType)
Snippets\AbstractCSharpForLoopSnippetProvider.cs (1)
77var inlineExpressionType = inlineExpressionInfo.TypeInfo.Type;
Snippets\CSharpForEachLoopSnippetProvider.cs (1)
83typeInfo.Type!.CanBeAsynchronouslyEnumerated(semanticModel.Compilation))
Snippets\CSharpSnippetFunctionService.cs (1)
42var typeSymbol = model.GetTypeInfo(expressionNode, cancellationToken).Type;
src\Analyzers\CSharp\Analyzers\InvokeDelegateWithConditionalAccess\InvokeDelegateWithConditionalAccessAnalyzer.cs (2)
90if (syntaxContext.SemanticModel.GetTypeInfo(invocationExpression.Expression, syntaxContext.CancellationToken).Type is { TypeKind: TypeKind.FunctionPointer }) 157var type = context.SemanticModel.GetTypeInfo(expression, context.CancellationToken).Type;
src\Analyzers\CSharp\Analyzers\SimplifyLinqExpression\CSharpSimplifyLinqTypeCheckAndCastDiagnosticAnalyzer.cs (2)
85whereType = semanticModel.GetTypeInfo(whereTypeSyntax, cancellationToken).Type; 201var castType = semanticModel.GetTypeInfo(castTypeArgument, cancellationToken).Type;
src\Analyzers\CSharp\Analyzers\UseCollectionExpression\CSharpUseCollectionExpressionForFluentDiagnosticAnalyzer.cs (4)
171var expressionType = semanticModel.GetTypeInfo(memberAccess.Expression, cancellationToken).Type; 238var argumentType = semanticModel.GetTypeInfo(objectCreation.ArgumentList.Arguments[0].Expression, cancellationToken).Type; 327var type = semanticModel.GetTypeInfo(expression, cancellationToken).Type; 393var type = state.SemanticModel.GetTypeInfo(memberAccess.Expression, cancellationToken).Type;
src\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (7)
113if (originalTypeInfo.Type is IErrorTypeSymbol) 130if (originalTypeInfo.Type != null && 131!originalTypeInfo.Type.Equals(originalTypeInfo.ConvertedType) && 146return IsConstructibleCollectionType(compilation, semanticModel.GetTypeInfo(parent, cancellationToken).Type); 195var type = originalTypeInfo.Type; 680semanticModel.GetTypeInfo(expression, cancellationToken).Type?.IsValueType == true; 1102var type = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
src\Analyzers\CSharp\Analyzers\UseCompoundAssignment\CSharpUseCompoundCoalesceAssignmentDiagnosticAnalyzer.cs (1)
159if (semanticModel.GetTypeInfo(testedExpression, cancellationToken).Type is IPointerTypeSymbol or IFunctionPointerTypeSymbol)
src\Analyzers\CSharp\Analyzers\UseDeconstruction\CSharpUseDeconstructionDiagnosticAnalyzer.cs (1)
164var type = semanticModel.GetTypeInfo(typeNode, cancellationToken).Type;
src\Analyzers\CSharp\Analyzers\UseImplicitObjectCreation\CSharpUseImplicitObjectCreationDiagnosticAnalyzer.cs (2)
146var leftType = semanticModel.GetTypeInfo(typeNode, cancellationToken).Type; 147var rightType = semanticModel.GetTypeInfo(objectCreation, cancellationToken).Type;
src\Analyzers\CSharp\Analyzers\UseIsNullCheck\CSharpUseIsNullCheckForCastAndEqualityOperatorDiagnosticAnalyzer.cs (2)
76if (semanticModel.GetTypeInfo(castExpression.Type).Type?.SpecialType == SpecialType.System_Object) 78var expressionType = semanticModel.GetTypeInfo(castExpression.Expression).Type;
src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpAsAndNullCheckDiagnosticAnalyzer.cs (3)
87var castType = semanticModel.GetTypeInfo(castExpression.Type).Type; 121var asType = semanticModel.GetTypeInfo(typeNode, cancellationToken).Type; 245if (rightType.Type is null or { NullableAnnotation: NullableAnnotation.Annotated })
src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpIsAndCastCheckDiagnosticAnalyzer.cs (1)
112var isType = semanticModel.GetTypeInfo(castExpression.Type).Type;
src\Analyzers\CSharp\Analyzers\UsePatternMatching\CSharpUseNotPatternDiagnosticAnalyzer.cs (1)
82=> semanticModel.GetTypeInfo(type, cancellationToken).Type.IsNullable()
src\Analyzers\CSharp\CodeFixes\AddExplicitCast\CSharpAddExplicitCastCodeFixProvider.cs (2)
97var leftType = semanticModel.GetTypeInfo(assignmentExpression.Left).Type; 98var rightType = semanticModel.GetTypeInfo(assignmentExpression.Right).Type;
src\Analyzers\CSharp\CodeFixes\ConvertSwitchStatementToExpression\ConvertSwitchStatementToExpressionCodeFixProvider.Rewriter.cs (3)
194typeInfo.Type is not null && 195!Equals(typeInfo.ConvertedType, typeInfo.Type)) 197var conversion = _semanticModel.Compilation.ClassifyConversion(typeInfo.Type, typeInfo.ConvertedType);
src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordEngine.cs (1)
290=> iEquatable.Equals(semanticModel.GetTypeInfo(baseItem.Type, cancellationToken).Type));
src\Analyzers\CSharp\CodeFixes\FixReturnType\CSharpFixReturnTypeCodeFixProvider.cs (3)
77var returnedType = semanticModel.GetTypeInfo(returnedValue, cancellationToken).Type; 93var previousReturnType = semanticModel.GetTypeInfo(declarationTypeToFix, cancellationToken).Type; 167var type = semanticModel.GetTypeInfo(argumentExpression, cancellationToken).Type;
src\Analyzers\CSharp\CodeFixes\GenerateConstructor\CSharpGenerateConstructorService.cs (1)
158if (typeInfo.Type is INamedTypeSymbol typeSymbol)
src\Analyzers\CSharp\CodeFixes\GenerateMethod\GenerateDeconstructMethodCodeFixProvider.cs (2)
68type = model.GetTypeInfo(assignment.Right).Type; 73type = model.GetTypeInfo(deconstruction.GetRequiredParent()).Type;
src\Analyzers\CSharp\CodeFixes\GenerateParameterizedMember\CSharpGenerateConversionService.cs (3)
142typeToGenerateIn = document.SemanticModel.GetTypeInfo(castExpression.Type, cancellationToken).Type as INamedTypeSymbol; 144|| document.SemanticModel.GetTypeInfo(castExpression.Expression, cancellationToken).Type is not INamedTypeSymbol parameterSymbol 175|| document.SemanticModel.GetTypeInfo(expression, cancellationToken).Type is not INamedTypeSymbol parameterSymbol
src\Analyzers\CSharp\CodeFixes\GenerateParameterizedMember\CSharpGenerateDeconstructMethodService.cs (2)
53type: semanticModel.GetTypeInfo(((ConstantPatternSyntax)positionalPattern.Subpatterns[i].Pattern).Expression, cancellationToken).Type ?? semanticModel.Compilation.GetSpecialType(SpecialType.System_Object), 58var targetType = semanticModel.GetTypeInfo(target, cancellationToken: cancellationToken).Type;
src\Analyzers\CSharp\CodeFixes\GenerateParameterizedMember\CSharpGenerateMethodService.cs (1)
66typeToGenerateIn = semanticInfo.Type as INamedTypeSymbol;
src\Analyzers\CSharp\CodeFixes\GenerateParameterizedMember\CSharpGenerateParameterizedMemberService.cs (2)
117if (info.Type is ITypeParameterSymbol { TypeParameterKind: TypeParameterKind.Method } typeParameter) 154result.Add(typeInfo.Type ?? Document.SemanticModel.Compilation.ObjectType);
src\Analyzers\CSharp\CodeFixes\Iterator\CSharpAddYieldCodeFixProvider.cs (1)
98returnExpressionType = info.Type;
src\Analyzers\CSharp\CodeFixes\RemoveUnusedParametersAndValues\CSharpRemoveUnusedValuesCodeFixProvider.cs (1)
125semanticModel.GetTypeInfo(implicitObjectCreation).Type is { } type)
src\Analyzers\CSharp\CodeFixes\UseCoalesceExpression\CSharpUseCoalesceExpressionForIfNullStatementCheckCodeFixProvider.cs (3)
26var leftPartTypeSymbol = semanticModel.GetTypeInfo(expressionToCoalesce, cancellationToken).Type; 27var rightPartTypeSymbol = semanticModel.GetTypeInfo(rightAssignmentPart, cancellationToken).Type; 28var finalDestinationTypeSymbol = semanticModel.GetTypeInfo(leftAssignmentPart, cancellationToken).Type;
src\Analyzers\CSharp\CodeFixes\UseCompoundAssignment\CSharpUseCompoundCoalesceAssignmentCodeFixProvider.cs (1)
97var type = semanticModel.GetTypeInfo(coalesce, cancellationToken).Type;
src\Analyzers\CSharp\CodeFixes\UseExplicitArrayInExpressionTree\CSharpUseExplicitArrayInExpressionTreeCodeFixProvider.cs (1)
134a => a.Expression.Kind() != SyntaxKind.DefaultLiteralExpression && Equals(arrayElementType, semanticModel.GetTypeInfo(a.Expression).Type));
src\Analyzers\CSharp\CodeFixes\UsePatternCombinators\CSharpUsePatternCombinatorsCodeFixProvider.cs (2)
127var type = semanticModel.GetTypeInfo(expr).Type; 141var governingType = semanticModel.GetTypeInfo(p.Target.Syntax).Type.RemoveNullableIfPresent();
src\Analyzers\CSharp\CodeFixes\UsePatternMatching\CSharpAsAndNullCheckCodeFixProvider.cs (2)
141if (asExpressionTypeInfo.Type != null) 145var asType = asExpressionTypeInfo.Type.WithNullableAnnotation(NullableAnnotation.NotAnnotated);
UseNamedArguments\CSharpUseNamedArgumentsCodeRefactoringProvider.cs (1)
45var argType = semanticModel.GetTypeInfo(GetArgumentExpression(argument)).Type;
UsePatternMatching\CSharpIsAndCastCheckWithoutNameDiagnosticAnalyzer.cs (1)
127var typeSymbol = semanticModel.GetTypeInfo(type, cancellationToken).Type;
Microsoft.CodeAnalysis.CSharp.IOperation.UnitTests (5)
IOperation\IOperationTests_IConversionExpression.cs (2)
179Assert.Null(typeInfo.Type); 5387Assert.Equal(ConversionChildSelector(conversion).Type, typeInfo.Type);
IOperation\IOperationTests_IFixedStatement.cs (1)
695Assert.Equal("System.Int32*", info.Type.ToTestDisplayString());
IOperation\IOperationTests_IVariableDeclaration.cs (2)
930Assert.Equal("System.Int32", model.GetTypeInfo(literalExpr).Type.ToTestDisplayString()); 937Assert.Equal("System.Int32", model.GetTypeInfo(invocExpr).Type.ToTestDisplayString());
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (1046)
Semantics\BindingTests.cs (1)
3941Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString());
Semantics\ConditionalOperatorTests.cs (2)
1299Assert.Equal(expectedType, model.GetTypeInfo(conditionalExpr).Type.ToTestDisplayString()); 1303Assert.Equal(SpecialType.System_Boolean, model.GetTypeInfo(conditionalExpr.Condition).Type!.SpecialType);
Semantics\DeconstructionTests.cs (177)
3768Assert.Equal("(int, int)", model.GetTypeInfo(literal1).Type.ToDisplayString()); 3771Assert.Equal("(int, int)", model.GetTypeInfo(literal2).Type.ToDisplayString()); 4258Assert.Equal("(var a, var b)", typeInfo.Type.ToTestDisplayString()); 4259Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4266Assert.Equal("(var a, var b)", typeInfo.Type.ToTestDisplayString()); 4268Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4269Assert.Equal(TypeKind.Struct, typeInfo.Type.TypeKind); 4270Assert.Equal(TypeKind.Error, ((INamedTypeSymbol)typeInfo.Type).TypeArguments[0].TypeKind); 4271Assert.Equal(TypeKind.Error, ((INamedTypeSymbol)typeInfo.Type).TypeArguments[1].TypeKind); 4281Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 4282Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 4283Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4287Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 4288Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 4289Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4299Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4300Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4304Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4305Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4313Assert.Equal("((var a, var b), var c, System.Int32 d)", typeInfo.Type.ToTestDisplayString()); 4314Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4393Assert.Equal("(var a, var b)", typeInfo.Type.ToTestDisplayString()); 4394Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4401Assert.Equal("(var a, var b)", typeInfo.Type.ToTestDisplayString()); 4412Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 4413Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 4414Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4418Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 4419Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 4420Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4430Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4431Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4435Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4436Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4444Assert.Equal("((var a, var b), var c, System.Int32 d)", typeInfo.Type.ToTestDisplayString()); 4445Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4517Assert.Equal("(var, var)", typeInfo.Type.ToTestDisplayString()); 4518Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4525Assert.Equal("(var, var)", typeInfo.Type.ToTestDisplayString()); 4527Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4528Assert.Equal(TypeKind.Struct, typeInfo.Type.TypeKind); 4529Assert.Equal(TypeKind.Error, ((INamedTypeSymbol)typeInfo.Type).TypeArguments[0].TypeKind); 4530Assert.Equal(TypeKind.Error, ((INamedTypeSymbol)typeInfo.Type).TypeArguments[1].TypeKind); 4540Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 4541Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 4542Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4549Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 4550Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 4551Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4561Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4562Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4569Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4570Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4578Assert.Equal("((var, var), var, System.Int32)", typeInfo.Type.ToTestDisplayString()); 4579Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4667Assert.Equal("(System.Int32 a, System.Int32 b)", typeInfo.Type.ToTestDisplayString()); 4668Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4675Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4686Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4687Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4691Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4692Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4723var aaType = model.GetTypeInfo(aa).Type.GetSymbol(); 4761Assert.Equal("(System.Int32 a, System.Int32 b)", typeInfo.Type.ToTestDisplayString()); 4762Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4769Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4780Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4781Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4785Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4786Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4839Assert.Equal("(System.Int32, System.Int32)", typeInfo.Type.ToTestDisplayString()); 4840Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4847Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4858Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4859Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4866Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4867Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4943Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4944Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4948Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4949Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4989Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4990Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4994Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4995Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5047Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5048Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5055Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5056Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5207Assert.Equal("(var a, var b)", typeInfo.Type.ToTestDisplayString()); 5208Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5215Assert.Equal("(var a, var b)", typeInfo.Type.ToTestDisplayString()); 5226Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 5227Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 5228Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5232Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 5233Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 5234Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5244Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5245Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5249Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5250Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5261Assert.Equal("(((var a, var b), var c), System.Int32 d)", typeInfo.Type.ToTestDisplayString()); 5262Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5271Assert.Equal("((var a, var b), var c)", typeInfo.Type.ToTestDisplayString()); 5272Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5351Assert.Equal("(var a, var b)", typeInfo.Type.ToTestDisplayString()); 5352Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5359Assert.Equal("(var a, var b)", typeInfo.Type.ToTestDisplayString()); 5370Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 5371Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 5372Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5376Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 5377Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 5378Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5388Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5389Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5393Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5394Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5405Assert.Equal("(((var a, var b), var c), System.Int32 d)", typeInfo.Type.ToTestDisplayString()); 5406Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5415Assert.Equal("((var a, var b), var c)", typeInfo.Type.ToTestDisplayString()); 5416Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5488Assert.Equal("(var, var)", typeInfo.Type.ToTestDisplayString()); 5489Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5496Assert.Equal("(var, var)", typeInfo.Type.ToTestDisplayString()); 5507Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 5508Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 5509Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5516Assert.Equal("var", typeInfo.Type.ToTestDisplayString()); 5517Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 5518Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5528Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5529Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5536Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5537Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5548Assert.Equal("(((var, var), var), System.Int32)", typeInfo.Type.ToTestDisplayString()); 5549Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5558Assert.Equal("((var, var), var)", typeInfo.Type.ToTestDisplayString()); 5559Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5675Assert.Equal("((var a, var b), var c)", typeInfo.Type.ToTestDisplayString()); 5676Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5683Assert.Equal("((var a, var b), var c)", typeInfo.Type.ToTestDisplayString()); 5694Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5695Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5699Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5700Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5708Assert.Equal("(((var a, var b), var c), System.Int32 d)", typeInfo.Type.ToTestDisplayString()); 5709Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5785Assert.Equal("((var a, var b), var c)", typeInfo.Type.ToTestDisplayString()); 5786Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5793Assert.Equal("((var a, var b), var c)", typeInfo.Type.ToTestDisplayString()); 5804Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5805Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5809Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5810Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5818Assert.Equal("(((var a, var b), var c), System.Int32 d)", typeInfo.Type.ToTestDisplayString()); 5819Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5888Assert.Equal("((var, var), var)", typeInfo.Type.ToTestDisplayString()); 5889Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5896Assert.Equal("((var, var), var)", typeInfo.Type.ToTestDisplayString()); 5907Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5908Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5915Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 5916Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5924Assert.Equal("(((var, var), var), System.Int32)", typeInfo.Type.ToTestDisplayString()); 5925Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 5985Assert.Equal(SpecialType.System_Void, type.Type.SpecialType); 5996Assert.Null(type.Type); 6028Assert.Equal(SpecialType.System_Void, type.Type.SpecialType); 6039Assert.Null(type.Type); 6068Assert.Equal(SpecialType.System_Void, type.Type.SpecialType); 6079Assert.Null(type.Type); 6110Assert.Equal(SpecialType.System_Int32, type.Type.SpecialType); 6121Assert.Null(type.Type); 6150Assert.Equal(SpecialType.System_Void, type.Type.SpecialType); 6161Assert.Null(type.Type);
Semantics\DelegateTypeTests.cs (57)
751Assert.Null(typeInfo.Type); 798Assert.Null(typeInfo.Type); 897Assert.Equal(expectedDisplayString, typeInfo.Type?.ToTestDisplayString()); 903if (typeInfo.Type is { }) 905Assert.True(HaveMatchingSignatures(((INamedTypeSymbol)typeInfo.Type!).DelegateInvokeMethod!, method)); 940Assert.Null(typeInfo.Type); 946if (typeInfo.Type is { }) 948Assert.True(HaveMatchingSignatures(((INamedTypeSymbol)typeInfo.Type!).DelegateInvokeMethod!, method)); 1000Assert.Null(typeInfo.Type); 1004Assert.Equal($"System.Linq.Expressions.Expression<{expectedType}>", typeInfo.Type.ToTestDisplayString()); 1038Assert.Null(typeInfo.Type); 1213Assert.Null(typeInfo.Type); 1249Assert.Null(typeInfo.Type); 1334Assert.Null(typeInfo.Type); 1374Assert.Null(typeInfo.Type); 1417Assert.Null(typeInfo.Type); 1461Assert.Null(typeInfo.Type); 1556Assert.Null(typeInfo.Type); 1636Assert.Null(typeInfo.Type); 1686Assert.Null(typeInfo.Type); 1736Assert.Null(typeInfo.Type); 1786Assert.Null(typeInfo.Type); 1836Assert.Null(typeInfo.Type); 1886Assert.Null(typeInfo.Type); 1936Assert.Null(typeInfo.Type); 1982Assert.Null(typeInfo.Type); 2030Assert.Null(typeInfo.Type); 2084Assert.Null(typeInfo.Type); 2149Assert.Null(typeInfo.Type); 2211Assert.Null(typeInfo.Type); 2270Assert.Null(typeInfo.Type); 2319Assert.Null(typeInfo.Type); 2358Assert.Null(typeInfo.Type); 2401Assert.Null(typeInfo.Type); 2469Assert.Null(typeInfo1.Type); 2476Assert.Null(typeInfo2.Type); 2521Assert.Null(typeInfo1.Type); 2528Assert.Null(typeInfo2.Type); 2570Assert.Null(typeInfo.Type); 2618Assert.Null(typeInfo.Type); 2670Assert.Null(typeInfo.Type); 2716Assert.Null(typeInfo.Type); 2764Assert.Null(typeInfo.Type); 2811Assert.Null(typeInfo.Type); 3636Assert.Null(typeInfo1.Type); 3643Assert.Null(typeInfo2.Type); 3681Assert.Null(typeInfo.Type); 8102Assert.Null(typeInfo.Type); 8125Assert.Equal("System.Action", typeInfo.Type.ToTestDisplayString()); 8131Assert.True(HaveMatchingSignatures(((INamedTypeSymbol)typeInfo.Type!).DelegateInvokeMethod!, method)); 10471return (symbol?.ToTestDisplayString(), typeInfo.Type?.ToTestDisplayString(), typeInfo.ConvertedType?.ToTestDisplayString()); 12194var type = model!.GetTypeInfo(expr).Type; 14473var type = (INamedTypeSymbol)model.GetTypeInfo(variable).Type!; 19877Assert.Equal("System.Func<?>[]", typeInfo.Type.ToTestDisplayString()); 19881Assert.Null(typeInfo.Type); 19919Assert.Equal("?[]", typeInfo.Type.ToTestDisplayString()); 19923Assert.Null(typeInfo.Type);
Semantics\DynamicTests.cs (305)
5080AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5088AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5161AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5204AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5212AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5284AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5327AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5335AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5408AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5449Assert.True(typeInfo.Type.IsErrorType()); 5490AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5534AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5578AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5622AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5799AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5840AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5885AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5930AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 5975AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6126AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6133AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6206AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6249AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6256AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6329AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6369AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6376AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6449AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6484AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6526AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6530Assert.Equal(typeInfo.Type, propertyRef.Type); 6573AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6577Assert.Equal(typeInfo.Type, propertyRef.Type); 6617AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6621Assert.Equal(typeInfo.Type, propertyRef.Type); 6662AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6666Assert.Equal(typeInfo.Type, propertyRef.Type); 6671AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6716AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6720Assert.Equal(typeInfo.Type, propertyRef.Type); 6775AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6782AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6786Assert.Equal(typeInfo.Type, propertyRef.Type); 6790AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6800AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 6838AssertEx.Equal("dynamic?", typeInfo.Type.ToTestDisplayString()); 6884AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6891AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6895Assert.Equal(typeInfo.Type, propertyRef.Type); 6899AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 6909AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 6947AssertEx.Equal("dynamic?", typeInfo.Type.ToTestDisplayString()); 6994AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7001AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7005Assert.Equal(typeInfo.Type, propertyRef.Type); 7009AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7019AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7058AssertEx.Equal("dynamic?", typeInfo.Type.ToTestDisplayString()); 7098AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7102Assert.Equal(typeInfo.Type, propertyRef.Type); 7106AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7116AssertEx.Equal("System.Object", typeInfo.Type.ToTestDisplayString()); 7163AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7170AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7174Assert.Equal(typeInfo.Type, propertyRef.Type); 7178AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7183AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 7220AssertEx.Equal("dynamic?", typeInfo.Type.ToTestDisplayString()); 7266AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7273AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7277Assert.Equal(typeInfo.Type, propertyRef.Type); 7281AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7294AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 7332AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7379AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7386AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7390Assert.Equal(typeInfo.Type, propertyRef.Type); 7394AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7407AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 7448AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7495AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7502AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7506Assert.Equal(typeInfo.Type, propertyRef.Type); 7510AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7523AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7565AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7608AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7609Assert.False(typeInfo.Type.IsErrorType()); 7615AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7619Assert.Equal(typeInfo.Type, propertyRef.Type); 7623AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7624Assert.False(typeInfo.Type.IsErrorType()); 7638AssertEx.Equal("C2", typeInfo.Type.ToTestDisplayString()); 7685AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7692AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7696Assert.Equal(typeInfo.Type, propertyRef.Type); 7700AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7707AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 7744AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7790AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7797AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7801Assert.Equal(typeInfo.Type, propertyRef.Type); 7805AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7850AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7896AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7903AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7907Assert.Equal(typeInfo.Type, propertyRef.Type); 7911AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7956AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 7999AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8000Assert.False(typeInfo.Type.IsErrorType()); 8007AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8011Assert.Equal(typeInfo.Type, propertyRef.Type); 8015AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8016Assert.False(typeInfo.Type.IsErrorType()); 8017Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 8071AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8078AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8082Assert.Equal(typeInfo.Type, propertyRef.Type); 8086AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8131AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8177AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8184AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8188Assert.Equal(typeInfo.Type, propertyRef.Type); 8192AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8237AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8282AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8289AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8293Assert.Equal(typeInfo.Type, propertyRef.Type); 8297AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8341AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8387AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8394AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8398Assert.Equal(typeInfo.Type, propertyRef.Type); 8402AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8412AssertEx.Equal("System.String", typeInfo.Type.ToTestDisplayString()); 8450AssertEx.Equal("dynamic?", typeInfo.Type.ToTestDisplayString()); 8496AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8503AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8507Assert.Equal(typeInfo.Type, propertyRef.Type); 8511AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8521AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 8559AssertEx.Equal("dynamic?", typeInfo.Type.ToTestDisplayString()); 8605AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8612AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8616Assert.Equal(typeInfo.Type, propertyRef.Type); 8620AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8630AssertEx.Equal("System.String", typeInfo.Type.ToTestDisplayString()); 8668AssertEx.Equal("dynamic?", typeInfo.Type.ToTestDisplayString()); 8715AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8722AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8726Assert.Equal(typeInfo.Type, propertyRef.Type); 8730AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8740AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8779AssertEx.Equal("dynamic?", typeInfo.Type.ToTestDisplayString()); 8831AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8835Assert.Equal(typeInfo.Type, propertyRef.Type); 8839AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8849AssertEx.Equal("System.String", typeInfo.Type.ToTestDisplayString()); 8900AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8904Assert.Equal(typeInfo.Type, propertyRef.Type); 8908AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8918AssertEx.Equal("C2", typeInfo.Type.ToTestDisplayString()); 8965AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8972AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8976Assert.Equal(typeInfo.Type, propertyRef.Type); 8980AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 8990AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 9028AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9032Assert.Equal(typeInfo.Type, propertyRef.Type); 9036AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9046AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 9118AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9122Assert.Equal(typeInfo.Type, propertyRef.Type); 9126AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9136AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 9209AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9213Assert.Equal(typeInfo.Type, propertyRef.Type); 9217AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9227AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9299AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9303Assert.Equal(typeInfo.Type, propertyRef.Type); 9307AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9317AssertEx.Equal("System.String", typeInfo.Type.ToTestDisplayString()); 9355AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9359Assert.Equal(typeInfo.Type, propertyRef.Type); 9363AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9373AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 9416AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9420Assert.Equal(typeInfo.Type, propertyRef.Type); 9424AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9537AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9541Assert.Equal(typeInfo.Type, propertyRef.Type); 9545AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9657AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9661Assert.Equal(typeInfo.Type, propertyRef.Type); 9665AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9771AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9775Assert.Equal(typeInfo.Type, propertyRef.Type); 9779AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9882AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9886Assert.Equal(typeInfo.Type, propertyRef.Type); 9890AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9993AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 9997Assert.Equal(typeInfo.Type, propertyRef.Type); 10001AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10117AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10124AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10128Assert.Equal(typeInfo.Type, propertyRef.Type); 10132AssertEx.Equal("(dynamic, System.Int32)", tupleTypeInfo.Type.ToTestDisplayString()); 10137AssertEx.Equal("(dynamic, System.Int32)", typeInfo.Type.ToTestDisplayString()); 10143Assert.Equal(tupleTypeInfo.Type, operation.Target.Type); 10144Assert.Equal(tupleTypeInfo.Type, operation.Value.Type); 10145Assert.Equal(typeInfo.Type, operation.Type); 10149AssertEx.Equal("(System.Int32, System.Int32)", typeInfo.Type.ToTestDisplayString()); 10154AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 10194AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10245AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10252AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10256Assert.Equal(typeInfo.Type, propertyRef.Type); 10260AssertEx.Equal("(dynamic, System.Int32)", tupleTypeInfo.Type.ToTestDisplayString()); 10265AssertEx.Equal("(dynamic, System.Int32)", typeInfo.Type.ToTestDisplayString()); 10271Assert.Equal(tupleTypeInfo.Type, operation.Target.Type); 10272Assert.Equal(tupleTypeInfo.Type, operation.Value.Type); 10273Assert.Equal(typeInfo.Type, operation.Type); 10277AssertEx.Equal("(System.Int32, System.Int32)", typeInfo.Type.ToTestDisplayString()); 10282AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 10322AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10373AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10380AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10384Assert.Equal(typeInfo.Type, propertyRef.Type); 10388AssertEx.Equal("(dynamic, System.Int32)", tupleTypeInfo.Type.ToTestDisplayString()); 10393AssertEx.Equal("(dynamic, System.Int32)", typeInfo.Type.ToTestDisplayString()); 10399Assert.Equal(tupleTypeInfo.Type, operation.Target.Type); 10400Assert.Equal(tupleTypeInfo.Type, operation.Value.Type); 10401Assert.Equal(typeInfo.Type, operation.Type); 10405AssertEx.Equal("(dynamic, System.Int32)", typeInfo.Type.ToTestDisplayString()); 10410AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10450AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10527AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10534AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10538Assert.Equal(typeInfo.Type, propertyRef.Type); 10542AssertEx.Equal("(dynamic, System.Int32)", tupleTypeInfo.Type.ToTestDisplayString()); 10547AssertEx.Equal("(dynamic, System.Int32)", typeInfo.Type.ToTestDisplayString()); 10553Assert.Equal(tupleTypeInfo.Type, operation.Target.Type); 10554Assert.Equal(tupleTypeInfo.Type, operation.Value.Type); 10555Assert.Equal(typeInfo.Type, operation.Type); 10559AssertEx.Equal("(System.Int32, System.Int32)", typeInfo.Type.ToTestDisplayString()); 10564AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 10602AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10661AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10668AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10672Assert.Equal(typeInfo.Type, propertyRef.Type); 10676AssertEx.Equal("(dynamic, System.Int32)", tupleTypeInfo.Type.ToTestDisplayString()); 10681AssertEx.Equal("(dynamic, System.Int32)", typeInfo.Type.ToTestDisplayString()); 10687Assert.Equal(tupleTypeInfo.Type, operation.Target.Type); 10689Assert.Equal(typeInfo.Type, operation.Type); 10693AssertEx.Equal("C2", typeInfo.Type.ToTestDisplayString()); 10749AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10809AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10816AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 10820Assert.Equal(typeInfo.Type, propertyRef.Type); 10824AssertEx.Equal("(dynamic, System.Int32)", tupleTypeInfo.Type.ToTestDisplayString()); 10829AssertEx.Equal("(dynamic, System.Int32)", typeInfo.Type.ToTestDisplayString()); 10835Assert.Equal(tupleTypeInfo.Type, operation.Target.Type); 10837Assert.Equal(typeInfo.Type, operation.Type); 10841AssertEx.Equal("C2", typeInfo.Type.ToTestDisplayString()); 10899AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11079AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11086AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11090Assert.Equal(typeInfo.Type, propertyRef.Type); 11094AssertEx.Equal("(dynamic, System.Int32)", tupleTypeInfo.Type.ToTestDisplayString()); 11099AssertEx.Equal("(dynamic, System.Int32)", typeInfo.Type.ToTestDisplayString()); 11105Assert.Equal(tupleTypeInfo.Type, operation.Target.Type); 11107Assert.Equal(typeInfo.Type, operation.Type); 11111AssertEx.Equal("C2", typeInfo.Type.ToTestDisplayString()); 11165AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11207AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11212AssertEx.Equal("(dynamic, System.Int32)", typeInfo.Type.ToTestDisplayString()); 11217AssertEx.Equal("((dynamic, System.Int32), System.Int32)", typeInfo.Type.ToTestDisplayString()); 11222AssertEx.Equal("((dynamic, System.Int32), System.Int32)", typeInfo.Type.ToTestDisplayString()); 11229AssertEx.Equal("((System.Int32, System.Int32), System.Int32)", typeInfo.Type.ToTestDisplayString()); 11234AssertEx.Equal("(System.Int32, System.Int32)", typeInfo.Type.ToTestDisplayString()); 11239AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 11291AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11296AssertEx.Equal("(dynamic, System.Int32)", typeInfo.Type.ToTestDisplayString()); 11301AssertEx.Equal("((dynamic, System.Int32), System.Int32)", typeInfo.Type.ToTestDisplayString()); 11306AssertEx.Equal("((dynamic, System.Int32), System.Int32)", typeInfo.Type.ToTestDisplayString()); 11313AssertEx.Equal("(C2, System.Int32)", typeInfo.Type.ToTestDisplayString()); 11318AssertEx.Equal("C2", typeInfo.Type.ToTestDisplayString()); 11369AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11374AssertEx.Equal("(dynamic, System.Int32)", typeInfo.Type.ToTestDisplayString()); 11379AssertEx.Equal("(dynamic, System.Int32)", typeInfo.Type.ToTestDisplayString()); 11421AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11429AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11474AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11482AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11558AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11602AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11643AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11688AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11695AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11740AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11747AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString()); 11787AssertEx.Equal("dynamic", typeInfo.Type.ToTestDisplayString());
Semantics\ExpressionBodiedMemberTests.cs (2)
431Assert.Equal(typeInfo1.Type, typeInfo2.Type);
Semantics\ForEachTests.cs (2)
2660Assert.Equal(SpecialType.System_Char, typeInfo.Type.SpecialType); 2661Assert.Equal(typeInfo.Type, typeInfo.ConvertedType);
Semantics\FunctionPointerTests.cs (18)
212Assert.Equal(TypeKind.FunctionPointer, typeInfo.Type!.TypeKind); 218var classifiedConversion = comp.ClassifyConversion(typeInfo.Type, typeInfo.ConvertedType!); 297Assert.Null(typeInfo.Type); 355var conversion = model.ClassifyConversion(conversions[0].Expression, typeInfoOuter.Type!); 361conversion = model.ClassifyConversion(conversions[1].Expression, typeInfoOuter.Type!); 406var conversion = model.ClassifyConversion(conversions[0].Expression, typeInfoOuter.Type!); 410conversion = model.ClassifyConversion(conversions[1].Expression, typeInfoOuter.Type!); 458var conversion = model.ClassifyConversion(conversions[0].Expression, typeInfoOuter.Type!); 508var conversion = model.ClassifyConversion(conv.Expression, typeInfoOuter.Type!); 609var classifiedConversion = comp.ClassifyConversion(typeInfo.Type!, typeInfo.ConvertedType!); 850var classifiedConversion = comp.ClassifyConversion(typeInfo.Type!, typeInfo.ConvertedType!); 907AssertEx.Equal(expectedOriginalType, typeInfo.Type!.ToTestDisplayString()); 909var classifiedConversion = comp.ClassifyConversion(typeInfo.Type!, typeInfo.ConvertedType!); 2095AssertEx.Equal("delegate* unmanaged<System.Int32>", typeInfo.Type.ToTestDisplayString()); 2432.Select(s => model.GetTypeInfo(s).Type.ToTestDisplayString()) 2500.Select(s => model.GetTypeInfo(s).Type.ToTestDisplayString()) 2597.Select(s => model.GetTypeInfo(s).Type.ToTestDisplayString()) 2670.Select(s => model.GetTypeInfo(s).Type.ToTestDisplayString())
Semantics\GlobalUsingDirectiveTests.cs (7)
4245Assert.Equal("C1", model.GetTypeInfo(node).Type.ToTestDisplayString()); 4253Assert.Equal("C1", model.GetTypeInfo(node).Type.ToTestDisplayString()); 4281Assert.Equal("C1", model.GetTypeInfo(node).Type.ToTestDisplayString()); 4289Assert.Equal("C1", model.GetTypeInfo(node).Type.ToTestDisplayString()); 4297Assert.Equal("C1", model.GetTypeInfo(node).Type.ToTestDisplayString()); 4305Assert.Equal("C1", model.GetTypeInfo(node).Type.ToTestDisplayString()); 4317Assert.Equal("C3", model.GetTypeInfo(node).Type.ToTestDisplayString());
Semantics\ImplicitlyTypeArraysTests.cs (2)
72Assert.NotNull(info.Type); 100Assert.NotNull(typeInfo.Type);
Semantics\ImplicitObjectCreationTests.cs (31)
60Assert.Equal(type, model.GetTypeInfo(@new).Type.ToTestDisplayString()); 135Assert.Equal(type, model.GetTypeInfo(@new).Type.ToTestDisplayString()); 182Assert.Equal(type, model.GetTypeInfo(@new).Type.ToTestDisplayString()); 234Assert.Equal(type, model.GetTypeInfo(@new).Type.ToTestDisplayString()); 840Assert.Equal("InterfaceType", model.GetTypeInfo(@new).Type.ToTestDisplayString()); 881Assert.Equal("NonGenericInterfaceType", model.GetTypeInfo(@new).Type.ToTestDisplayString()); 1709Assert.Equal(type, model.GetTypeInfo(invocation).Type.ToTestDisplayString()); 1863Assert.Equal("C", model.GetTypeInfo(def).Type.ToTestDisplayString()); 1893Assert.Equal("S", model.GetTypeInfo(def).Type.ToTestDisplayString()); 1923Assert.Equal("S", model.GetTypeInfo(def).Type.ToTestDisplayString()); 1976Assert.Equal("S", model.GetTypeInfo(def).Type.ToTestDisplayString()); 2034Assert.Equal("System.Object", model.GetTypeInfo(@new).Type.ToTestDisplayString()); 2041Assert.Equal("System.Object", model.GetTypeInfo(newObject).Type.ToTestDisplayString()); 2069Assert.Equal("System.Object", model.GetTypeInfo(@new).Type.ToTestDisplayString()); 2076Assert.Equal("System.Object", model.GetTypeInfo(newObject).Type.ToTestDisplayString()); 2128Assert.Equal(type, model.GetTypeInfo(@new).Type.ToTestDisplayString()); 2215Assert.Equal("T", model.GetTypeInfo(def).Type.ToTestDisplayString()); 2508Assert.Equal("System.Exception", model.GetTypeInfo(def).Type.ToTestDisplayString()); 2560Assert.Equal("C", model.GetTypeInfo(def).Type.ToTestDisplayString()); 2923Assert.Equal(type, model.GetTypeInfo(@new).Type.ToTestDisplayString()); 3210Assert.Equal("System.Object[]", model.GetTypeInfo(first).Type.ToTestDisplayString()); 3214Assert.Equal("System.Object", model.GetTypeInfo(second).Type.ToTestDisplayString()); 3218Assert.Equal("C[]", model.GetTypeInfo(third).Type.ToTestDisplayString()); 3222Assert.Equal("C", model.GetTypeInfo(fourth).Type.ToTestDisplayString()); 4153Assert.Null(typeInfo.Type); 4190Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4603Assert.Equal("A", typeInfo.Type.ToTestDisplayString()); 4635Assert.Equal("A", typeInfo.Type.ToTestDisplayString()); 4667Assert.Equal("A", typeInfo.Type.ToTestDisplayString()); 4706Assert.Equal("C", typeInfo.Type.ToTestDisplayString()); 4713Assert.Equal("C", typeInfo.Type.ToTestDisplayString());
Semantics\IndexAndRangeTests.cs (30)
899Assert.Equal("System.Index", model.GetTypeInfo(expression).Type.ToTestDisplayString()); 920Assert.Equal("System.Index", model.GetTypeInfo(expression).Type.ToTestDisplayString()); 941Assert.Equal("System.Index?", model.GetTypeInfo(expression).Type.ToTestDisplayString()); 1125Assert.Equal("System.Range", model.GetTypeInfo(expressions[0]).Type.ToTestDisplayString()); 1127Assert.Equal("System.Int32", model.GetTypeInfo(expressions[0].RightOperand).Type.ToTestDisplayString()); 1128Assert.Equal("System.Int32", model.GetTypeInfo(expressions[0].LeftOperand).Type.ToTestDisplayString()); 1130Assert.Equal("System.Range", model.GetTypeInfo(expressions[1]).Type.ToTestDisplayString()); 1133Assert.Equal("System.Int32", model.GetTypeInfo(expressions[1].LeftOperand).Type.ToTestDisplayString()); 1135Assert.Equal("System.Range", model.GetTypeInfo(expressions[2]).Type.ToTestDisplayString()); 1137Assert.Equal("System.Int32", model.GetTypeInfo(expressions[2].RightOperand).Type.ToTestDisplayString()); 1140Assert.Equal("System.Range", model.GetTypeInfo(expressions[3]).Type.ToTestDisplayString()); 1252Assert.Equal("System.Range", model.GetTypeInfo(expression).Type.ToTestDisplayString()); 1285Assert.Equal("System.Range", model.GetTypeInfo(expression).Type.ToTestDisplayString()); 1318Assert.Equal("System.Range", model.GetTypeInfo(expression).Type.ToTestDisplayString()); 1344Assert.Equal("System.Range", model.GetTypeInfo(expressions[0]).Type.ToTestDisplayString()); 1346Assert.Equal("System.Index", model.GetTypeInfo(expressions[0].RightOperand).Type.ToTestDisplayString()); 1347Assert.Equal("System.Index", model.GetTypeInfo(expressions[0].LeftOperand).Type.ToTestDisplayString()); 1349Assert.Equal("System.Range", model.GetTypeInfo(expressions[1]).Type.ToTestDisplayString()); 1352Assert.Equal("System.Index", model.GetTypeInfo(expressions[1].LeftOperand).Type.ToTestDisplayString()); 1354Assert.Equal("System.Range", model.GetTypeInfo(expressions[2]).Type.ToTestDisplayString()); 1356Assert.Equal("System.Index", model.GetTypeInfo(expressions[2].RightOperand).Type.ToTestDisplayString()); 1359Assert.Equal("System.Range", model.GetTypeInfo(expressions[3]).Type.ToTestDisplayString()); 1387Assert.Equal("System.Range?", model.GetTypeInfo(expressions[0]).Type.ToTestDisplayString()); 1389Assert.Equal("System.Index?", model.GetTypeInfo(expressions[0].RightOperand).Type.ToTestDisplayString()); 1390Assert.Equal("System.Index?", model.GetTypeInfo(expressions[0].LeftOperand).Type.ToTestDisplayString()); 1392Assert.Equal("System.Range?", model.GetTypeInfo(expressions[1]).Type.ToTestDisplayString()); 1395Assert.Equal("System.Index?", model.GetTypeInfo(expressions[1].LeftOperand).Type.ToTestDisplayString()); 1397Assert.Equal("System.Range?", model.GetTypeInfo(expressions[2]).Type.ToTestDisplayString()); 1399Assert.Equal("System.Index?", model.GetTypeInfo(expressions[2].RightOperand).Type.ToTestDisplayString()); 1402Assert.Equal("System.Range", model.GetTypeInfo(expressions[3]).Type.ToTestDisplayString());
Semantics\InitOnlyMemberTests.cs (1)
3166Assert.Equal("Int32", typeSpeculation.Type.Name);
Semantics\InteractiveUsingTests.cs (1)
597SpeculativeBindingOption.BindAsTypeOrNamespace).Type;
Semantics\IteratorTests.cs (5)
564Assert.Equal(TypeKind.Error, typeInfo.Type.TypeKind); 716Assert.Equal("System.Collections.Generic.KeyValuePair<TKey, TValue>", typeInfo.Type.ToTestDisplayString()); 717Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 754Assert.Equal("System.Collections.Generic.KeyValuePair<TKey, TValue>", typeInfo.Type.ToTestDisplayString()); 755Assert.Equal(typeInfo.Type, typeInfo.ConvertedType);
Semantics\LambdaTests.cs (50)
846Assert.Equal("int", tinfo.Type.ToDisplayString()); 853Assert.Null(tinfo.Type); 863Assert.Null(tinfo.Type); 1039Assert.NotNull(((ITypeSymbol)typeInfo.Type).GetMember("String")); 1093Assert.NotNull(((ITypeSymbol)typeInfo.Type).GetMember("SomeProperty")); 2123Assert.Equal("MyArgumentType", typeInfo.Type.Name); 2124Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 2125Assert.NotEmpty(typeInfo.Type.GetMembers("SomePublicMember")); 2169Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 2170Assert.Equal("String", typeInfo.Type.Name); 2171Assert.NotEmpty(typeInfo.Type.GetMembers("Replace")); 2215Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 2216Assert.Equal("String", typeInfo.Type.Name); 2217Assert.NotEmpty(typeInfo.Type.GetMembers("Replace")); 2261Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 2262Assert.Equal("String", typeInfo.Type.Name); 2263Assert.NotEmpty(typeInfo.Type.GetMembers("Replace")); 2307Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 2308Assert.Equal("String", typeInfo.Type.Name); 2309Assert.NotEmpty(typeInfo.Type.GetMembers("Replace")); 2337Assert.Equal(TypeKind.Struct, typeInfo.Type.TypeKind); 2338Assert.Equal("Char", typeInfo.Type.Name); 2339Assert.NotEmpty(typeInfo.Type.GetMembers("IsHighSurrogate")); // check it is the char we know and love 2364Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 2365Assert.Equal("String", typeInfo.Type.Name); 2366Assert.NotEmpty(typeInfo.Type.GetMembers("Replace")); 2419Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 2420Assert.Equal("String", typeInfo.Type.Name); 2421Assert.NotEmpty(typeInfo.Type.GetMembers("Replace")); 2465Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 2466Assert.Equal("String", typeInfo.Type.Name); 2467Assert.NotEmpty(typeInfo.Type.GetMembers("Replace")); 2511Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 2512Assert.Equal("String", typeInfo.Type.Name); 2513Assert.NotEmpty(typeInfo.Type.GetMembers("Replace")); 2544Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 2545Assert.Equal("String", typeInfo.Type.Name); 2546Assert.NotEmpty(typeInfo.Type.GetMembers("Replace")); 2577Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 2578Assert.Equal("String", typeInfo.Type.Name); 2579Assert.NotEmpty(typeInfo.Type.GetMembers("Replace")); 2614Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 2615Assert.Equal("String", typeInfo.Type.Name); 2616Assert.NotEmpty(typeInfo.Type.GetMembers("Replace")); 2998Assert.Equal(TypeKind.Error, model.GetTypeInfo(contentType).Type.TypeKind); 3007Assert.Equal(TypeKind.Error, model.GetTypeInfo(b).Type.TypeKind); 3945Assert.Equal(expectedAttributeType, typeInfo.Type); 5639Assert.Equal(expectedType, typeInfo.Type); 6512Assert.True(model.GetTypeInfo(parameterUsage).Type.IsErrorType()); 7005AssertEx.Equal("System.Action", model.GetTypeInfo(action).Type.ToTestDisplayString());
Semantics\LocalFunctionTests.cs (21)
451var argType0 = model.GetTypeInfo(attrArg0).Type; 457var argType1 = model.GetTypeInfo(attrArg1).Type; 614Assert.Equal(SpecialType.System_String, model.GetTypeInfo(arg1.Expression).Type.SpecialType); 618Assert.Equal(SpecialType.System_String, model.GetTypeInfo(arg2.Expression).Type.SpecialType); 622Assert.Equal(SpecialType.System_String, model.GetTypeInfo(arg3.Expression).Type.SpecialType); 667Assert.Equal(SpecialType.System_Boolean, model.GetTypeInfo(arg.Expression).Type.SpecialType); 721Assert.Equal(SpecialType.System_Boolean, model.GetTypeInfo(arg.Expression).Type.SpecialType); 1773Assert.Equal(TypeKind.Error, aTypeInfo.Type.TypeKind); 1796Assert.Equal(clsCompliantSymbol, model.GetTypeInfo(clsCompliant).Type); 1848Assert.Equal(TypeKind.Error, aTypeInfo.Type.TypeKind); 1871Assert.Equal(clsCompliantSymbol, model.GetTypeInfo(clsCompliant).Type); 7740Assert.Equal("System.String", parentModel.GetSpeculativeTypeInfo(aPosition, newNameOf, SpeculativeBindingOption.BindAsExpression).Type.ToTestDisplayString()); 7744Assert.Equal("TParameter", parentModel.GetSpeculativeTypeInfo(bPosition, newNameOfArgument, SpeculativeBindingOption.BindAsExpression).Type.ToTestDisplayString()); 7747Assert.Equal("System.String", parentModel.GetSpeculativeTypeInfo(cPosition, newNameOf, SpeculativeBindingOption.BindAsExpression).Type.ToTestDisplayString()); 7750Assert.Equal("TParameter", parentModel.GetSpeculativeTypeInfo(dPosition, newNameOfArgument, SpeculativeBindingOption.BindAsExpression).Type.ToTestDisplayString()); 7961Assert.Equal(SymbolKind.TypeParameter, typeInfo.Type.Kind); 7965Assert.True(typeInfo.Type.IsErrorType()); 7973Assert.Equal(symbolKind, model.GetTypeInfo(tParameterUsage).Type.Kind); 9000Assert.True(model.GetTypeInfo(parameterUsage).Type.IsErrorType()); 9006Assert.Equal("System.Int32", model.GetTypeInfo(parameterUsage).Type.ToTestDisplayString()); 10732Assert.Equal("System.Int32", model.GetTypeInfo(p).Type.ToTestDisplayString());
Semantics\LockTests.cs (4)
492Assert.Null(model.GetTypeInfo(lockStatements[0].Expression).Type); 578Assert.Equal(@"System.Collections.Generic.IEnumerable<char>", model.GetTypeInfo(lockStatements[0].Expression).Type.ToDisplayString()); 711Assert.NotNull(typeInfo.Type); 714Assert.Equal(symbol, typeInfo.Type.GetSymbol());
Semantics\LookupTests.cs (1)
690var baseExprType = (INamedTypeSymbol)baseExprInfo.Type;
Semantics\MethodTypeInferenceTests.cs (7)
842Assert.Null(model.GetTypeInfo(discard).Type); 845Assert.Equal(type, model.GetTypeInfo(declaration).Type.ToTestDisplayString(includeNonNullable: true)); 854Assert.Equal(type, model.GetTypeInfo(discard).Type.ToTestDisplayString(includeNonNullable: true)); 1120var bookType = model.GetTypeInfo(book).Type; 1161var authorType = model.GetTypeInfo(author).Type; 1202var bookResultType = model.GetTypeInfo(bookResult).Type; 1206var authorResultType = model.GetTypeInfo(authorResult).Type;
Semantics\NamedAndOptionalTests.cs (1)
815Assert.Null(typeInfo.Type);
Semantics\NameOfTests.cs (2)
3050var nameofType = semanticModel.GetTypeInfo(firstGeneric).Type; 3051var typeofType = semanticModel.GetTypeInfo(lastGeneric).Type;
Semantics\NativeIntegerTests.cs (3)
4082var type = model.GetSpeculativeTypeInfo(spanStart, typeSyntax, SpeculativeBindingOption.BindAsTypeOrNamespace).Type; 4127var type = model.GetTypeInfo(node).Type; 9511Assert.Equal(sourceType, typeInfo.Type.ToString());
Semantics\NullableReferenceTypesTests.cs (36)
1803Assert.Null(type.Type); 1807var actualType = type.Type.ToTestDisplayString(); 1895Assert.Equal("System.String", s.Type.ToTestDisplayString()); 1900Assert.Equal("System.String", s2.Type.ToTestDisplayString()); 1905Assert.Equal("C<System.String>", c.Type.ToTestDisplayString()); 1910Assert.Equal("C<System.String?>", c2.Type.ToTestDisplayString()); 3346Assert.Equal(TypeKind.Class, typeInfo.Type.TypeKind); 3347Assert.Equal("String", typeInfo.Type.Name); 3348Assert.NotEmpty(typeInfo.Type.GetMembers("Replace")); 10542Assert.Equal("System.String!", model.GetTypeInfo(type1).Type.ToTestDisplayString(includeNonNullable: true)); 10546Assert.Equal("System.String?", model.GetTypeInfo(type2).Type.ToTestDisplayString(includeNonNullable: true)); 13516AssertEx.Equal("S?[]", model.GetTypeInfo(returnStatement.Expression).Type.ToTestDisplayString()); 56161Assert.Null(model.GetTypeInfo(nullNode).Type); 56191Assert.Null(model.GetTypeInfo(nullNode).Type); 56196Assert.Equal("System.Object?[]", model.GetTypeInfo(invocationNode).Type.ToTestDisplayString()); 56224Assert.Equal("U?", model.GetTypeInfo(defaultNode).Type.ToTestDisplayString()); 56261Assert.Equal("U", model.GetTypeInfo(defaultNode).Type.ToTestDisplayString()); 56389Assert.Null(model.GetTypeInfo(nullNode).Type); 56522Assert.Equal("System.Object", model.GetTypeInfo(newNode).Type.ToTestDisplayString()); 56557Assert.Equal("Program", model.GetTypeInfo(newNode).Type.ToTestDisplayString()); 56593Assert.Null(model.GetTypeInfo(nullNode).Type); 56704Assert.Null(model.GetTypeInfo(lambdaNode).Type); 59106Assert.Equal("System.String?", model.GetTypeInfoAndVerifyIOperation(declaration.Type).Type.ToTestDisplayString()); 71984Assert.Equal("System.String?", model.GetTypeInfoAndVerifyIOperation(discard1).Type.ToTestDisplayString()); 71989Assert.Equal("System.Object?", model.GetTypeInfoAndVerifyIOperation(discard2).Type.ToTestDisplayString()); 71994Assert.Equal("System.String", model.GetTypeInfoAndVerifyIOperation(discard3).Type.ToTestDisplayString()); 71999Assert.Equal("System.Object", model.GetTypeInfoAndVerifyIOperation(discard4).Type.ToTestDisplayString()); 72033Assert.Equal("System.String", model.GetTypeInfo(discard1).Type.ToTestDisplayString()); 72042Assert.Equal("System.Object", model.GetTypeInfoAndVerifyIOperation(discard2).Type.ToTestDisplayString()); 72070Assert.Equal("System.Object", model.GetTypeInfo(discardPattern1).Type.ToTestDisplayString()); 72077Assert.Equal("System.Object", model.GetTypeInfo(discardPattern2).Type.ToTestDisplayString()); 113319Assert.Equal("B[]", model.GetTypeInfo(arrays[0]).Type.ToTestDisplayString(includeNonNullable: true)); 113320Assert.Equal("C![]", model.GetTypeInfo(arrays[1]).Type.ToTestDisplayString(includeNonNullable: true)); 113929model.GetSpeculativeTypeInfo(decl.Identifier.SpanStart, type, SpeculativeBindingOption.BindAsTypeOrNamespace).Type.ToTestDisplayString(includeNonNullable: true)); 114155model.GetTypeInfo(type).Type.ToTestDisplayString(includeNonNullable: true)); 160874Assert.Equal("System.Int64*", model.GetTypeInfo(stackallocNode).Type.ToTestDisplayString());
Semantics\NullCoalesceAssignmentTests.cs (10)
48Assert.NotNull(typeInfo.Type); 49Assert.Equal(cType.GetPublicSymbol(), typeInfo.Type); 83Assert.Equal(dType.GetPublicSymbol(), whenNullTypeInfo.Type); 90Assert.NotNull(typeInfo.Type); 91Assert.Equal(cType, typeInfo.Type.GetSymbol()); 123Assert.Equal(dType, whenNullTypeInfo.Type.GetSymbol()); 133Assert.NotNull(typeInfo.Type); 134Assert.Equal(dType.GetPublicSymbol(), typeInfo.Type); 161var coalesceType = semanticModel.GetTypeInfo(coalesceAssignment).Type; 186Assert.Equal(SpecialType.System_Int32, semanticModel.GetTypeInfo(defaultLiteral).Type.SpecialType);
Semantics\ObjectAndCollectionInitializerTests.cs (14)
3821Assert.Same(typeInfo.Type, typeInfo.ConvertedType); 3844Assert.Equal(SpecialType.System_String, typeInfo.Type.SpecialType); 3868Assert.Equal(SpecialType.System_Int32, typeInfo.Type.SpecialType); 4024Assert.Null(semanticModel.GetTypeInfo(name).Type); 4099Assert.Equal(SpecialType.System_Int32, typeInfo.Type.SpecialType); 4171Assert.Equal(SpecialType.System_Int32, typeInfo.Type.SpecialType); 4231AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4236Assert.Equal(typeInfo.Type, propertyRef.Type); 4240AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4250AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4285AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4290Assert.Equal(typeInfo.Type, propertyRef.Type); 4294AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 4304AssertEx.Equal("System.Int32", typeInfo.Type.ToTestDisplayString());
Semantics\OperatorTests.cs (6)
2987var type1 = model.GetTypeInfo(negOne).Type; 2993var type2 = model.GetTypeInfo(boolPlusPlus).Type; 2999var type3 = model.GetTypeInfo(errorPlusPlus).Type; 7060Assert.Equal(comp.GlobalNamespace.GetMember<NamedTypeSymbol>("InputParameter"), info.Type.GetSymbol()); 7215Assert.Equal(comp.GlobalNamespace.GetMember<NamedTypeSymbol>("InputParameter").GetPublicSymbol(), info.Type); 12390var type = (ITypeSymbol)compilation.GetSemanticModel(tree).GetTypeInfo(negNode).Type;
Semantics\QueryTests.cs (8)
2301Assert.Equal(SpecialType.System_Int32, info.Type.SpecialType); 3141Assert.Equal(SymbolKind.ErrorType, typeInfo.Type.Kind); 3382Assert.NotEqual(TypeKind.Error, typeInfo2.Type.TypeKind); 3383Assert.Equal("Assembly", typeInfo2.Type.Name); 3391Assert.NotEqual(TypeKind.Error, typeInfo1.Type.TypeKind); 3392Assert.Equal("Assembly", typeInfo1.Type.Name); 3484Assert.NotNull(selectClauseTypeInfo.Type); 3485Assert.Equal("List1", selectClauseTypeInfo.Type.Name);
Semantics\RecordStructTests.cs (3)
535var type = model.GetTypeInfo(creation).Type!; 6999Assert.Equal("B", type.Type.ToTestDisplayString()); 7680Assert.Equal("T", type.Type.ToTestDisplayString());
Semantics\RefEscapingTests.cs (8)
6368Assert.Equal("(System.Span<int> local, string)", model.GetTypeInfo(tuple2).Type.ToString()); 6374Assert.Null(model.GetTypeInfo(tuple3).Type); 6380Assert.Equal("(System.Span<int> local, string)", model.GetTypeInfo(tuple6).Type.ToString()); 6386Assert.Null(model.GetTypeInfo(tuple7).Type); 6468Assert.Equal("(System.Span<int> local, string)", model.GetTypeInfo(tuple2).Type.ToString()); 6474Assert.Null(model.GetTypeInfo(tuple3).Type); 6480Assert.Equal("(System.Span<int> local, string)", model.GetTypeInfo(tuple6).Type.ToString()); 6486Assert.Null(model.GetTypeInfo(tuple7).Type);
Semantics\RefFieldTests.cs (76)
12147Assert.Null(model.GetTypeInfo(type).Type); 12154Assert.Null(model.GetTypeInfo(type).Type); 12160Assert.Equal("R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 12211Assert.Null(model.GetTypeInfo(type).Type); 12218Assert.Null(model.GetTypeInfo(type).Type); 12224Assert.Equal("Script.R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 12281Assert.Null(model.GetTypeInfo(type).Type); 12288Assert.Null(model.GetTypeInfo(type).Type); 12294Assert.Equal("R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 12470Assert.Null(model.GetTypeInfo(type).Type); 12477Assert.Null(model.GetTypeInfo(type).Type); 12483Assert.Equal("R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 12493Assert.Null(model.GetTypeInfo(decl).Type); 12502Assert.Null(model.GetTypeInfo(type).Type); 12509Assert.Null(model.GetTypeInfo(type).Type); 12515Assert.Equal("R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 12650Assert.Null(model.GetTypeInfo(type).Type); 12657Assert.Null(model.GetTypeInfo(type).Type); 12663Assert.Equal("Script.R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 12673Assert.Null(model.GetTypeInfo(decl).Type); 12678Assert.Null(model.GetTypeInfo(type).Type); 12685Assert.Null(model.GetTypeInfo(type).Type); 12691Assert.Equal("Script.R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 12881Assert.Null(model.GetTypeInfo(type).Type); 12888Assert.Null(model.GetTypeInfo(type).Type); 12894Assert.Equal("R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 12906Assert.Null(model.GetTypeInfo(decl).Type); 12915Assert.Null(model.GetTypeInfo(type).Type); 12922Assert.Null(model.GetTypeInfo(type).Type); 12928Assert.Equal("R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 13057Assert.Null(model.GetTypeInfo(type).Type); 13064Assert.Null(model.GetTypeInfo(type).Type); 13070Assert.Equal("Script.R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 13080Assert.Null(model.GetTypeInfo(decl).Type); 13085Assert.Null(model.GetTypeInfo(type).Type); 13092Assert.Null(model.GetTypeInfo(type).Type); 13098Assert.Equal("Script.R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 13523Assert.Null(model.GetTypeInfo(type).Type); 13530Assert.Null(model.GetTypeInfo(type).Type); 13536Assert.Equal("R<System.Int32>", model.GetTypeInfo(type).Type.ToTestDisplayString()); 13587Assert.Null(model.GetTypeInfo(type).Type); 13594Assert.Null(model.GetTypeInfo(type).Type); 13600Assert.Equal("R<System.Int32>", model.GetTypeInfo(type).Type.ToTestDisplayString()); 13664Assert.Null(model.GetTypeInfo(type).Type); 13671Assert.Null(model.GetTypeInfo(type).Type); 13677Assert.Equal("R<System.Int32>", model.GetTypeInfo(type).Type.ToTestDisplayString()); 13734Assert.Null(model.GetTypeInfo(type).Type); 13741Assert.Null(model.GetTypeInfo(type).Type); 13747Assert.Equal("R<System.Int32>", model.GetTypeInfo(type).Type.ToTestDisplayString()); 14429Assert.Null(model.GetTypeInfo(type).Type); 14471Assert.Null(model.GetTypeInfo(type).Type); 14681Assert.Null(model.GetTypeInfo(type).Type); 14688Assert.Null(model.GetTypeInfo(type).Type); 14694Assert.Equal("R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 14925Assert.Null(model.GetTypeInfo(type).Type); 14932Assert.Null(model.GetTypeInfo(type).Type); 14938Assert.Equal("R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 14948Assert.Null(model.GetTypeInfo(decl).Type); 14953Assert.Null(model.GetTypeInfo(type).Type); 14960Assert.Null(model.GetTypeInfo(type).Type); 14966Assert.Equal("R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 15216Assert.Null(model.GetTypeInfo(type).Type); 15223Assert.Null(model.GetTypeInfo(type).Type); 15229Assert.Equal("R<System.Int32>", model.GetTypeInfo(type).Type.ToTestDisplayString()); 27669Assert.Null(model.GetTypeInfo(type).Type); 27676Assert.Null(model.GetTypeInfo(type).Type); 27682Assert.Equal("R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 27759Assert.Null(model.GetTypeInfo(type).Type); 27766Assert.Null(model.GetTypeInfo(type).Type); 27772Assert.Equal("R", model.GetTypeInfo(type).Type.ToTestDisplayString()); 28026Assert.Null(model.GetTypeInfo(type).Type); 28031Assert.Equal("R<System.Int32>", model.GetTypeInfo(type).Type.ToTestDisplayString()); 28086Assert.Null(model.GetTypeInfo(type).Type); 28091Assert.Equal("R<System.Int32>", model.GetTypeInfo(type).Type.ToTestDisplayString()); 28306Assert.Null(model.GetTypeInfo(type).Type); 28354Assert.Null(model.GetTypeInfo(type).Type);
Semantics\RefLocalsAndReturnsTests.cs (16)
4749Assert.Equal(SpecialType.System_Int32, ((IArrayTypeSymbol)model.GetTypeInfo(left).Type).ElementType.SpecialType); 4752Assert.Equal(SpecialType.System_Int32, model.GetTypeInfo(right).Type.SpecialType); 4777Assert.Equal(SpecialType.System_Int32, ((IPointerTypeSymbol)model.GetTypeInfo(left).Type).PointedAtType.SpecialType); 4780Assert.Equal(SpecialType.System_Int32, model.GetTypeInfo(right).Type.SpecialType); 4805Assert.Equal(SpecialType.System_Int32, ((IPointerTypeSymbol)model.GetTypeInfo(left).Type).PointedAtType.SpecialType); 4808Assert.Equal(SpecialType.System_Int32, model.GetTypeInfo(right).Type.SpecialType); 4833Assert.Equal(SpecialType.System_Int32, model.GetTypeInfo(left).Type.SpecialType); 4836Assert.Equal(SpecialType.System_Int32, model.GetTypeInfo(right).Type.SpecialType); 4861Assert.Equal(SymbolKind.DynamicType, model.GetTypeInfo(left).Type.Kind); 4864Assert.Equal(SpecialType.System_Int32, model.GetTypeInfo(right).Type.SpecialType); 4889Assert.Equal(SymbolKind.DynamicType, model.GetTypeInfo(left).Type.Kind); 4892Assert.Equal(SpecialType.System_Int32, model.GetTypeInfo(right).Type.SpecialType); 4923Assert.Equal(SpecialType.System_Object, model.GetTypeInfo(left).Type.SpecialType); 4926Assert.Equal(SpecialType.System_Int32, model.GetTypeInfo(right).Type.SpecialType); 5213Assert.Null(model.GetTypeInfo(type).Type); 5219Assert.Equal("System.Int32", model.GetTypeInfo(type).Type.ToTestDisplayString());
Semantics\SuppressAccessibilityChecksTests.cs (7)
57Assert.Equal("A", semanticModel.GetTypeInfo(invocation).Type.Name); 62Assert.Equal("A", semanticModel.GetTypeInfo(invocation).Type.Name); 77semanticModel.GetSpeculativeTypeInfo(position, exp, SpeculativeBindingOption.BindAsExpression).Type.Name); 98Assert.Equal("A", creationExpression.Type.Name); 171Assert.Equal("A", semanticModel.GetTypeInfo(invocation).Type.Name); 177Assert.Equal("Int32", semanticModel.GetSpeculativeTypeInfo(position, speculativeInvocation, SpeculativeBindingOption.BindAsExpression).Type.Name); 241Assert.Equal("Int32", typeSpeculation.Type.Name);
Semantics\TargetTypedConditionalOperatorTests.cs (20)
347var actualType = model.GetTypeInfo(conditionalExpr).Type; 356Assert.Equal(naturalType, model.GetTypeInfo(conditionalExpr).Type.ToTestDisplayString(includeNonNullable: false)); 364Assert.Equal(SpecialType.System_Boolean, model.GetTypeInfo(conditionalExpr.Condition).Type!.SpecialType); 671Assert.Equal("System.Object", typeInfo.Type.ToTestDisplayString()); 692Assert.Null(typeInfo.Type); 742Assert.Null(typeInfo.Type); 747Assert.Equal("C", trueBranchTypeInfo.Type.ToTestDisplayString()); 757Assert.Equal("C", falseBranchTypeInfo.Type.ToTestDisplayString()); 785Assert.Null(typeInfo.Type); 790Assert.Equal("C", trueBranchTypeInfo.Type.ToTestDisplayString()); 800Assert.Equal("C", falseBranchTypeInfo.Type.ToTestDisplayString()); 829Assert.Null(typeInfo.Type); 834Assert.Equal("C", trueBranchTypeInfo.Type.ToTestDisplayString()); 844Assert.Equal("C", falseBranchTypeInfo.Type.ToTestDisplayString()); 877Assert.Null(typeInfo.Type); 882Assert.Equal("C", trueBranchTypeInfo.Type.ToTestDisplayString()); 892Assert.Equal("C", falseBranchTypeInfo.Type.ToTestDisplayString()); 923Assert.Null(typeInfo.Type); 928Assert.Equal("C", trueBranchTypeInfo.Type.ToTestDisplayString()); 938Assert.Equal("C", falseBranchTypeInfo.Type.ToTestDisplayString());
Semantics\TargetTypedDefaultTests.cs (44)
45Assert.Equal("System.Int32", model.GetTypeInfo(def).Type.ToTestDisplayString()); 145Assert.Equal("System.Int32", model.GetTypeInfo(def).Type.ToTestDisplayString()); 198Assert.Equal("S", model.GetTypeInfo(def).Type.ToTestDisplayString()); 246Assert.Equal("System.Object", model.GetTypeInfo(def).Type.ToTestDisplayString()); 255Assert.Null(model.GetTypeInfo(nullSyntax).Type); 283Assert.Equal("System.Object", model.GetTypeInfo(def).Type.ToTestDisplayString()); 292Assert.Null(model.GetTypeInfo(nullSyntax).Type); 328Assert.Equal("T", model.GetTypeInfo(default1).Type.ToTestDisplayString()); 334Assert.Equal("?", model.GetTypeInfo(default2).Type.ToTestDisplayString()); 522Assert.Equal("?", model.GetTypeInfo(def).Type.ToTestDisplayString()); 531Assert.Null(model.GetTypeInfo(nullSyntax).Type); 568Assert.Equal("?", model.GetTypeInfo(def).Type.ToTestDisplayString()); 577Assert.Null(model.GetTypeInfo(nullSyntax).Type); 611Assert.Equal("?", model.GetTypeInfo(def).Type.ToTestDisplayString()); 620Assert.Null(model.GetTypeInfo(nullSyntax).Type); 669Assert.Equal("T", model.GetTypeInfo(def).Type.ToTestDisplayString()); 750Assert.Equal("?", model.GetTypeInfo(def).Type.ToTestDisplayString()); 759Assert.Null(model.GetTypeInfo(nullSyntax).Type); 838Assert.Equal("S", model.GetTypeInfo(def).Type.ToTestDisplayString()); 867Assert.Equal("T", model.GetTypeInfo(def).Type.ToTestDisplayString()); 1144Assert.Equal("System.Int32", model.GetTypeInfo(def).Type.ToTestDisplayString()); 1633Assert.Equal("?", model.GetTypeInfo(defaultLiteral).Type.ToTestDisplayString()); 1743Assert.Null(model.GetTypeInfo(@default).Type); 1748Assert.Equal(semanticType, model.GetTypeInfo(@default).Type.ToTestDisplayString()); 1807Assert.Equal(semanticType, model.GetTypeInfo(@default).Type.ToTestDisplayString()); 1878Assert.Equal(semanticType, model.GetTypeInfo(@default).Type.ToTestDisplayString()); 1913Assert.Equal("S", model.GetTypeInfo(first).Type.ToTestDisplayString()); 2091Assert.Equal("?", model.GetTypeInfo(def).Type.ToTestDisplayString()); 2335Assert.Equal("System.Object[]", model.GetTypeInfo(def).Type.ToTestDisplayString()); 2416Assert.Equal("System.Object[]", model.GetTypeInfo(first).Type.ToTestDisplayString()); 2421Assert.Equal("System.Object", model.GetTypeInfo(second).Type.ToTestDisplayString()); 2426Assert.Equal("S[]", model.GetTypeInfo(third).Type.ToTestDisplayString()); 2431Assert.Equal("S", model.GetTypeInfo(fourth).Type.ToTestDisplayString()); 2459Assert.Equal("System.Int32", model.GetTypeInfo(def).Type.ToTestDisplayString()); 2486Assert.Null(typeInfo.Type); 3056Assert.Equal("System.Int32?", model.GetTypeInfo(def).Type.ToTestDisplayString()); 3346Assert.Equal("C", model.GetTypeInfo(def).Type.ToTestDisplayString()); 3385Assert.Equal("D", model.GetTypeInfo(def).Type.ToTestDisplayString()); 3516Assert.Equal("System.Int16", model.GetTypeInfo(def).Type.ToTestDisplayString()); 3526Assert.Equal("System.Int16", conversionTypeInfo.Type.ToTestDisplayString()); 3576Assert.Equal("System.Int32?", model.GetTypeInfo(default1).Type.ToTestDisplayString()); 3584Assert.Equal("System.Int32?", model.GetTypeInfo(default2).Type.ToTestDisplayString()); 3591Assert.Equal("System.Byte?", model.GetTypeInfo(default3).Type.ToTestDisplayString()); 3598Assert.Equal("System.Byte", model.GetTypeInfo(default4).Type.ToTestDisplayString());
Semantics\TargetTypedSwitchExpressionTests.cs (15)
44Assert.Null(typeInfo.Type); 49Assert.Equal("C", objectCreationExpressionTypeInfo.Type.ToTestDisplayString()); 60Assert.Equal("C", defaultLiteralExpressionTypeInfo.Type.ToTestDisplayString()); 92Assert.Null(typeInfo.Type); 97Assert.Equal("C", objectCreationExpressionTypeInfo.Type.ToTestDisplayString()); 108Assert.Equal("C", defaultLiteralExpressionTypeInfo.Type.ToTestDisplayString()); 141Assert.Null(typeInfo.Type); 146Assert.Equal("C", objectCreationExpressionTypeInfo.Type.ToTestDisplayString()); 157Assert.Equal("C", defaultLiteralExpressionTypeInfo.Type.ToTestDisplayString()); 194Assert.Null(typeInfo.Type); 199Assert.Equal("C", objectCreationExpressionTypeInfo.Type.ToTestDisplayString()); 210Assert.Equal("C", defaultLiteralExpressionTypeInfo.Type.ToTestDisplayString()); 245Assert.Null(typeInfo.Type); 250Assert.Equal("C", objectCreationExpressionTypeInfo.Type.ToTestDisplayString()); 261Assert.Equal("C", defaultLiteralExpressionTypeInfo.Type.ToTestDisplayString());
Semantics\TopLevelStatementsTests.cs (8)
255Assert.Null(typeInfo.Type); 266Assert.Null(typeInfo.Type); 406Assert.Null(typeInfo.Type); 417Assert.Null(typeInfo.Type); 1454Assert.Equal("System.String", model2.GetTypeInfo(nameRef).Type.ToTestDisplayString()); 1472Assert.Equal("System.String", model2.GetTypeInfo(nameRef).Type.ToTestDisplayString()); 6326Assert.Equal("A", semanticModel.GetTypeInfo(invocation).Type.Name); 6334Assert.Equal("A", semanticModel.GetTypeInfo(invocation).Type.Name);
Semantics\TypeOfTests.cs (1)
39Assert.Equal("C", typeInfo.Type.ToTestDisplayString());
Semantics\UnsafeTests.cs (14)
5384Select(syntax => model.GetTypeInfo(syntax).Type).All(type => type.GetSymbol().IsManagedTypeNoUseSiteDiagnostics)); 7266var type = typeInfo.Type; 7333var type = typeInfo.Type; 7339Assert.Equal("?*", typeInfo.Type.ToTestDisplayString()); 7340Assert.Equal(TypeKind.Pointer, typeInfo.Type.TypeKind); 7341Assert.Equal(TypeKind.Error, ((IPointerTypeSymbol)typeInfo.Type).PointedAtType.TypeKind); 7371var type = typeInfo.Type; 7377Assert.Equal("?*", typeInfo.Type.ToTestDisplayString()); 7378Assert.Equal(TypeKind.Pointer, typeInfo.Type.TypeKind); 7379Assert.Equal(TypeKind.Error, ((IPointerTypeSymbol)typeInfo.Type).PointedAtType.TypeKind); 7413var type = typeInfo.Type; 7544var type = typeInfo.Type; 8350Assert.Null(typeInfo.Type); 8386var type = typeInfo.Type;
Semantics\UsingStatementTests.cs (1)
1855Assert.Equal(SpecialType.System_Int32, model.GetTypeInfo(node).Type.SpecialType);
Semantics\Utf8StringsLiteralsTests.cs (13)
2976Assert.Equal("System.String", typeInfo.Type.ToTestDisplayString()); 3004Assert.Equal("System.Byte[]", typeInfo.Type.ToTestDisplayString()); 3032Assert.Equal("System.String", typeInfo.Type.ToTestDisplayString()); 3060Assert.Equal("System.Span<System.Byte>", typeInfo.Type.ToTestDisplayString()); 3088Assert.Equal("System.String", typeInfo.Type.ToTestDisplayString()); 3116Assert.Equal("System.ReadOnlySpan<System.Byte>", typeInfo.Type.ToTestDisplayString()); 3144Assert.Equal("System.ReadOnlySpan<System.Byte>", typeInfo.Type.ToTestDisplayString()); 3172Assert.Equal("System.Byte[]", typeInfo.Type.ToTestDisplayString()); 3200Assert.Equal("System.ReadOnlySpan<System.Byte>", typeInfo.Type.ToTestDisplayString()); 3228Assert.Equal("System.ReadOnlySpan<System.Byte>", typeInfo.Type.ToTestDisplayString()); 3256Assert.Equal("System.ReadOnlySpan<System.Byte>", typeInfo.Type.ToTestDisplayString()); 3284Assert.Equal("System.String", typeInfo.Type.ToTestDisplayString()); 3312Assert.Equal("System.ReadOnlySpan<System.Char>", typeInfo.Type.ToTestDisplayString());
Semantics\ValueTupleTests.cs (15)
670Assert.Null(tupleTypeInfo.Type); 675Assert.Equal("System.Object", firstTupleArgInfo.Type.ToTestDisplayString()); 680Assert.Equal("C", secondTupleArgInfo.Type.ToTestDisplayString()); 710Assert.Null(tupleTypeInfo.Type); 715Assert.Equal("C", firstTupleArgInfo.Type.ToTestDisplayString()); 720Assert.Equal("System.Int32", secondTupleArgInfo.Type.ToTestDisplayString()); 751Assert.Null(tupleTypeInfo.Type); 756Assert.Equal("C", firstTupleArgInfo.Type.ToTestDisplayString()); 761Assert.Equal("System.String", secondTupleArgInfo.Type.ToTestDisplayString()); 793Assert.Null(tupleTypeInfo.Type); 798Assert.Equal("System.Int32", firstTupleArgInfo.Type.ToTestDisplayString()); 803Assert.Equal("C", secondTupleArgInfo.Type.ToTestDisplayString()); 833Assert.Null(tupleTypeInfo.Type); 838Assert.Null(firstTupleArgInfo.Type); 843Assert.Equal("C", secondTupleArgInfo.Type.ToTestDisplayString());
SourceGeneration\SyntaxAwareGeneratorTests.cs (1)
796Assert.Same(dType, typeInfo.Type);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (195)
Compilation\GetSemanticInfoBrokenCodeTests.cs (2)
248Assert.Equal(comp.GetWellKnownType(WellKnownType.System_Type), info.Type); 271Assert.Equal(SpecialType.System_Int32, info.Type.SpecialType);
Compilation\GetSemanticInfoTests.cs (43)
78Assert.Null(info.Type); 110Assert.Null(info.Type); 144Assert.Null(info.Type); 193Assert.Null(info.Type); 648var conversion = info.Type != null && info.ConvertedType != null ? model.Compilation.ClassifyConversion(info.Type, info.ConvertedType) : Conversion.NoConversion; 649Assert.Equal(conversion.IsImplicit, model.Compilation.HasImplicitConversion(info.Type, info.ConvertedType)); 858Assert.Null(info.Type); 862Assert.NotNull(info.Type); 863var act2 = semanticModel.Compilation.ClassifyConversion(info.Type, info.ConvertedType); 2403Assert.NotNull(typeInfo.Type); 2404Assert.Equal("System.Int32", typeInfo.Type.ToTestDisplayString()); 2410Assert.Null(typeInfo.Type); 2414Assert.NotNull(typeInfo.Type); 2415Assert.Equal("System.String", typeInfo.Type.ToTestDisplayString()); 2420Assert.NotNull(typeInfo.Type); 2421Assert.Equal("System.Byte", typeInfo.Type.ToTestDisplayString()); 2426Assert.NotNull(typeInfo.Type); 2427Assert.Equal("System.Byte", typeInfo.Type.ToTestDisplayString()); 2458Assert.Equal(SpecialType.System_Double, info.Type.SpecialType); 2487Assert.Equal(SpecialType.System_Int32, info.Type.SpecialType); 2511Assert.Equal(SpecialType.System_Int32, info.Type.SpecialType); 2732Assert.Equal(type, typeInfo.Type); 2803Assert.Equal(returnType, typeInfo.Type); 3474Assert.Equal("B", argTypeInfo.Type.ToTestDisplayString()); 3528Assert.Equal("B<A>", argTypeInfo.Type.ToTestDisplayString()); 3587Assert.Equal("System.IntPtr", argTypeInfo.Type.ToTestDisplayString()); 3611Assert.Equal(SpecialType.System_Int32, literalTypeInfo.Type.SpecialType); 3636Assert.Equal(SpecialType.System_Int32, literalTypeInfo.Type.SpecialType); 3644Assert.Equal(SpecialType.System_Int64, castTypeInfo.Type.SpecialType); 3669Assert.Equal(SpecialType.System_Int32, literalTypeInfo.Type.SpecialType); 3677Assert.Equal(SpecialType.System_Object, castTypeInfo.Type.SpecialType); 3681Assert.Equal(ConversionKind.Boxing, model.ClassifyConversion(literal, castTypeInfo.Type).Kind); 3705Assert.Equal(SpecialType.System_Int32, literalTypeInfo.Type.SpecialType); 3713Assert.Equal(SpecialType.System_Int64, cast1TypeInfo.Type.SpecialType); 3718Assert.Equal(ConversionKind.ImplicitNumeric, model.ClassifyConversion(literal, cast1TypeInfo.Type).Kind); 3725Assert.Equal(SpecialType.System_Object, cast2TypeInfo.Type.SpecialType); 3729Assert.Equal(ConversionKind.Boxing, model.ClassifyConversion(cast1, cast2TypeInfo.Type).Kind); 4275Assert.NotNull(info.Type); 4381Assert.Equal(TypeKind.Enum, info.Type.TypeKind); 5537Assert.Null(typeInfo.Type); 5553Assert.Null(typeInfo.Type); 5927Assert.Equal(SpecialType.System_Boolean, model.GetTypeInfo(expr).Type.SpecialType);
Compilation\SemanticModelAPITests.cs (69)
55Assert.Equal(SpecialType.System_Int32, typeInfo.Type.SpecialType); 59Assert.Equal(SpecialType.System_Char, typeInfo.Type.SpecialType); 142Assert.Equal(SpecialType.System_Int32, typeInfo.Type.SpecialType); 152Assert.Equal(SpecialType.System_Char, typeInfo.Type.SpecialType); 541Assert.Equal(a, model.GetTypeInfo(bbase).Type); 567Assert.Equal(b, model.GetTypeInfo(cbase).Type); 615Assert.Equal(at2, model.GetTypeInfo(bbase).Type); 931Assert.NotNull(type1.Type); 932Assert.Equal("System.Int32", type1.Type.ToTestDisplayString()); 933Assert.NotNull(type2.Type); 934Assert.Equal("System.Int32", type2.Type.ToTestDisplayString()); 1433Assert.NotNull(typeInfo.Type); 1434Assert.Equal("String", typeInfo.Type.Name); 1471Assert.NotNull(typeInfo.Type); 1472Assert.Equal("Int16", typeInfo.Type.Name); 1519Assert.NotNull(typeInfo.Type); 1520Assert.Equal("Int16", typeInfo.Type.Name); 1567Assert.NotNull(typeInfo.Type); 1568Assert.Equal("E", typeInfo.Type.Name); 1607Assert.NotNull(typeInfo.Type); 1608Assert.Equal("Int16", typeInfo.Type.Name); 1692Assert.NotNull(typeInfo.Type); 1693Assert.Equal("String", typeInfo.Type.Name); 1794Assert.NotNull(typeInfo.Type); 1795Assert.Equal("Int32", typeInfo.Type.Name); 2044Assert.Equal("Int32", typeInfo.Type.Name); 2276Assert.Equal("System.Int32*", typeInfo.Type.ToTestDisplayString()); 2277Assert.Equal(TypeKind.Pointer, typeInfo.Type.TypeKind); 2400Assert.NotNull(typeInfo.Type); 2401Assert.Equal("Int32", typeInfo.Type.Name); 2718var typeSymbol = speculativeModel.GetTypeInfo(speculatedTypeSyntax).Type; 2732typeSymbol = speculativeModel.GetTypeInfo(right).Type; 3031symbol = speculativeModel.GetTypeInfo(speculatedCref.Container).Type; 3059symbol = speculativeModel.GetTypeInfo(speculatedCref.Container).Type; 3132Assert.Equal(SpecialType.System_Decimal, typeInfo.Type.SpecialType); 3197Assert.Equal(SpecialType.System_Int32, info.Type.SpecialType); 3232Assert.Equal(SpecialType.System_Int32, info.Type.SpecialType); 3789Assert.Equal(stringType, identifierInfo.Type); 3947Assert.True(typeInfo0.Type != null && typeInfo0.Type.SpecialType == SpecialType.System_Int16); 3956Assert.True(typeInfo1.Type != null && typeInfo1.Type.Equals(type1)); 3963Assert.True(typeInfo2.Type != null && typeInfo2.Type.Equals(type2)); 4221Assert.Equal(SpecialType.System_String, model.GetTypeInfo(actual[0]).Type.SpecialType); 4246Assert.Equal(SpecialType.System_Int32, model.GetTypeInfo(actual[0]).Type.SpecialType); 4250Assert.Equal(SpecialType.System_Boolean, model.GetTypeInfo(actual[1]).Type.SpecialType); 4274Assert.Null(model.GetTypeInfo(actual[0]).Type); 4311Assert.Equal(SpecialType.System_String, model.GetTypeInfo(actual[0]).Type.SpecialType); 4315Assert.Equal(SpecialType.System_String, model.GetTypeInfo(actual[1]).Type.SpecialType); 4318Assert.Equal(SpecialType.System_String, model.GetTypeInfo(actual[2]).Type.SpecialType); 4322Assert.Equal(SpecialType.System_String, model.GetTypeInfo(actual[3]).Type.SpecialType); 4326Assert.Equal(SpecialType.System_String, model.GetTypeInfo(actual[4]).Type.SpecialType); 4330Assert.Equal(SpecialType.System_String, model.GetTypeInfo(actual[5]).Type.SpecialType); 4334Assert.Equal(SpecialType.System_String, model.GetTypeInfo(actual[6]).Type.SpecialType); 4338Assert.Equal(SpecialType.System_String, model.GetTypeInfo(actual[7]).Type.SpecialType); 4362Assert.Equal(TypeKind.Dynamic, dynamicType.Type.TypeKind); 4464Assert.Equal(SpecialType.System_Boolean, originalTypeInfo.Type.SpecialType); 4467Assert.Equal(SpecialType.System_Boolean, speculativeTypeInfo.Type.SpecialType); 4527Assert.NotNull(typeInfo.Type); 4529Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4531var type = (INamedTypeSymbol)typeInfo.Type; 4591Assert.NotNull(typeInfo.Type); 4593Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4595var type = (INamedTypeSymbol)typeInfo.Type; 4605Assert.NotNull(typeInfo.Type); 4607Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 4609var type = (INamedTypeSymbol)typeInfo.Type; 4811var type = model.GetTypeInfo(exprSyn).Type;
Compilation\SemanticModelGetDeclaredSymbolAPITests.cs (1)
5663Assert.Equal(expectedType, type.Type.ToTestDisplayString());
Compilation\SemanticModelGetSemanticInfoTests.cs (7)
14742Assert.Equal("System.Int32", info1.Type.ToTestDisplayString()); 14805Assert.Null(typeInfo.Type); 14821Assert.Equal("Test.C", typeInfo.Type.ToTestDisplayString()); 14901Assert.Null(typeInfo.Type); 14917Assert.Equal("Test.I", typeInfo.Type.ToTestDisplayString()); 15012Assert.Null(typeInfo.Type); 15027Assert.Equal("Test.I", typeInfo.Type.ToTestDisplayString());
SymbolDisplay\SymbolDisplayTests.cs (3)
8515var type = semanticModel.GetTypeInfo(declaration.Declaration.Type).Type; 8566var type = semanticModel.GetTypeInfo(declaration.Declaration.Type).Type; 9267var type = model.GetTypeInfo(invocation).Type;
Symbols\AnonymousTypesSymbolTests.cs (3)
1480Assert.NotNull(info1.Type); 1649Assert.NotNull(info.Type); 1650var mems = info.Type.GetMembers();
Symbols\CorLibrary\CorTypes.cs (2)
304Assert.Equal(InternalSpecialType.System_Type, model.GetTypeInfo(node).Type.GetSymbol().ExtendedSpecialType); 369Assert.Equal((ExtendedSpecialType)0, model.GetTypeInfo(node).Type.GetSymbol().ExtendedSpecialType);
Symbols\CovariantReturnTests.cs (4)
386Assert.Equal(typeInfo.Type, typeInfo.ConvertedType); 2632Assert.Null(typeInfo.Type); 2636Assert.Null(typeInfo.Type); 2640Assert.Equal(typeInfo.Type, typeInfo.ConvertedType);
Symbols\ExtensionMethodTests.cs (5)
3781var type = model.GetTypeInfo(member.Expression).Type; 3868var baseClass = model.GetTypeInfo(instance).Type; 3915var baseClass = model.GetTypeInfo(instance).Type; 3960var baseClass = model.GetTypeInfo(instance).Type; 4010var baseClass = model.GetTypeInfo(instance).Type;
Symbols\FunctionPointerTypeSymbolTests.cs (5)
1268Assert.Equal("delegate*<C.D>", typeInfo.Type.ToTestDisplayString()); 1269Assert.True(((IFunctionPointerTypeSymbol)typeInfo.Type!).Signature.ReturnType.IsErrorType()); 1272Assert.Equal("C.D", nestedTypeInfo.Type!.ToTestDisplayString()); 1273Assert.False(nestedTypeInfo.Type!.IsErrorType()); 1737Assert.Equal("System.String", typeInfo.Type.ToTestDisplayString());
Symbols\GenericConstraintTests.cs (2)
7437Assert.Equal("Base.Nest", model.GetTypeInfo(nest).Type.ToDisplayString()); 7462Assert.Equal("Base.Nest", model.GetTypeInfo(nest).Type.ToDisplayString());
Symbols\IndexerTests.cs (1)
2641var type = model.GetTypeInfo(syntax).Type.GetSymbol();
Symbols\RequiredMembersTests.cs (1)
7648var tupleType = model.GetTypeInfo(tuple).Type.GetSymbol<NamedTypeSymbol>()!;
Symbols\Source\BaseClassTests.cs (1)
2034Assert.Equal(SpecialType.System_Int32, typeInfo.Type.SpecialType);
Symbols\Source\FileModifierTests.cs (10)
1235Assert.Equal(expectedSymbol.GetPublicSymbol(), info.Type); 1369Assert.Equal(c1.GetPublicSymbol(), info.Type); 1435Assert.Equal(c1.GetPublicSymbol(), info.Type); 1493Assert.Equal(c1.GetPublicSymbol(), info.Type); 1807Assert.Equal(expectedSymbol.GetPublicSymbol(), info.Type); 1882Assert.Equal(expectedSymbol.GetPublicSymbol(), info.Type); 4126Assert.Equal("System.Void@<tree 0>", typeInfo.Type!.ToDisplayString(SymbolDisplayFormat.TestFormat.WithCompilerInternalOptions(SymbolDisplayCompilerInternalOptions.IncludeContainingFileForFileTypes))); 4411var type = (INamedTypeSymbol)model.GetTypeInfo(node.Type!).Type!; 4455var type = (INamedTypeSymbol)model.GetTypeInfo(node.Type!).Type!; 4478var type = (INamedTypeSymbol)model.GetTypeInfo(node.Type!).Type!;
Symbols\Source\NullablePublicAPITests.cs (28)
56var arrayTypes = arrayAccesses.Select(arr => model.GetTypeInfoAndVerifyIOperation(arr.Expression).Type).Cast<IArrayTypeSymbol>().ToList(); 90var expressionTypes = invocations.Select(inv => model.GetTypeInfoAndVerifyIOperation(inv).Type).Cast<INamedTypeSymbol>().ToList(); 1221Assert.Equal(dType, dInfo.Type); 1228Assert.Equal(cType, cInfo.Type); 1235Assert.Equal(bType, creationInfo.Type); 2294Assert.Equal("System.Object?", typeInfo.Type.ToTestDisplayString()); 2469Assert.Equal(PublicNullableAnnotation.Annotated, typeInfo.Type.NullableAnnotation); 2920Assert.Equal(PublicNullableAnnotation.Annotated, typeInfo.Type.NullableAnnotation); 2924Assert.Equal(PublicNullableAnnotation.NotAnnotated, typeInfo.Type.NullableAnnotation); 2929Assert.Equal(PublicNullableAnnotation.None, typeInfo.Type.NullableAnnotation); 4245Assert.Equal(SpecialType.System_String, symbolInfo.Type.SpecialType); 4818Assert.Equal(PublicNullableAnnotation.NotAnnotated, info.Type.NullableAnnotation); 4823Assert.Equal(PublicNullableAnnotation.NotAnnotated, info.Type.NullableAnnotation); 4913Assert.Equal(PublicNullableAnnotation.NotAnnotated, typeInfo.Type.NullableAnnotation); 5008AssertEx.Equal("(System.String a, System.String b)", model.GetTypeInfo(tupleLiteral).Type.ToTestDisplayString(includeNonNullable: false)); 5052AssertEx.Equal("System.String?", model.GetTypeInfo(assignmentsInLambda[0].Right).Type.ToTestDisplayString(includeNonNullable: true)); 5053AssertEx.Equal("System.String!", model.GetTypeInfo(assignmentsInLambda[2].Right).Type.ToTestDisplayString(includeNonNullable: true)); 5065AssertEx.Equal("System.String!", model.GetTypeInfo(switchExpressionInput).Type.ToTestDisplayString(includeNonNullable: true)); 5069AssertEx.Equal("System.String!", model.GetTypeInfo(switchExpressionInput).Type.ToTestDisplayString(includeNonNullable: true)); 5100Assert.Equal("System.Object?", model.GetTypeInfo(binaryRight).Type.ToTestDisplayString(includeNonNullable: true)); 5132Assert.Equal("System.Object?", model.GetTypeInfo(binaryRight).Type.ToTestDisplayString(includeNonNullable: true)); 5160Assert.Equal("System.Object?", model.GetTypeInfo(binaryRightArgument).Type.ToTestDisplayString(includeNonNullable: true)); 5196Assert.NotNull(typeInfo.Type); 5197Assert.Equal(SpecialType.System_String, typeInfo.Type.SpecialType); 5198Assert.Equal(expectedAnnotation, typeInfo.Type.NullableAnnotation); 5231Assert.NotNull(typeInfo.Type); 5232Assert.Equal(SpecialType.System_String, typeInfo.Type.SpecialType); 5233Assert.Equal(PublicNullableAnnotation.None, typeInfo.Type.NullableAnnotation);
Symbols\Source\UsingAliasTests.cs (3)
105var usingAliasType = model.GetTypeInfo(usingAlias.NamespaceOrType).Type; 220var usingAliasType = model.GetTypeInfo(usingAlias.NamespaceOrType).Type; 275var usingAliasType = model.GetTypeInfo(usingAlias.NamespaceOrType).Type;
Symbols\TypeTests.cs (5)
1775Assert.NotNull(tinfo.Type); 1776Assert.Equal(TypeKind.Interface, ((ITypeSymbol)tinfo.Type).TypeKind); 1777Assert.Equal("NS.IGoo<float, System.PlatformID>", tinfo.Type.ToDisplayString()); 1780Assert.True(((ITypeSymbol)tinfo.Type).IsNullableType()); 1781Assert.Equal("float?", tinfo.Type.ToDisplayString());
Microsoft.CodeAnalysis.CSharp.Test.Utilities (8)
CompilationTestUtils.cs (8)
238summary.Type = typeInfo.Type; 249summary.Type = typeInfo.Type; 266summary.Type = typeInfo.Type; 275summary.Type = typeInfo.Type; 312summary.Type = typeInfo.Type; 357if (typeInfo.Type is null) 363Assert.Equal(typeInfo.Type.NullableAnnotation, iop.Type.NullableAnnotation); 484(annotation.IsConverted ? typeInfo.ConvertedType : typeInfo.Type).GetSymbol(),
Microsoft.CodeAnalysis.CSharp.WinRT.UnitTests (2)
CodeGen\WinMdEventTests.cs (1)
673Assert.Equal(SpecialType.System_Void, type.Type.SpecialType);
CodeGen\WinRTCollectionTests.cs (1)
7430var jsonObjType = model.GetTypeInfo(jsonObj).Type;
Microsoft.CodeAnalysis.CSharp.Workspaces (94)
Recommendations\CSharpRecommendationServiceRunner.cs (6)
61explicitLambdaParameterType = _context.SemanticModel.GetTypeInfo(parameter.Type, _cancellationToken).Type; 605var container = _context.SemanticModel.GetTypeInfo(identifier, _cancellationToken).Type; 655var container = _context.SemanticModel.GetTypeInfo(expression, _cancellationToken).Type; 665var container = _context.SemanticModel.GetTypeInfo(expression, _cancellationToken).Type; 680var container = _context.SemanticModel.GetTypeInfo(expression, _cancellationToken).Type; 929: semanticModel.GetTypeInfo(originalExpression, _cancellationToken).Type;
Simplification\CSharpSimplificationService.Expander.cs (4)
82var objectCreationType = _semanticModel.GetTypeInfo(objectCreationExpression).Type; 793if (typeinfo.Type != null && typeinfo.Type.TypeKind == TypeKind.Dynamic) 1017var type = semanticModel.GetTypeInfo(typeOfExpression.Type, _cancellationToken).Type as INamedTypeSymbol;
Simplification\Reducers\CSharpNullableAnnotationReducer.cs (1)
52var type = semanticModel.GetTypeInfo(node, cancellationToken).Type;
Simplification\Simplifiers\AbstractCSharpSimplifier.cs (4)
151var type = semanticModel.GetTypeInfo(node, cancellationToken).Type; 165var type = semanticModel.GetTypeInfo(node, cancellationToken).Type; 290if (!symbol.Equals(typeInfo.Type)) 387semanticModel.GetTypeInfo(invocationExpr).Type.SpecialType == SpecialType.System_String;
Simplification\Simplifiers\ExpressionSimplifier.cs (1)
375var type = semanticModel.GetTypeInfo(memberAccess.GetRequiredParent(), cancellationToken).Type;
Simplification\Simplifiers\NameSimplifier.cs (1)
250var type = semanticModel.GetTypeInfo(name, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\CodeStyle\TypeStyle\TypeStyleHelper.cs (1)
126if (semanticModel.GetTypeInfo(containingTypeName, cancellationToken).Type is not INamedTypeSymbol containingType)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\DefaultExpressionSyntaxExtensions.cs (2)
52var entityType = semanticModel.GetTypeInfo(typeSyntax, cancellationToken).Type; 53var defaultType = semanticModel.GetTypeInfo(defaultExpression.Type, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ExpressionSyntaxExtensions.cs (3)
388expressionTypes.Type.IsInlineArray()) 938type = semanticModel.GetTypeInfo(expression, cancellationToken).Type; 996=> semanticModel.GetTypeInfo(castExpression.Type, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (2)
74if (semanticModel.GetTypeInfo(varDecl.Type, cancellationToken).Type.IsSpanOrReadOnlySpan()) 376var potentialType = semanticModel.GetSpeculativeTypeInfo(expression.SpanStart, expression, SpeculativeBindingOption.BindAsTypeOrNamespace).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SemanticModelExtensions.cs (4)
115if (typeInfo.Type != null) 117symbol = typeInfo.Type; 420if (info.Type == null) 425return semanticModel.GenerateNameFromType(info.Type, CSharpSyntaxFacts.Instance, capitalize);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\TypeSyntaxExtensions.cs (1)
38var type = semanticModel.GetTypeInfo(typeSyntax).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SemanticFacts\CSharpSemanticFacts.cs (1)
375var type = semanticModel.GetTypeInfo(node, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (20)
128var enumType = semanticModel.GetTypeInfo(castExpression.Expression, cancellationToken).Type as INamedTypeSymbol; 129var castedType = semanticModel.GetTypeInfo(castExpression.Type, cancellationToken).Type; 163var enumType = semanticModel.GetTypeInfo(castExpression.Expression, cancellationToken).Type as INamedTypeSymbol; 164var castedType = semanticModel.GetTypeInfo(castExpression.Type, cancellationToken).Type; 168var parentCastType = semanticModel.GetTypeInfo(parentCast.Type, cancellationToken).Type; 507var castedExpressionType = originalSemanticModel.GetTypeInfo(castedExpressionNode, cancellationToken).Type; 508var isType = originalSemanticModel.GetTypeInfo(isExpression.Right, cancellationToken).Type; 623var castedType = originalSemanticModel.GetTypeInfo(castNode, cancellationToken).Type; 698var castType = semanticModel.GetTypeInfo(castNode, cancellationToken).Type; 954var castType = originalSemanticModel.GetTypeInfo(castExpression, cancellationToken).Type; 988var otherSideType = originalSemanticModel.GetTypeInfo(otherSide, cancellationToken).Type; 989var thisSideRewrittenType = rewrittenSemanticModel.GetTypeInfo(rewrittenExpression, cancellationToken).Type; 1034=> IsNullOrErrorType(info.Type) || IsNullOrErrorType(info.ConvertedType); 1159var castSideType = semanticModel.GetTypeInfo(castSide, cancellationToken).Type; 1160var castedExpressionType = semanticModel.GetTypeInfo(castExpression.Expression, cancellationToken).Type; 1164var otherSideType = semanticModel.GetTypeInfo(otherSide, cancellationToken).Type; 1182var castType = semanticModel.GetTypeInfo(castNode, cancellationToken).Type; 1183var castedExpressionType = semanticModel.GetTypeInfo(castedExpressionNode, cancellationToken).Type; 1224return typeInfo.Type?.Kind == SymbolKind.ArrayType; 1409var rewrittenType = rewrittenSemanticModel.GetTypeInfo(rewrittenExpression, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\SpeculationAnalyzer.cs (15)
386var originalExpressionType = originalExpressionTypeInfo.Type; 387var newExpressionType = newExpressionTypeInfo.Type; 435var originalCaseType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode, this.CancellationToken).Type; 436var newCaseType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode, this.CancellationToken).Type; 494if (!Equals(originalExprType.Type, replacedExprType.Type)) 545if (!Equals(originalExpressionTypeInfo.Type, newExpressionTypeInfo.Type)) 561var originalExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalAnonymousObjectMemberDeclarator.Expression, this.CancellationToken).Type; 562var newExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(replacedAnonymousObjectMemberDeclarator.Expression, this.CancellationToken).Type; 702var originalConvertedType = this.OriginalSemanticModel.GetTypeInfo(originalIsOrAsExpression.Right).Type; 703var newConvertedType = this.SpeculativeSemanticModel.GetTypeInfo(newIsOrAsExpression.Right).Type; 758SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.ConvertedType)) 785SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.ConvertedType)) 804SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.ConvertedType))
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpTypeStyleHelper.State.cs (3)
94var declaredTypeSymbol = semanticModel.GetTypeInfo(variableDeclaration.Type.StripRefIfNeeded(), cancellationToken).Type; 112? IsMadeOfSpecialTypes(semanticModel.GetTypeInfo(typeSyntax.StripRefIfNeeded()).Type) 152semanticModel.GetTypeInfo(typeSyntax).Type?.IsSpecialType() == true;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseExplicitTypeHelper.cs (2)
146return !initializerTypeInfo.Type.IsErrorType(); 155var declaredType = semanticModel.GetTypeInfo(typeName.StripRefIfNeeded(), cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseImplicitTypeHelper.cs (5)
175var declarationType = semanticModel.GetTypeInfo(declarationTypeNode, cancellationToken).Type; 185var newDeclarationType = newSemanticModel.GetTypeInfo(newDeclarationTypeNode, cancellationToken).Type; 258var declaredType = semanticModel.GetTypeInfo(typeName.StripRefIfNeeded(), cancellationToken).Type; 298var initializerType = semanticModel.GetTypeInfo(expression, cancellationToken).Type; 306var initializerType = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTokenExtensions.cs (1)
693return typeInfo.Type.IsNumericType();
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ExpressionSyntaxExtensions.cs (2)
119SpeculativeBindingOption.BindAsTypeOrNamespace).Type; 176name.SpanStart, name, SpeculativeBindingOption.BindAsExpression).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\InternalExtensions.cs (4)
26return typeInfo.Type?.IsErrorType() == false ? typeInfo.Type : semanticModel.Compilation.ObjectType; 33if (typeInfo.Type != null && typeInfo.Type.SpecialType == SpecialType.System_Void)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpMoveDeclarationNearReferenceService.cs (1)
63return Equals(localSymbol.Type, rightType.Type);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpSemanticFactsService.cs (1)
135var type = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (8)
106var typeInferenceInfo = new TypeInferenceInfo(typeInfo.Type); 440if (info.Type is not INamedTypeSymbol type) 461if (info.Type is not INamedTypeSymbol type) 501if (typeInfo.Type != null && typeInfo.Type.IsEnumType()) 503return CreateResult(typeInfo.Type); 567if (info.Type is INamedTypeSymbol type) 1234return CreateResult(typeInfo.Type);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Utilities\NullableHelpers\NullableExtensions.cs (1)
13=> typeInfo.Type?.WithNullableAnnotation(typeInfo.Nullability.Annotation);
Microsoft.CodeAnalysis.EditorFeatures.Test.Utilities (2)
ChangeSignature\AddedParameterOrExistingIndex.cs (2)
68LanguageNames.CSharp => semanticModel.GetSpeculativeTypeInfo(0, CSharp.SyntaxFactory.ParseTypeName(_addedParameterFullyQualifiedTypeName!), SpeculativeBindingOption.BindAsTypeOrNamespace).Type, 69LanguageNames.VisualBasic => semanticModel.GetSpeculativeTypeInfo(0, VisualBasic.SyntaxFactory.ParseTypeName(_addedParameterFullyQualifiedTypeName!), SpeculativeBindingOption.BindAsTypeOrNamespace).Type,
Microsoft.CodeAnalysis.Features (80)
AddImport\AbstractAddImportFeatureService.cs (2)
615return semanticModel.GetTypeInfo(innerExpression).Type; 627return semanticModel.GetTypeInfo(collectionExpression).Type;
AddImport\SymbolReferenceFinder.cs (2)
404return (semanticInfo.Type, isStatic: symbol is ITypeSymbol); 429var objectCreationType = _semanticModel.GetTypeInfo(objectCreationExpression, cancellationToken).Type;
ChangeSignature\AbstractChangeSignatureService.cs (1)
1063return !semanticModel.Compilation.HasImplicitConversion(fromType.Type, toType);
CodeRefactorings\AddAwait\AbstractAddAwaitCodeRefactoringProvider.cs (2)
77if (!model.GetTypeInfo(node.GetRequiredParent().GetRequiredParent(), cancellationToken).Type.IsErrorType()) 104var type = model.GetTypeInfo(node, cancellationToken).Type;
Completion\Providers\AbstractInternalsVisibleToCompletionProvider.cs (1)
123var type = typeInfo.Type;
Completion\Providers\ImportCompletionProvider\AbstractExtensionMethodImportCompletionProvider.cs (1)
105var receiverTypeSymbol = semanticModel.GetTypeInfo(expressionNode, cancellationToken).Type;
ConvertAnonymousType\AbstractConvertAnonymousTypeCodeRefactoringProvider.cs (1)
30var anonymousType = semanticModel.GetTypeInfo(anonymousObject, cancellationToken).Type as INamedTypeSymbol;
ConvertAnonymousType\AbstractConvertAnonymousTypeToClassCodeRefactoringProvider.cs (1)
201var childType = semanticModel.GetTypeInfo(childCreation, cancellationToken).Type;
ConvertAnonymousType\AbstractConvertAnonymousTypeToTupleCodeRefactoringProvider.cs (1)
92if (semanticModel.GetTypeInfo(childNode, cancellationToken).Type is INamedTypeSymbol childType)
ConvertCast\AbstractConvertCastCodeRefactoringProvider.cs (1)
49var type = semanticModel.GetTypeInfo(typeNode, cancellationToken).Type;
ConvertForToForEach\AbstractConvertForToForEachCodeRefactoringProvider.cs (3)
105if (collectionType.Type is null or IErrorTypeSymbol) 117containingType, collectionType.Type, 139containingType, collectionType.Type, iterationType, cancellationToken),
ConvertNumericLiteral\AbstractConvertNumericLiteralCodeRefactoringProvider.cs (1)
48var symbol = semanticModel.GetTypeInfo(numericLiteralNode, cancellationToken).Type;
ConvertToInterpolatedString\AbstractConvertPlaceholderToInterpolatedStringRefactoringProvider.cs (2)
103if (typeInfo.Type is IArrayTypeSymbol || typeInfo.ConvertedType is IArrayTypeSymbol) 111var type = semanticModel.GetTypeInfo(syntaxFacts.GetExpressionOfArgument(argument), cancellationToken).Type;
ConvertTupleToStruct\AbstractConvertTupleToStructCodeRefactoringProvider.cs (3)
207var tupleType = semanticModel.GetTypeInfo(expressionOrType, cancellationToken).Type as INamedTypeSymbol; 649if (semanticModel.GetTypeInfo(childCreation, cancellationToken).Type is not INamedTypeSymbol childType) 762if (semanticModel.GetTypeInfo(childTupleType, cancellationToken).Type is not INamedTypeSymbol childType)
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (2)
2145var oldType = oldModel.GetTypeInfo(oldTypedNodes[t], cancellationToken).Type; 2146var newType = newModel.GetTypeInfo(newTypedNodes[t], cancellationToken).Type;
EmbeddedLanguages\AbstractLanguageDetector.cs (2)
127if (exprType.Type != null && 128TryGetOptions(semanticModel, exprType.Type, expr, cancellationToken, out var options))
EmbeddedLanguages\DateAndTime\LanguageServices\DateAndTimeLanguageDetector.cs (1)
63var type = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
EmbeddedLanguages\EmbeddedLanguageDetector.cs (1)
171var type = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
ExtractMethod\MethodExtractor.cs (1)
238var currentType = semanticModel.GetSpeculativeTypeInfo(this.OriginalSelectionResult.FinalSpan.Start, typeName, SpeculativeBindingOption.BindAsTypeOrNamespace).Type;
GenerateType\AbstractGenerateTypeService.cs (1)
197var type = argument == null ? null : semanticModel.GetTypeInfo(argument, cancellationToken).Type;
GenerateType\AbstractGenerateTypeService.State.cs (1)
158if (typeInfo.Type.IsModuleType())
IntroduceParameter\AbstractIntroduceParameterCodeRefactoringProvider.cs (1)
69var expressionType = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
IntroduceUsingStatement\AbstractIntroduceUsingStatementCodeRefactoringProvider.cs (1)
89var expressionType = semanticModel.GetTypeInfo(syntaxFacts.GetExpressionOfExpressionStatement(expressionStatement), cancellationToken).Type;
IntroduceVariable\AbstractIntroduceLocalForExpressionCodeRefactoringProvider.cs (1)
43var type = semanticModel.GetTypeInfo(expression).Type;
IntroduceVariable\AbstractIntroduceVariableService.cs (3)
383if (typeInfo.Type?.SpecialType == SpecialType.System_String && 389if (typeInfo.Type != null) 391return typeInfo.Type;
IntroduceVariable\AbstractIntroduceVariableService.State.cs (1)
80var expressionType = Document.SemanticModel.GetTypeInfo(Expression, cancellationToken).Type;
IntroduceVariable\AbstractIntroduceVariableService.State_ConstructorInitializer.cs (1)
36if (info.Type.ContainsAnonymousType())
IntroduceVariable\AbstractIntroduceVariableService.State_Field.cs (1)
43if (info.Type.ContainsAnonymousType())
IntroduceVariable\AbstractIntroduceVariableService.State_Query.cs (2)
30if (info.Type == null || info.Type.SpecialType == SpecialType.System_Void)
QuickInfo\CommonSemanticQuickInfoProvider.cs (2)
363if (IsOk(typeInfo.Type)) 364return new TokenInformation([typeInfo.Type]);
ReplaceConditionalWithStatements\AbstractReplaceConditionalWithStatementsCodeRefactoringProvider.cs (1)
284var conditionalType = semanticModel.GetTypeInfo(conditionalExpression, cancellationToken).Type;
Snippets\SnippetProviders\AbstractInlineStatementSnippetProvider.cs (1)
51if (TryGetInlineExpressionInfo(targetToken, syntaxFacts, semanticModel, out var expressionInfo, cancellationToken) && expressionInfo.TypeInfo.Type is { } type)
src\Analyzers\Core\Analyzers\ForEachCast\AbstractForEachCastDiagnosticAnalyzer.cs (1)
73var collectionType = semanticModel.GetTypeInfo(syntaxFacts.GetExpressionOfForeachStatement(node), cancellationToken).Type;
src\Analyzers\Core\Analyzers\SimplifyBooleanExpression\AbstractSimplifyConditionalDiagnosticAnalyzer.cs (1)
154typeInfo.Type?.SpecialType == SpecialType.System_Boolean &&
src\Analyzers\Core\Analyzers\SimplifyLinqExpression\AbstractSimplifyLinqExpressionDiagnosticAnalyzer.cs (1)
194return invocation.SemanticModel?.GetTypeInfo(expression).Type;
src\Analyzers\Core\Analyzers\UseCoalesceExpression\AbstractUseCoalesceExpressionForIfNullCheckDiagnosticAnalyzer.cs (1)
161var exprType = semanticModel.GetTypeInfo(initializer, cancellationToken).Type;
src\Analyzers\Core\Analyzers\UseCoalesceExpression\AbstractUseCoalesceExpressionForNullableTernaryConditionalCheckDiagnosticAnalyzer.cs (1)
115if (!nullableType.Equals(type.Type?.OriginalDefinition))
src\Analyzers\Core\Analyzers\UseCoalesceExpression\AbstractUseCoalesceExpressionForTernaryConditionalCheckDiagnosticAnalyzer.cs (1)
105conditionLeftIsNull ? conditionRightLow : conditionLeftLow, cancellationToken).Type;
src\Analyzers\Core\Analyzers\UseCollectionInitializer\AbstractObjectCreationExpressionAnalyzer.cs (1)
157if (typeInfo.Type is IDynamicTypeSymbol || typeInfo.ConvertedType is IDynamicTypeSymbol)
src\Analyzers\Core\Analyzers\UseCollectionInitializer\AbstractUseCollectionInitializerAnalyzer.cs (1)
216var type = this.SemanticModel.GetTypeInfo(_objectCreationExpression, cancellationToken).Type;
src\Analyzers\Core\Analyzers\UseCollectionInitializer\AbstractUseCollectionInitializerDiagnosticAnalyzer.cs (2)
149if (objectType.Type == null || !objectType.Type.AllInterfaces.Contains(ienumerableType))
src\Analyzers\Core\Analyzers\UseIsNullCheck\AbstractUseIsNullForReferenceEqualsDiagnosticAnalyzer.cs (1)
154var parameterType = semanticModel.GetTypeInfo(argumentExpression, cancellationToken).Type;
src\Analyzers\Core\Analyzers\UseNullPropagation\AbstractUseNullPropagationDiagnosticAnalyzer.cs (4)
192var whenPartType = semanticModel.GetTypeInfo(whenPartMatch, cancellationToken).Type; 196var type = semanticModel.GetTypeInfo(conditionalExpression, cancellationToken).Type; 221var memberType = semanticModel.GetTypeInfo(whenPartToCheck, cancellationToken).Type; 418var typeSymbol = semanticModel.GetTypeInfo(type, cancellationToken).Type;
src\Analyzers\Core\Analyzers\UseNullPropagation\AbstractUseNullPropagationDiagnosticAnalyzer_IfStatement.cs (2)
140var whenPartType = semanticModel.GetTypeInfo(whenPartMatch, cancellationToken).Type; 144var whenPartIsNullable = semanticModel.GetTypeInfo(whenPartMatch, cancellationToken).Type?.OriginalDefinition.SpecialType == SpecialType.System_Nullable_T;
src\Analyzers\Core\Analyzers\UseObjectInitializer\UseNamedMemberInitializerAnalyzer.cs (1)
126var type = this.SemanticModel.GetTypeInfo(_objectCreationExpression, cancellationToken).Type;
src\Analyzers\Core\CodeFixes\AddExplicitCast\AbstractAddExplicitCastCodeFixProvider.cs (1)
141var castType = semanticModel.GetTypeInfo(castTypeNode, cancellationToken).Type;
src\Analyzers\Core\CodeFixes\AddExplicitCast\Fixer.cs (1)
169&& semanticModel.GetTypeInfo(argumentExpression, cancellationToken).Type is ITypeSymbol argumentType
src\Analyzers\Core\CodeFixes\AddExplicitCast\InheritanceDistanceComparer.cs (1)
49var baseType = _semanticModel.GetTypeInfo(x.syntax).Type;
src\Analyzers\Core\CodeFixes\AddParameter\AbstractAddParameterCodeFixProvider.cs (4)
484if (argumentTypeInfo.Type == null && argumentTypeInfo.ConvertedType == null) 540if (parameterType.Equals(argumentTypeInfo.Type) || parameterType.Equals(argumentTypeInfo.ConvertedType)) 561if (argumentTypeInfo.Type != null) 563var conversion = compilation.ClassifyCommonConversion(argumentTypeInfo.Type, parameterType);
src\Analyzers\Core\CodeFixes\GenerateMember\AbstractGenerateMemberService.cs (8)
118if (typeInfo.Type is IPointerTypeSymbol pointerType) 132typeToGenerateIn = attributeType.Type as INamedTypeSymbol; 137typeToGenerateIn = semanticModel.GetTypeInfo(initializedObject, cancellationToken).Type as INamedTypeSymbol; 156typeToGenerateIn = semanticModel.GetTypeInfo(target, cancellationToken).Type as INamedTypeSymbol; 193typeToGenerateIn = typeInfo.Type is ITypeParameterSymbol typeParameter 195: typeInfo.Type as INamedTypeSymbol; 198isColorColorCase = typeInfo.Type != null && semanticInfo.Symbol != null && semanticInfo.Symbol.Name == typeInfo.Type.Name;
src\Analyzers\Core\CodeFixes\RemoveUnusedParametersAndValues\AbstractRemoveUnusedValuesCodeFixProvider.cs (1)
601var type = semanticModel.GetTypeInfo(node, cancellationToken).Type;
Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers (27)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
256AddCoupledNamedTypesCore(builder, typeInfo.Type, context.WellKnownTypeProvider);
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
59return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
Microsoft.CodeAnalysis.PublicApiAnalyzers (27)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
256AddCoupledNamedTypesCore(builder, typeInfo.Type, context.WellKnownTypeProvider);
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
59return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
Microsoft.CodeAnalysis.ResxSourceGenerator (27)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
256AddCoupledNamedTypesCore(builder, typeInfo.Type, context.WellKnownTypeProvider);
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
59return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
Microsoft.CodeAnalysis.VisualBasic (2)
Compilation\VisualBasicCompilation.vb (2)
848Return info.Type.SpecialType <> SpecialType.System_Void 853Return info.Type.SpecialType <> SpecialType.System_Void
Microsoft.CodeAnalysis.Workspaces (27)
Editing\SymbolEditorExtensions.cs (1)
44var typeRef = gen.GetBaseAndInterfaceTypes(decl).FirstOrDefault(r => model.GetTypeInfo(r, cancellationToken).Type.Equals(baseOrInterfaceType));
Shared\Extensions\SemanticModelExtensions.cs (1)
114type = typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
Microsoft.CodeAnalysis.Workspaces.UnitTests (1)
SymbolKeyTests.cs (1)
1277var symbol = semanticModel.GetTypeInfo(node).Type;
Microsoft.Maui.Controls.BindingSourceGen (8)
BindingSourceGenerator.cs (1)
196 var lambdaResultType = semanticModel.GetTypeInfo(lambdaBody, t).Type;
InvocationParser.cs (1)
97 var secondArgumentType = _context.SemanticModel.GetTypeInfo(secondArgument, cancellationToken: t).Type;
PathParser.cs (6)
44 var typeInfo = _context.SemanticModel.GetTypeInfo(memberAccess).Type; 74 var elementType = _context.SemanticModel.GetTypeInfo(elementAccess).Type; 108 var typeInfo = _context.SemanticModel.GetTypeInfo(memberBinding).Type; 119 var elementType = _context.SemanticModel.GetTypeInfo(elementBinding).Type; 141 var typeInfo = _context.SemanticModel.GetTypeInfo(castTo).Type; 160 var typeInfo = _context.SemanticModel.GetTypeInfo(castExpression.Type).Type;
Microsoft.ML.InternalCodeAnalyzer (1)
ContractsCheckNameofFixProvider.cs (1)
134var type = semanticModel.GetTypeInfo(argParam.Type, context.CancellationToken).Type;
Microsoft.VisualStudio.LanguageServices (1)
ChangeSignature\AddParameterDialogViewModel.cs (1)
197TypeSymbol = Document.SemanticModel.GetSpeculativeTypeInfo(PositionForTypeBinding, languageService.GetTypeNode(typeName), SpeculativeBindingOption.BindAsTypeOrNamespace).Type;
Microsoft.VisualStudio.LanguageServices.CSharp (14)
CodeModel\CSharpCodeModelService.cs (7)
962? semanticModel.GetTypeInfo(node).Type 3017return semanticModel.GetSpeculativeTypeInfo(position, parsedTypeName, SpeculativeBindingOption.BindAsTypeOrNamespace).Type; 3051typeSymbol = semanticModel.GetSpeculativeTypeInfo(0, parsedTypeName, SpeculativeBindingOption.BindAsTypeOrNamespace).Type; 3779if (typeInfo.Type != null && 3780typeInfo.Type.Equals(typeSymbol)) 3867if (typeInfo.Type != null && 3868typeInfo.Type.Equals(typeSymbol))
CodeModel\MethodXml\MethodXmlBuilder.cs (5)
144var typeSymbol = SemanticModel.GetTypeInfo(type).Type; 255var type = SemanticModel.GetTypeInfo(expression).Type; 375var type = SemanticModel.GetTypeInfo(castExpression.Type).Type; 414var type = SemanticModel.GetTypeInfo(arrayCreationExpression).Type; 564var type = SemanticModel.GetTypeInfo(typeOfExpression.Type).Type;
LanguageService\CSharpHelpContextService.cs (2)
161symbol = semanticModel.GetSymbolInfo(genericName, cancellationToken).Symbol ?? semanticModel.GetTypeInfo(genericName, cancellationToken).Type; 191symbol = info.Type;
Roslyn.Diagnostics.Analyzers (32)
AbstractApplyTraitToClass`1.cs (3)
56if (!SymbolEqualityComparer.Default.Equals(attributeType.Type, traitAttribute)) 95if (attributeType.Type is null) 102if (!SymbolEqualityComparer.Default.Equals(attributeType.Type, state.TraitAttribute))
SpecializedEnumerableCreationAnalyzer.cs (1)
138typeInfo.Type is IArrayTypeSymbol arrayType &&
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
256AddCoupledNamedTypesCore(builder, typeInfo.Type, context.WellKnownTypeProvider);
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
59return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
SymbolDeclaredEventMustBeGeneratedForSourceSymbols.cs (1)
128ITypeSymbol argumentType = context.SemanticModel.GetTypeInfo(argument, context.CancellationToken).Type;
Roslyn.Diagnostics.CSharp.Analyzers (77)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\CodeStyle\TypeStyle\TypeStyleHelper.cs (1)
126if (semanticModel.GetTypeInfo(containingTypeName, cancellationToken).Type is not INamedTypeSymbol containingType)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\DefaultExpressionSyntaxExtensions.cs (2)
52var entityType = semanticModel.GetTypeInfo(typeSyntax, cancellationToken).Type; 53var defaultType = semanticModel.GetTypeInfo(defaultExpression.Type, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ExpressionSyntaxExtensions.cs (3)
388expressionTypes.Type.IsInlineArray()) 938type = semanticModel.GetTypeInfo(expression, cancellationToken).Type; 996=> semanticModel.GetTypeInfo(castExpression.Type, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (2)
74if (semanticModel.GetTypeInfo(varDecl.Type, cancellationToken).Type.IsSpanOrReadOnlySpan()) 376var potentialType = semanticModel.GetSpeculativeTypeInfo(expression.SpanStart, expression, SpeculativeBindingOption.BindAsTypeOrNamespace).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\SemanticModelExtensions.cs (4)
115if (typeInfo.Type != null) 117symbol = typeInfo.Type; 420if (info.Type == null) 425return semanticModel.GenerateNameFromType(info.Type, CSharpSyntaxFacts.Instance, capitalize);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\TypeSyntaxExtensions.cs (1)
38var type = semanticModel.GetTypeInfo(typeSyntax).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Services\SemanticFacts\CSharpSemanticFacts.cs (1)
375var type = semanticModel.GetTypeInfo(node, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (20)
128var enumType = semanticModel.GetTypeInfo(castExpression.Expression, cancellationToken).Type as INamedTypeSymbol; 129var castedType = semanticModel.GetTypeInfo(castExpression.Type, cancellationToken).Type; 163var enumType = semanticModel.GetTypeInfo(castExpression.Expression, cancellationToken).Type as INamedTypeSymbol; 164var castedType = semanticModel.GetTypeInfo(castExpression.Type, cancellationToken).Type; 168var parentCastType = semanticModel.GetTypeInfo(parentCast.Type, cancellationToken).Type; 507var castedExpressionType = originalSemanticModel.GetTypeInfo(castedExpressionNode, cancellationToken).Type; 508var isType = originalSemanticModel.GetTypeInfo(isExpression.Right, cancellationToken).Type; 623var castedType = originalSemanticModel.GetTypeInfo(castNode, cancellationToken).Type; 698var castType = semanticModel.GetTypeInfo(castNode, cancellationToken).Type; 954var castType = originalSemanticModel.GetTypeInfo(castExpression, cancellationToken).Type; 988var otherSideType = originalSemanticModel.GetTypeInfo(otherSide, cancellationToken).Type; 989var thisSideRewrittenType = rewrittenSemanticModel.GetTypeInfo(rewrittenExpression, cancellationToken).Type; 1034=> IsNullOrErrorType(info.Type) || IsNullOrErrorType(info.ConvertedType); 1159var castSideType = semanticModel.GetTypeInfo(castSide, cancellationToken).Type; 1160var castedExpressionType = semanticModel.GetTypeInfo(castExpression.Expression, cancellationToken).Type; 1164var otherSideType = semanticModel.GetTypeInfo(otherSide, cancellationToken).Type; 1182var castType = semanticModel.GetTypeInfo(castNode, cancellationToken).Type; 1183var castedExpressionType = semanticModel.GetTypeInfo(castedExpressionNode, cancellationToken).Type; 1224return typeInfo.Type?.Kind == SymbolKind.ArrayType; 1409var rewrittenType = rewrittenSemanticModel.GetTypeInfo(rewrittenExpression, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\SpeculationAnalyzer.cs (15)
386var originalExpressionType = originalExpressionTypeInfo.Type; 387var newExpressionType = newExpressionTypeInfo.Type; 435var originalCaseType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode, this.CancellationToken).Type; 436var newCaseType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode, this.CancellationToken).Type; 494if (!Equals(originalExprType.Type, replacedExprType.Type)) 545if (!Equals(originalExpressionTypeInfo.Type, newExpressionTypeInfo.Type)) 561var originalExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalAnonymousObjectMemberDeclarator.Expression, this.CancellationToken).Type; 562var newExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(replacedAnonymousObjectMemberDeclarator.Expression, this.CancellationToken).Type; 702var originalConvertedType = this.OriginalSemanticModel.GetTypeInfo(originalIsOrAsExpression.Right).Type; 703var newConvertedType = this.SpeculativeSemanticModel.GetTypeInfo(newIsOrAsExpression.Right).Type; 758SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.ConvertedType)) 785SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.ConvertedType)) 804SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.ConvertedType))
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpTypeStyleHelper.State.cs (3)
94var declaredTypeSymbol = semanticModel.GetTypeInfo(variableDeclaration.Type.StripRefIfNeeded(), cancellationToken).Type; 112? IsMadeOfSpecialTypes(semanticModel.GetTypeInfo(typeSyntax.StripRefIfNeeded()).Type) 152semanticModel.GetTypeInfo(typeSyntax).Type?.IsSpecialType() == true;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseExplicitTypeHelper.cs (2)
146return !initializerTypeInfo.Type.IsErrorType(); 155var declaredType = semanticModel.GetTypeInfo(typeName.StripRefIfNeeded(), cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Utilities\TypeStyle\CSharpUseImplicitTypeHelper.cs (5)
175var declarationType = semanticModel.GetTypeInfo(declarationTypeNode, cancellationToken).Type; 185var newDeclarationType = newSemanticModel.GetTypeInfo(newDeclarationTypeNode, cancellationToken).Type; 258var declaredType = semanticModel.GetTypeInfo(typeName.StripRefIfNeeded(), cancellationToken).Type; 298var initializerType = semanticModel.GetTypeInfo(expression, cancellationToken).Type; 306var initializerType = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ContextQuery\SyntaxTokenExtensions.cs (1)
693return typeInfo.Type.IsNumericType();
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ExpressionSyntaxExtensions.cs (2)
119SpeculativeBindingOption.BindAsTypeOrNamespace).Type; 176name.SpanStart, name, SpeculativeBindingOption.BindAsExpression).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\InternalExtensions.cs (4)
26return typeInfo.Type?.IsErrorType() == false ? typeInfo.Type : semanticModel.Compilation.ObjectType; 33if (typeInfo.Type != null && typeInfo.Type.SpecialType == SpecialType.System_Void)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpMoveDeclarationNearReferenceService.cs (1)
63return Equals(localSymbol.Type, rightType.Type);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpSemanticFactsService.cs (1)
135var type = semanticModel.GetTypeInfo(expression, cancellationToken).Type;
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (8)
106var typeInferenceInfo = new TypeInferenceInfo(typeInfo.Type); 440if (info.Type is not INamedTypeSymbol type) 461if (info.Type is not INamedTypeSymbol type) 501if (typeInfo.Type != null && typeInfo.Type.IsEnumType()) 503return CreateResult(typeInfo.Type); 567if (info.Type is INamedTypeSymbol type) 1234return CreateResult(typeInfo.Type);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Utilities\NullableHelpers\NullableExtensions.cs (1)
13=> typeInfo.Type?.WithNullableAnnotation(typeInfo.Nullability.Annotation);
System.Windows.Forms.Analyzers.CSharp (1)
System\Windows\Forms\CSharp\Analyzers\AvoidPassingTaskWithoutCancellationToken\AvoidPassingTaskWithoutCancellationTokenAnalyzer.cs (1)
72if (objectTypeInfo.Type is not INamedTypeSymbol objectType
System.Windows.Forms.PrivateSourceGenerators (1)
System\Windows\Forms\SourceGenerators\EnumValidationGenerator.cs (1)
218ITypeSymbol? enumType = semanticModel.GetTypeInfo(argument, cancellationToken).Type;
Test.Utilities (26)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
59return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)
Text.Analyzers (27)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\MetricsHelper.cs (1)
256AddCoupledNamedTypesCore(builder, typeInfo.Type, context.WellKnownTypeProvider);
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IOperationExtensions.cs (1)
59return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\SemanticModelExtensions.cs (2)
220if (typeInfo.Type != null) 222return typeInfo.Type;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Services\SemanticFacts\ISemanticFactsExtensions.cs (6)
36if (innerTypeInfo.Type != null && innerTypeInfo.ConvertedType != null) 38if (!innerTypeInfo.Type.Equals(innerTypeInfo.ConvertedType)) 43if (innerTypeInfo.Type is IDynamicTypeSymbol) 51if (!Equals(semanticModel.GetTypeInfo(parentBinaryLeft).Type, 52semanticModel.GetTypeInfo(parentBinaryRight).Type)) 116=> IsFloatingPoint(typeInfo.Type) || IsFloatingPoint(typeInfo.ConvertedType);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\AbstractSpeculationAnalyzer.cs (17)
246if (originalTypeInfo.Type == null) 252if (newTypeInfo.Type == null) 268if (SymbolsAreCompatible(originalTypeInfo.Type, newTypeInfo.Type)) 274if (originalTypeInfo.Type != null && newTypeInfo.Type == null && 636if (newTypeInfo.Type.IsErrorType() && !originalTypeInfo.Type.IsErrorType()) 740var previousOriginalType = this.OriginalSemanticModel.GetTypeInfo(previousOriginalNode).Type; 741var previousReplacedType = this.SpeculativeSemanticModel.GetTypeInfo(previousReplacedNode).Type; 849var originalThrowExpressionType = this.OriginalSemanticModel.GetTypeInfo(originalThrowExpression).Type; 851var newThrowExpressionType = this.SpeculativeSemanticModel.GetTypeInfo(newThrowExpression).Type; 961var originalTargetType = this.OriginalSemanticModel.GetTypeInfo(originalLeft).Type; 964var newTargetType = this.SpeculativeSemanticModel.GetTypeInfo(newLeft).Type; 1036var receiverType = semanticModel.GetTypeInfo(receiver).Type; 1205if (this.OriginalSemanticModel.GetTypeInfo(originalExpression).Type != null && 1206this.SpeculativeSemanticModel.GetTypeInfo(newExpression).Type != null)