5 implementations of ITypeSymbol_IsRecord
Microsoft.CodeAnalysis.CodeStyle.Fixes (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationTypeSymbol.cs (1)
84public virtual bool IsRecord => false;
Microsoft.CodeAnalysis.CSharp (1)
Symbols\PublicModel\TypeSymbol.cs (1)
186bool ITypeSymbol.IsRecord => UnderlyingTypeSymbol.IsRecord || UnderlyingTypeSymbol.IsRecordStruct;
Microsoft.CodeAnalysis.Features (1)
MetadataAsSource\AbstractMetadataAsSourceService.WrappedNamedTypeSymbol.cs (1)
142public bool IsRecord => _symbol.IsRecord;
Microsoft.CodeAnalysis.VisualBasic (1)
Symbols\TypeSymbol.vb (1)
607Private ReadOnly Property ITypeSymbol_IsRecord As Boolean Implements ITypeSymbol.IsRecord
Microsoft.CodeAnalysis.Workspaces (1)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationTypeSymbol.cs (1)
84public virtual bool IsRecord => false;
68 references to ITypeSymbol_IsRecord
Microsoft.AspNetCore.Http.ValidationsGenerator (1)
Parsers\ValidationsGenerator.TypesParser.cs (1)
115if (typeSymbol is INamedTypeSymbol { IsRecord: true } namedType)
Microsoft.CodeAnalysis.CodeStyle (2)
src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (1)
824if (methodSymbol.ContainingType.IsRecord &&
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IParameterSymbolExtensions.cs (1)
34ContainingType: { IsRecord: true } containingType,
Microsoft.CodeAnalysis.CodeStyle.Fixes (3)
src\Analyzers\Core\CodeFixes\AddParameter\AbstractAddParameterCodeFixProvider.cs (2)
394new ParameterName(argumentNameSuggestion, isNamedArgument, tryMakeCamelCase: !method.ContainingType.IsRecord), 426semanticModel, expression, capitalize: containingType.IsRecord, cancellationToken: cancellationToken);
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\INamedTypeSymbolExtensions.cs (1)
24namedType.IsRecord,
Microsoft.CodeAnalysis.CSharp (4)
SymbolDisplay\SymbolDisplayVisitor.Types.cs (4)
643case TypeKind.Class when symbol.IsRecord: 645case TypeKind.Struct when symbol.IsRecord: 743case TypeKind.Class when symbol.IsRecord: 748case TypeKind.Struct when symbol.IsRecord:
Microsoft.CodeAnalysis.CSharp.CodeStyle (1)
src\Analyzers\CSharp\Analyzers\UsePrimaryConstructor\CSharpUsePrimaryConstructorDiagnosticAnalyzer.cs (1)
279if (namedType.IsRecord)
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (3)
src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordEngine.cs (1)
46IsRecord: false,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\NamedTypeGenerator.cs (2)
82if (namedType.IsRecord) 195if (namedType.IsRecord)
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (1)
Emit\NumericIntPtrTests.cs (1)
10698Assert.Equal(useCompilationReference || returnType.IsReferenceType, returnType.IsRecord);
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (1)
Semantics\ExtensionTests.cs (1)
68Assert.False(symbol.IsRecord);
Microsoft.CodeAnalysis.CSharp.Features (6)
EditAndContinue\CSharpEditAndContinueAnalyzer.cs (4)
955if (method.ContainingType.IsRecord && method.IsCopyConstructor()) 997ContainingType.IsRecord: true, 1962TypeKind.Struct => symbol.IsRecord ? CSharpFeaturesResources.record_struct : FeaturesResources.struct_, 1963TypeKind.Class => symbol.IsRecord ? CSharpFeaturesResources.record_ : FeaturesResources.class_,
src\Analyzers\CSharp\Analyzers\UsePrimaryConstructor\CSharpUsePrimaryConstructorDiagnosticAnalyzer.cs (1)
279if (namedType.IsRecord)
src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordEngine.cs (1)
46IsRecord: false,
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (3)
Semantics\RecordStructTests.cs (3)
539Assert.False(type.IsRecord); 559Assert.False(type.IsRecord); 579Assert.False(type.IsRecord);
Microsoft.CodeAnalysis.CSharp.Test.Utilities (2)
Extensions.cs (2)
180if (!type.IsRecord) 209if (!primaryConstructor.ContainingType.IsRecord)
Microsoft.CodeAnalysis.CSharp.Workspaces (2)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\NamedTypeGenerator.cs (2)
82if (namedType.IsRecord) 195if (namedType.IsRecord)
Microsoft.CodeAnalysis.Extensions.Package (1)
Symbols\IParameterSymbolExtensions.cs (1)
34ContainingType: { IsRecord: true } containingType,
Microsoft.CodeAnalysis.Features (23)
Common\SymbolDisplayPartKindTags.cs (1)
22if (namedType.IsRecord)
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (15)
2913if (oldSymbol is IPropertySymbol { ContainingType.IsRecord: true, GetMethod.IsImplicitlyDeclared: true, SetMethod.IsImplicitlyDeclared: true } oldRecordProperty && 3084Debug.Assert(oldProperty.ContainingType.IsRecord); 3085Debug.Assert(newProperty.ContainingType.IsRecord); 4316oldType.IsRecord != newType.IsRecord) // TODO: https://github.com/dotnet/roslyn/issues/51874 4557if (oldContainingMember.ContainingType.IsRecord && 4558newContainingMember.ContainingType.IsRecord && 4857Debug.Assert(recordType.IsRecord); 4871Debug.Assert(record.IsRecord); 5365if (newType.TypeKind != oldType.TypeKind || oldType.IsRecord != newType.IsRecord) 5496if (newType.IsRecord) 6839=> symbol is { IsStatic: false, ContainingType.IsRecord: true } and 6863if (newSymbol is IMethodSymbol { IsStatic: false, ContainingType.IsRecord: true, ReturnsVoid: true, Name: WellKnownMemberNames.DeconstructMethodName } method && 6876if (newSymbol is IPropertySymbol { IsStatic: false, ContainingType.IsRecord: true } &&
EditAndContinue\Utilities\Extensions.cs (1)
187=> !type.InstanceConstructors.Any(static c => !(c.Parameters is [] || c.ContainingType.IsRecord && c.IsCopyConstructor()));
ExtractClass\ExtractClassWithDialogCodeAction.cs (2)
48public override string Title => _selectedType.IsRecord 85_selectedType.IsRecord,
MetadataAsSource\AbstractMetadataAsSourceService.WrappedNamedTypeSymbol.cs (1)
142public bool IsRecord => _symbol.IsRecord;
src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (1)
824if (methodSymbol.ContainingType.IsRecord &&
src\Analyzers\Core\CodeFixes\AddParameter\AbstractAddParameterCodeFixProvider.cs (2)
394new ParameterName(argumentNameSuggestion, isNamedArgument, tryMakeCamelCase: !method.ContainingType.IsRecord), 426semanticModel, expression, capitalize: containingType.IsRecord, cancellationToken: cancellationToken);
Microsoft.CodeAnalysis.VisualBasic (1)
Symbols\TypeSymbol.vb (1)
607Private ReadOnly Property ITypeSymbol_IsRecord As Boolean Implements ITypeSymbol.IsRecord
Microsoft.CodeAnalysis.Workspaces (8)
Classification\ClassificationExtensions.cs (2)
12TypeKind.Class => type.IsRecord ? ClassificationTypeNames.RecordClassName : ClassificationTypeNames.ClassName, 14TypeKind.Struct => type.IsRecord ? ClassificationTypeNames.RecordStructName : ClassificationTypeNames.StructName,
Editing\SyntaxGenerator.cs (3)
761type.IsRecord, 770type.IsRecord, 815if (symbol.ContainingType?.IsRecord is true)
FindSymbols\FindReferences\Finders\PropertySymbolReferenceFinder.cs (1)
78IsRecord: true,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IParameterSymbolExtensions.cs (1)
34ContainingType: { IsRecord: true } containingType,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\INamedTypeSymbolExtensions.cs (1)
24namedType.IsRecord,
Microsoft.Extensions.Options.SourceGeneration (2)
Parser.cs (2)
171return type.IsRecord ? "record class" : "class"; 174return type.IsRecord ? "record struct" : "struct";
Microsoft.Gen.Logging (3)
Parsing\Parser.cs (1)
189paramSymbol.Type.IsRecord)
Parsing\Parser.LogProperties.cs (1)
106if (namedType.IsRecord && !namedType.InstanceConstructors.IsDefaultOrEmpty)
Parsing\Parser.Records.cs (1)
145if (extractedType.IsRecord && // Going inside record types only
Microsoft.VisualStudio.LanguageServices (1)
ExtractClass\ExtractClassViewModel.cs (1)
70public string Title => _selectedType.IsRecord