8 implementations of IFieldSymbol
GenerateDocumentationAndConfigFiles (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldSymbol.cs (1)
20object constantValue) : CodeGenerationSymbol(containingType?.ContainingAssembly, containingType, attributes, accessibility, modifiers, name), IFieldSymbol
Microsoft.CodeAnalysis.Analyzers (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldSymbol.cs (1)
20object constantValue) : CodeGenerationSymbol(containingType?.ContainingAssembly, containingType, attributes, accessibility, modifiers, name), IFieldSymbol
Microsoft.CodeAnalysis.CodeStyle.Fixes (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldSymbol.cs (1)
20object constantValue) : CodeGenerationSymbol(containingType?.ContainingAssembly, containingType, attributes, accessibility, modifiers, name), IFieldSymbol
Microsoft.CodeAnalysis.CSharp (1)
Symbols\PublicModel\FieldSymbol.cs (1)
13internal sealed class FieldSymbol : Symbol, IFieldSymbol
Microsoft.CodeAnalysis.Features (1)
MetadataAsSource\AbstractMetadataAsSourceService.WrappedFieldSymbol.cs (1)
14private sealed class WrappedFieldSymbol(IFieldSymbol fieldSymbol, IDocumentationCommentFormattingService docCommentFormattingService) : AbstractWrappedSymbol(fieldSymbol, canImplementImplicitly: false, docCommentFormattingService: docCommentFormattingService), IFieldSymbol
Microsoft.CodeAnalysis.VisualBasic (1)
Symbols\FieldSymbol.vb (1)
21Implements IFieldSymbol, IFieldSymbolInternal
Microsoft.CodeAnalysis.Workspaces (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldSymbol.cs (1)
20object constantValue) : CodeGenerationSymbol(containingType?.ContainingAssembly, containingType, attributes, accessibility, modifiers, name), IFieldSymbol
Roslyn.Diagnostics.Analyzers (1)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldSymbol.cs (1)
20object constantValue) : CodeGenerationSymbol(containingType?.ContainingAssembly, containingType, attributes, accessibility, modifiers, name), IFieldSymbol
1342 references to IFieldSymbol
GenerateDocumentationAndConfigFiles (84)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (5)
43public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 49if (member is IFieldSymbol associated && 232IFieldSymbol field => field.IsReadOnly, 363IFieldSymbol field => field.IsConst, 374IFieldSymbol field => field.IsReadOnly,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\NamingStyles\Serialization\SymbolSpecification.cs (2)
514if (kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsReadOnly) 522if ((kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsConst) ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
67/// <item>Two <see cref="IFieldSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.FieldSymbolKey.cs (4)
9private sealed class FieldSymbolKey : AbstractSymbolKey<IFieldSymbol> 13public sealed override void Create(IFieldSymbol symbol, SymbolKeyWriter visitor) 20SymbolKeyReader reader, IFieldSymbol? contextualSymbol, out string? failureReason) 31using var result = GetMembersOfNamedType<IFieldSymbol>(containingTypeResolution, metadataName);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
347public override void VisitField(IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.TupleTypeSymbolKey.cs (2)
27foreach (var element in symbol.TupleElements) 41foreach (var element in symbol.TupleElements)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (1)
24.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
499var fieldSymbol = (IFieldSymbol)symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IPropertySymbolExtensions.cs (2)
14public static IFieldSymbol? GetBackingFieldIfAny(this IPropertySymbol property) 16.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (5)
323=> symbol is IFieldSymbol { ContainingType.IsTupleType: true }; 331IFieldSymbol fieldSymbol => !fieldSymbol.IsReadOnly && !fieldSymbol.IsConst, 337=> symbol is IFieldSymbol { IsRequired: true } or IPropertySymbol { IsRequired: true }; 342IFieldSymbol fieldSymbol => fieldSymbol.Type, 661IFieldSymbol fieldSymbol => fieldSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
46public override bool VisitField(IFieldSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (1)
703if (member is not IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (8)
121SymbolKind.Field => FieldsAreEquivalent((IFieldSymbol)x, (IFieldSymbol)y, equivalentTypesWithDifferingAssemblies), 152private bool FieldsAreEquivalent(IFieldSymbol x, IFieldSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies) 433var xElement = xElements[i]; 434var yElement = yElements[i]; 450var xElement = xElements[i]; 451var yElement = yElements[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
65SymbolKind.Field => CombineHashCodes((IFieldSymbol)x, currentHash), 92private int CombineHashCodes(IFieldSymbol x, int currentHash)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractCodeGenerationService.cs (9)
50public TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode 79public SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken) 124protected abstract TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, TCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 144public abstract SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, TCodeGenerationContextInfo info, CancellationToken cancellationToken); 346IFieldSymbol field => CreateFieldDeclaration(field, codeGenerationDestination, info, cancellationToken), 364IFieldSymbol field => AddField(currentDestination, field, info, availableIndices, cancellationToken), 375var field = members.OfType<IFieldSymbol>().FirstOrDefault(); 401public Task<Document> AddFieldAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractFlagsEnumGenerator.cs (17)
12internal abstract class AbstractFlagsEnumGenerator : IComparer<(IFieldSymbol field, ulong value)> 63var allFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 66var usedFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 73List<(IFieldSymbol field, ulong value)> allFieldsAndValues, 74List<(IFieldSymbol field, ulong value)> usedFieldsAndValues) 124var zeroField = GetZeroField(allFieldsAndValues); 137IFieldSymbol field, INamedTypeSymbol enumType, SpecialType underlyingSpecialType) 152private static IFieldSymbol? GetZeroField(List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 168List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 172foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 191foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 205int IComparer<(IFieldSymbol field, ulong value)>.Compare((IFieldSymbol field, ulong value) x, (IFieldSymbol field, ulong value) y)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationHelpers.cs (1)
158.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (3)
102public static IFieldSymbol CreateFieldSymbol( 589internal static IFieldSymbol CreateFieldSymbol( 590IFieldSymbol field,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerator.cs (1)
37public static Task<Document> AddFieldDeclarationAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\ICodeGenerationService.cs (3)
27SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken); 58TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 138Task<Document> AddFieldAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
18public ImmutableArray<IFieldSymbol> TupleElements { get; protected set; }
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldInfo.cs (6)
13private static readonly ConditionalWeakTable<IFieldSymbol, CodeGenerationFieldInfo> s_fieldToInfoMap = new(); 30IFieldSymbol field, 39private static CodeGenerationFieldInfo GetInfo(IFieldSymbol field) 48public static bool GetIsUnsafe(IFieldSymbol field) 54public static bool GetIsWithEvents(IFieldSymbol field) 60public static SyntaxNode GetInitializer(IFieldSymbol field)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldSymbol.cs (2)
34public new IFieldSymbol OriginalDefinition 42public IFieldSymbol CorrespondingTupleField => null;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
83IFieldSymbol field => field.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
526.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\InitializeParameter\InitializeParameterHelpersCore.cs (1)
152if (memberReference.Member is IFieldSymbol or IPropertySymbol)
ILLink.RoslynAnalyzer (29)
DataFlow\DynamicallyAccessedMembersBinder.cs (6)
69foreach (var f in typeDefinition.ApplyIncludeInherited(t => t.GetFieldsOnTypeHierarchy(filter: null, bindingFlags: BindingFlags.NonPublic | declaredOnlyFlags), withInherited)) 75foreach (var f in typeDefinition.GetFieldsOnTypeHierarchy(filter: null, bindingFlags: BindingFlags.Public | declaredOnlyFlags)) 209public static IEnumerable<IFieldSymbol> GetFieldsOnTypeHierarchy(this ITypeSymbol thisType, Func<IFieldSymbol, bool>? filter, BindingFlags? bindingFlags = BindingFlags.Default) 215foreach (var field in type.GetMembers().OfType<IFieldSymbol>())
DataFlow\LocalDataFlowVisitor.cs (3)
104Debug.Assert(OwningSymbol is IMethodSymbol or IFieldSymbol or IPropertySymbol, 206Debug.Assert(local.ContainingSymbol is IMethodSymbol or IFieldSymbol, // backing field for property initializers 834Debug.Assert(operation.Symbol.ContainingSymbol is IMethodSymbol or IFieldSymbol);
DataFlow\MethodBodyValue.cs (1)
23Debug.Assert(owningSymbol is (IMethodSymbol or IFieldSymbol or IPropertySymbol));
DynamicallyAccessedMembersAnalyzer.cs (1)
184if (member is IFieldSymbol field && field.GetDynamicallyAccessedMemberTypes() != DynamicallyAccessedMemberTypes.None && !field.Type.IsTypeInterestingForDataflow(isByRef: field.RefKind is not RefKind.None))
ISymbolExtensions.cs (1)
148case IFieldSymbol fieldSymbol:
RequiresISymbolExtensions.cs (1)
91if (member is IFieldSymbol field && !field.IsStatic)
TrimAnalysis\FieldValue.cs (1)
14public FieldValue(IFieldSymbol fieldSymbol)
TrimAnalysis\FlowAnnotations.cs (3)
43IFieldSymbol field => ShouldWarnWhenAccessedForReflection(field), 110private static bool ShouldWarnWhenAccessedForReflection(IFieldSymbol field) 115internal static DynamicallyAccessedMemberTypes GetFieldAnnotation(IFieldSymbol field)
TrimAnalysis\GenericArgumentDataFlow.cs (2)
57public void ProcessGenericArgumentDataFlow(IFieldSymbol field) 129public static bool RequiresGenericArgumentDataFlow(IFieldSymbol field)
TrimAnalysis\ReflectionAccessAnalyzer.cs (4)
44case IFieldSymbol field: 73foreach (var field in typeSymbol.GetFieldsOnTypeHierarchy(f => f.Name == name, bindingFlags)) 123Debug.Assert(member is IMethodSymbol or IFieldSymbol); 205private void GetDiagnosticsForField(Location location, IFieldSymbol fieldSymbol)
TrimAnalysis\TrimAnalysisFieldAccessPattern.cs (2)
15public IFieldSymbol Field { get; init; } 21IFieldSymbol field,
TrimAnalysis\TrimAnalysisGenericInstantiationPattern.cs (1)
67case IFieldSymbol field:
TrimAnalysis\TrimAnalysisVisitor.cs (3)
169var field = fieldRef.Field; 239var field = fieldReference.Field; 481private void ProcessGenericArgumentDataFlow(IFieldSymbol field, IOperation operation, in FeatureContext featureContext)
Microsoft.Analyzers.Local (2)
ApiLifecycle\AssemblyAnalysis.cs (1)
247else if (member is IFieldSymbol fieldSym)
Utilities\SymbolExtensions.cs (1)
166if (symbol is IFieldSymbol fieldSymbol)
Microsoft.AspNetCore.App.Analyzers (1)
RouteEmbeddedLanguage\Infrastructure\RouteStringSyntaxDetector.cs (1)
303return symbol is IFieldSymbol or IPropertySymbol &&
Microsoft.AspNetCore.Components.Analyzers (2)
ComponentParameterAnalyzer.cs (1)
146.OfType<IFieldSymbol>()
InternalUsageAnalyzer.cs (1)
92case IFieldSymbol field:
Microsoft.AspNetCore.Components.SdkAnalyzers (1)
InternalUsageAnalyzer.cs (1)
92case IFieldSymbol field:
Microsoft.AspNetCore.Mvc.Api.Analyzers (1)
AddResponseTypeAttributeCodeFixAction.cs (1)
155if (member is IFieldSymbol field &&
Microsoft.CodeAnalysis (26)
DiagnosticAnalyzer\AnalyzerExecutor.cs (1)
1291Debug.Assert(((IFieldSymbol)symbol).AssociatedSymbol == null);
DocumentationCommentId.cs (2)
363public override void VisitField(IFieldSymbol symbol) 441public override bool VisitField(IFieldSymbol symbol)
Generated\Operations.Generated.cs (6)
936IFieldSymbol Field { get; } 2352ImmutableArray<IFieldSymbol> InitializedFields { get; } 5385internal FieldReferenceOperation(IFieldSymbol field, bool isDeclaration, IOperation? instance, SemanticModel? semanticModel, SyntaxNode syntax, ITypeSymbol? type, ConstantValue? constantValue, bool isImplicit) 5393public IFieldSymbol Field { get; } 7550internal FieldInitializerOperation(ImmutableArray<IFieldSymbol> initializedFields, ImmutableArray<ILocalSymbol> locals, IOperation value, SemanticModel? semanticModel, SyntaxNode syntax, bool isImplicit) 7555public ImmutableArray<IFieldSymbol> InitializedFields { get; }
Operations\ControlFlowGraphBuilder.cs (1)
7254foreach (IFieldSymbol fieldSymbol in operation.InitializedFields)
SymbolDisplay\AbstractSymbolDisplayVisitor.cs (5)
281((IFieldSymbol)usedFieldsAndValues[i].IdentityOpt!).Accept(this.NotFirstVisitor); 301((IFieldSymbol)zeroField.IdentityOpt).Accept(this.NotFirstVisitor); 321var field = (IFieldSymbol)member; 347((IFieldSymbol)match.IdentityOpt).Accept(this.NotFirstVisitor);
SymbolDisplay\AbstractSymbolDisplayVisitor_Minimal.cs (2)
105var fieldSymbol = symbol as IFieldSymbol;
Symbols\IFieldSymbol.cs (2)
111new IFieldSymbol OriginalDefinition { get; } 122IFieldSymbol? CorrespondingTupleField { get; }
Symbols\INamedTypeSymbol.cs (1)
187ImmutableArray<IFieldSymbol> TupleElements { get; }
Symbols\ISymbolExtensions.cs (3)
67internal static bool IsDefaultTupleElement(this IFieldSymbol field) 75internal static bool IsTupleElement(this IFieldSymbol field) 88internal static string? ProvidedTupleElementNameOrNull(this IFieldSymbol field)
Symbols\SymbolVisitor.cs (1)
48public virtual void VisitField(IFieldSymbol symbol)
Symbols\SymbolVisitor`1.cs (1)
51public virtual TResult? VisitField(IFieldSymbol symbol)
Symbols\SymbolVisitor`2.cs (1)
56public virtual TResult VisitField(IFieldSymbol symbol, TArgument argument)
Microsoft.CodeAnalysis.Analyzers (123)
MetaAnalyzers\DiagnosticDescriptorCreationAnalyzer.cs (15)
29using PooledFieldToCustomTagsConcurrentDictionary = PooledConcurrentDictionary<IFieldSymbol, ImmutableArray<string>>; 30using PooledFieldToResourceNameAndFileNameConcurrentDictionary = PooledConcurrentDictionary<IFieldSymbol, (string nameOfResource, string resourceFileName)>; 31using PooledLocalizabeStringsConcurrentDictionary = PooledConcurrentDictionary<INamedTypeSymbol, PooledConcurrentSet<(IFieldSymbol field, IArgumentOperation argument)>>; 296foreach (var field in fieldInitializer.InitializedFields) 334var localsToDescriptorsMap = PooledConcurrentDictionary<ILocalSymbol, PooledConcurrentSet<IFieldSymbol>>.GetInstance(SymbolEqualityComparer.Default); 336var fieldsUsedForCompilationEndReportDiagnostic = PooledConcurrentSet<IFieldSymbol>.GetInstance(SymbolEqualityComparer.Default); 395static void AddToLocalsToDescriptorsMap(ILocalSymbol local, IFieldSymbol field, PooledConcurrentDictionary<ILocalSymbol, PooledConcurrentSet<IFieldSymbol>> localsToDescriptorsMap) 400var set = PooledConcurrentSet<IFieldSymbol>.GetInstance(SymbolEqualityComparer.Default); 419foreach (var field in fields) 424foreach (var field in fieldsUsedForCompilationEndReportDiagnostic) 435void AnalyzeField(IFieldSymbol field) 834var builder = localizableStringsMap.GetOrAdd(containingType, _ => PooledConcurrentSet<(IFieldSymbol, IArgumentOperation)>.GetInstance()); 1100foreach (var field in fieldInitializerOperation.InitializedFields) 1198var analyzer = ((IFieldSymbol)operationAnalysisContext.ContainingSymbol).ContainingType.OriginalDefinition;
MetaAnalyzers\ReportDiagnosticAnalyzer.cs (12)
119private ImmutableDictionary<INamedTypeSymbol, ImmutableArray<IFieldSymbol>> _supportedDescriptorFieldsMap; 127_supportedDescriptorFieldsMap = ImmutableDictionary<INamedTypeSymbol, ImmutableArray<IFieldSymbol>>.Empty; 138ImmutableArray<IFieldSymbol> descriptorFields = GetSupportedDescriptors(symbolContext.Compilation, (INamedTypeSymbol)symbolContext.Symbol, symbolContext.CancellationToken); 145private ImmutableArray<IFieldSymbol> GetSupportedDescriptors(Compilation compilation, INamedTypeSymbol analyzer, CancellationToken cancellationToken) 147if (_supportedDescriptorFieldsMap.TryGetValue(analyzer, out ImmutableArray<IFieldSymbol> descriptorFields)) 179private ImmutableArray<IFieldSymbol> GetReferencedDescriptorFields(SyntaxNode syntax, SemanticModel semanticModel, CancellationToken cancellationToken) 181ImmutableArray<IFieldSymbol>.Builder builder = ImmutableArray.CreateBuilder<IFieldSymbol>(); 187var field = (IFieldSymbol)symbol; 190builder.Add((IFieldSymbol)symbol); 241ImmutableArray<IFieldSymbol> descriptorFields = GetReferencedDescriptorFields(diagnosticInitializer, semanticModel, symbolContext.CancellationToken);
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
277SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context), 315SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.FieldMetricData.cs (2)
15IFieldSymbol symbol, 27internal static FieldMetricData Compute(IFieldSymbol field, CodeMetricsAnalysisContext context)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.NamedTypeMetricData.cs (7)
73ImmutableHashSet<IFieldSymbol> filteredFieldsForComplexity = getFilteredFieldsForComplexity(); 82filteredFieldsForComplexity.Contains((IFieldSymbol)child.Symbol)) 109ImmutableHashSet<IFieldSymbol> getFilteredFieldsForComplexity() 111ImmutableHashSet<IFieldSymbol>.Builder? builder = null; 121builder ??= ImmutableHashSet.CreateBuilder<IFieldSymbol>(); 122builder.Add((IFieldSymbol)fieldData.Symbol); 126return builder?.ToImmutable() ?? ImmutableHashSet<IFieldSymbol>.Empty;
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\ComputationalComplexityMetrics.cs (1)
152foreach (var field in ((IFieldInitializerOperation)operation).InitializedFields)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (5)
43public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 49if (member is IFieldSymbol associated && 232IFieldSymbol field => field.IsReadOnly, 363IFieldSymbol field => field.IsConst, 374IFieldSymbol field => field.IsReadOnly,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\NamingStyles\Serialization\SymbolSpecification.cs (2)
514if (kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsReadOnly) 522if ((kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsConst) ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
67/// <item>Two <see cref="IFieldSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.FieldSymbolKey.cs (4)
9private sealed class FieldSymbolKey : AbstractSymbolKey<IFieldSymbol> 13public sealed override void Create(IFieldSymbol symbol, SymbolKeyWriter visitor) 20SymbolKeyReader reader, IFieldSymbol? contextualSymbol, out string? failureReason) 31using var result = GetMembersOfNamedType<IFieldSymbol>(containingTypeResolution, metadataName);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
347public override void VisitField(IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.TupleTypeSymbolKey.cs (2)
27foreach (var element in symbol.TupleElements) 41foreach (var element in symbol.TupleElements)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (1)
24.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
499var fieldSymbol = (IFieldSymbol)symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IPropertySymbolExtensions.cs (2)
14public static IFieldSymbol? GetBackingFieldIfAny(this IPropertySymbol property) 16.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (5)
323=> symbol is IFieldSymbol { ContainingType.IsTupleType: true }; 331IFieldSymbol fieldSymbol => !fieldSymbol.IsReadOnly && !fieldSymbol.IsConst, 337=> symbol is IFieldSymbol { IsRequired: true } or IPropertySymbol { IsRequired: true }; 342IFieldSymbol fieldSymbol => fieldSymbol.Type, 661IFieldSymbol fieldSymbol => fieldSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
46public override bool VisitField(IFieldSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (1)
703if (member is not IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (8)
121SymbolKind.Field => FieldsAreEquivalent((IFieldSymbol)x, (IFieldSymbol)y, equivalentTypesWithDifferingAssemblies), 152private bool FieldsAreEquivalent(IFieldSymbol x, IFieldSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies) 433var xElement = xElements[i]; 434var yElement = yElements[i]; 450var xElement = xElements[i]; 451var yElement = yElements[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
65SymbolKind.Field => CombineHashCodes((IFieldSymbol)x, currentHash), 92private int CombineHashCodes(IFieldSymbol x, int currentHash)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractCodeGenerationService.cs (9)
50public TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode 79public SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken) 124protected abstract TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, TCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 144public abstract SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, TCodeGenerationContextInfo info, CancellationToken cancellationToken); 346IFieldSymbol field => CreateFieldDeclaration(field, codeGenerationDestination, info, cancellationToken), 364IFieldSymbol field => AddField(currentDestination, field, info, availableIndices, cancellationToken), 375var field = members.OfType<IFieldSymbol>().FirstOrDefault(); 401public Task<Document> AddFieldAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractFlagsEnumGenerator.cs (17)
12internal abstract class AbstractFlagsEnumGenerator : IComparer<(IFieldSymbol field, ulong value)> 63var allFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 66var usedFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 73List<(IFieldSymbol field, ulong value)> allFieldsAndValues, 74List<(IFieldSymbol field, ulong value)> usedFieldsAndValues) 124var zeroField = GetZeroField(allFieldsAndValues); 137IFieldSymbol field, INamedTypeSymbol enumType, SpecialType underlyingSpecialType) 152private static IFieldSymbol? GetZeroField(List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 168List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 172foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 191foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 205int IComparer<(IFieldSymbol field, ulong value)>.Compare((IFieldSymbol field, ulong value) x, (IFieldSymbol field, ulong value) y)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationHelpers.cs (1)
158.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (3)
102public static IFieldSymbol CreateFieldSymbol( 589internal static IFieldSymbol CreateFieldSymbol( 590IFieldSymbol field,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerator.cs (1)
37public static Task<Document> AddFieldDeclarationAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\ICodeGenerationService.cs (3)
27SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken); 58TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 138Task<Document> AddFieldAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
18public ImmutableArray<IFieldSymbol> TupleElements { get; protected set; }
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldInfo.cs (6)
13private static readonly ConditionalWeakTable<IFieldSymbol, CodeGenerationFieldInfo> s_fieldToInfoMap = new(); 30IFieldSymbol field, 39private static CodeGenerationFieldInfo GetInfo(IFieldSymbol field) 48public static bool GetIsUnsafe(IFieldSymbol field) 54public static bool GetIsWithEvents(IFieldSymbol field) 60public static SyntaxNode GetInitializer(IFieldSymbol field)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldSymbol.cs (2)
34public new IFieldSymbol OriginalDefinition 42public IFieldSymbol CorrespondingTupleField => null;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
83IFieldSymbol field => field.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
526.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\InitializeParameter\InitializeParameterHelpersCore.cs (1)
152if (memberReference.Member is IFieldSymbol or IPropertySymbol)
Microsoft.CodeAnalysis.AnalyzerUtilities (68)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
277SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context), 315SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.FieldMetricData.cs (2)
15IFieldSymbol symbol, 27internal static FieldMetricData Compute(IFieldSymbol field, CodeMetricsAnalysisContext context)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.NamedTypeMetricData.cs (7)
73ImmutableHashSet<IFieldSymbol> filteredFieldsForComplexity = getFilteredFieldsForComplexity(); 82filteredFieldsForComplexity.Contains((IFieldSymbol)child.Symbol)) 109ImmutableHashSet<IFieldSymbol> getFilteredFieldsForComplexity() 111ImmutableHashSet<IFieldSymbol>.Builder? builder = null; 121builder ??= ImmutableHashSet.CreateBuilder<IFieldSymbol>(); 122builder.Add((IFieldSymbol)fieldData.Symbol); 126return builder?.ToImmutable() ?? ImmutableHashSet<IFieldSymbol>.Empty;
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\ComputationalComplexityMetrics.cs (1)
152foreach (var field in ((IFieldInitializerOperation)operation).InitializedFields)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (5)
43public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 49if (member is IFieldSymbol associated && 232IFieldSymbol field => field.IsReadOnly, 363IFieldSymbol field => field.IsConst, 374IFieldSymbol field => field.IsReadOnly,
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\DisposeAnalysis\DisposeAnalysis.DisposeDataFlowOperationVisitor.cs (2)
28private readonly Dictionary<IFieldSymbol, PointsToAbstractValue>? _trackedInstanceFieldLocations; 47public ImmutableDictionary<IFieldSymbol, PointsToAbstractValue> TrackedInstanceFieldPointsToMap
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\DisposeAnalysis\DisposeAnalysisHelper.cs (6)
45private ConcurrentDictionary<INamedTypeSymbol, ImmutableHashSet<IFieldSymbol>>? _lazyDisposableFieldsMap; 92Interlocked.CompareExchange(ref _lazyDisposableFieldsMap, new ConcurrentDictionary<INamedTypeSymbol, ImmutableHashSet<IFieldSymbol>>(), null); 179public ImmutableHashSet<IFieldSymbol> GetDisposableFields(INamedTypeSymbol namedType) 184if (_lazyDisposableFieldsMap.TryGetValue(namedType, out ImmutableHashSet<IFieldSymbol> disposableFields)) 191disposableFields = ImmutableHashSet<IFieldSymbol>.Empty; 196.OfType<IFieldSymbol>()
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\DisposeAnalysis\DisposeAnalysisResult.cs (2)
16ImmutableDictionary<IFieldSymbol, PointsToAnalysis.PointsToAbstractValue>? trackedInstanceFieldPointsToMap) 22public ImmutableDictionary<IFieldSymbol, PointsToAnalysis.PointsToAbstractValue>? TrackedInstanceFieldPointsToMap { get; }
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntity.cs (1)
191IFieldSymbol fieldSymbol => fieldSymbol.HasConstantValue,
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntityDataFlowOperationVisitor.cs (3)
776Debug.Assert(tupleElementEntity.Symbol is IFieldSymbol field); 806return tupleElementEntity.Symbol is IFieldSymbol tupleElementField && 807childEntity.Symbol is IFieldSymbol childEntityField &&
src\roslyn\src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntityFactory.cs (4)
282symbol = fieldReference.Field.ContainingType.GetUnderlyingValueTupleTypeOrThis()?.GetMembers(name).OfType<IFieldSymbol>().FirstOrDefault() 375foreach (var field in tupleType.TupleElements) 378var mappedValueTupleField = underlyingValueTupleType.GetMembers(tupleFieldName).OfType<IFieldSymbol>().FirstOrDefault();
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\NamingStyles\Serialization\SymbolSpecification.cs (2)
514if (kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsReadOnly) 522if ((kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsConst) ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
67/// <item>Two <see cref="IFieldSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.FieldSymbolKey.cs (4)
9private sealed class FieldSymbolKey : AbstractSymbolKey<IFieldSymbol> 13public sealed override void Create(IFieldSymbol symbol, SymbolKeyWriter visitor) 20SymbolKeyReader reader, IFieldSymbol? contextualSymbol, out string? failureReason) 31using var result = GetMembersOfNamedType<IFieldSymbol>(containingTypeResolution, metadataName);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
347public override void VisitField(IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.TupleTypeSymbolKey.cs (2)
27foreach (var element in symbol.TupleElements) 41foreach (var element in symbol.TupleElements)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (1)
24.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
499var fieldSymbol = (IFieldSymbol)symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IPropertySymbolExtensions.cs (2)
14public static IFieldSymbol? GetBackingFieldIfAny(this IPropertySymbol property) 16.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (5)
323=> symbol is IFieldSymbol { ContainingType.IsTupleType: true }; 331IFieldSymbol fieldSymbol => !fieldSymbol.IsReadOnly && !fieldSymbol.IsConst, 337=> symbol is IFieldSymbol { IsRequired: true } or IPropertySymbol { IsRequired: true }; 342IFieldSymbol fieldSymbol => fieldSymbol.Type, 661IFieldSymbol fieldSymbol => fieldSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
46public override bool VisitField(IFieldSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (1)
703if (member is not IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (8)
121SymbolKind.Field => FieldsAreEquivalent((IFieldSymbol)x, (IFieldSymbol)y, equivalentTypesWithDifferingAssemblies), 152private bool FieldsAreEquivalent(IFieldSymbol x, IFieldSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies) 433var xElement = xElements[i]; 434var yElement = yElements[i]; 450var xElement = xElements[i]; 451var yElement = yElements[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
65SymbolKind.Field => CombineHashCodes((IFieldSymbol)x, currentHash), 92private int CombineHashCodes(IFieldSymbol x, int currentHash)
Microsoft.CodeAnalysis.CodeStyle (83)
src\roslyn\src\Analyzers\Core\Analyzers\MakeFieldReadonly\AbstractMakeFieldReadonlyDiagnosticAnalyzer.cs (13)
42var fieldStateMap = new ConcurrentDictionary<IFieldSymbol, (bool isCandidate, bool written)>(); 88var field = (IFieldSymbol)symbolContext.Symbol; 108var field = fieldReference.Field; 120if (member is IFieldSymbol field && fieldStateMap.TryRemove(field.OriginalDefinition, out var value)) 144if (member is IFieldSymbol field && 160bool IsCandidateField(IFieldSymbol symbol) 191static bool IsDataContractSerializable(IFieldSymbol symbol, INamedTypeSymbol? dataContractAttribute, INamedTypeSymbol? dataMemberAttribute) 201(bool isCandidate, bool written) TryGetOrInitializeFieldState(IFieldSymbol fieldSymbol, AnalyzerOptions options, CancellationToken cancellationToken) 215IFieldSymbol field, 234private static Location GetDiagnosticLocation(IFieldSymbol field) 272var field = fieldReference.Field; 308private static CodeStyleOption2<bool> GetCodeStyleOption(IFieldSymbol field, AnalyzerOptions options, out Location diagnosticLocation)
src\roslyn\src\Analyzers\Core\Analyzers\PopulateSwitch\PopulateSwitchStatementHelpers.cs (1)
158if (member is not IFieldSymbol fieldSymbol || fieldSymbol.Type.SpecialType != SpecialType.None)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (6)
380foreach (var field in initializer.InitializedFields) 626if (isInlineArray && member is IFieldSymbol { IsStatic: false }) 689if (member is IFieldSymbol { RefKind: RefKind.Ref }) 888case IPropertySymbol or IFieldSymbol: 932/// Backing fields have a non-null <see cref="IFieldSymbol.AssociatedSymbol"/>. 1049return ((IFieldSymbol)memberSymbol).AssociatedSymbol == null;
src\roslyn\src\Analyzers\Core\Analyzers\UseAutoProperty\AbstractUseAutoPropertyAnalyzer.cs (20)
51private static readonly ObjectPool<ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>>> s_fieldToUsageLocationPool = new(() => []); 58protected static void AddFieldUsage(ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites, IFieldSymbol field, SyntaxNode location) 61private static void ClearAndFree(ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> multiMap) 91SemanticModel semanticModel, IMethodSymbol accessor, HashSet<string> fieldNames, HashSet<IFieldSymbol> result, CancellationToken cancellationToken); 94HashSet<string> fieldNames, ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> ineligibleFieldUsageIfOutsideProperty, SemanticModel semanticModel, SyntaxNode codeBlock, CancellationToken cancellationToken); 122if (member is IFieldSymbol 222ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldReads, 223ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites, 236if (semanticModel.GetSymbolInfo(identifierName, cancellationToken).Symbol is not IFieldSymbol field) 268using var _ = PooledHashSet<IFieldSymbol>.GetInstance(out var set); 284using var _ = PooledHashSet<IFieldSymbol>.GetInstance(out var set); 290private IFieldSymbol? CheckFieldAccessExpression( 309IFieldSymbol field, 482var getterField = getterFields.TrivialField ?? getterFields.NonTrivialFields.Single(); 498protected IFieldSymbol? TryGetDirectlyAccessedFieldSymbol( 538ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> ineligibleFieldUsageIfOutsideProperty, 539ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldReads, 540ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites, 543using var _1 = PooledHashSet<IFieldSymbol>.GetInstance(out var reportedFields);
src\roslyn\src\Analyzers\Core\Analyzers\UseAutoProperty\AccessedFields.cs (5)
16IFieldSymbol? TrivialField, 17ImmutableArray<IFieldSymbol> NonTrivialFields) 21public AccessedFields(IFieldSymbol? trivialField) : this(trivialField, []) 28public AccessedFields Where<TArg>(Func<IFieldSymbol, TArg, bool> predicate, TArg arg) 32public bool Contains(IFieldSymbol field)
src\roslyn\src\Analyzers\Core\Analyzers\UseAutoProperty\AnalysisResult.cs (1)
32IFieldSymbol Field,
src\roslyn\src\Analyzers\Core\Analyzers\UseExplicitTupleName\UseExplicitTupleNameDiagnosticAnalyzer.cs (5)
49var field = fieldReferenceOperation.Field; 54var namedField = GetNamedField(field.ContainingType, field, context.CancellationToken); 76private static IFieldSymbol? GetNamedField( 77INamedTypeSymbol containingType, IFieldSymbol unnamedField, CancellationToken cancellationToken) 83if (member is IFieldSymbol fieldSymbol &&
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\NamingStyles\Serialization\SymbolSpecification.cs (2)
514if (kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsReadOnly) 522if ((kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsConst) ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
67/// <item>Two <see cref="IFieldSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.FieldSymbolKey.cs (4)
9private sealed class FieldSymbolKey : AbstractSymbolKey<IFieldSymbol> 13public sealed override void Create(IFieldSymbol symbol, SymbolKeyWriter visitor) 20SymbolKeyReader reader, IFieldSymbol? contextualSymbol, out string? failureReason) 31using var result = GetMembersOfNamedType<IFieldSymbol>(containingTypeResolution, metadataName);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
347public override void VisitField(IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.TupleTypeSymbolKey.cs (2)
27foreach (var element in symbol.TupleElements) 41foreach (var element in symbol.TupleElements)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (1)
24.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
499var fieldSymbol = (IFieldSymbol)symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IPropertySymbolExtensions.cs (2)
14public static IFieldSymbol? GetBackingFieldIfAny(this IPropertySymbol property) 16.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (5)
323=> symbol is IFieldSymbol { ContainingType.IsTupleType: true }; 331IFieldSymbol fieldSymbol => !fieldSymbol.IsReadOnly && !fieldSymbol.IsConst, 337=> symbol is IFieldSymbol { IsRequired: true } or IPropertySymbol { IsRequired: true }; 342IFieldSymbol fieldSymbol => fieldSymbol.Type, 661IFieldSymbol fieldSymbol => fieldSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
46public override bool VisitField(IFieldSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (1)
703if (member is not IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (8)
121SymbolKind.Field => FieldsAreEquivalent((IFieldSymbol)x, (IFieldSymbol)y, equivalentTypesWithDifferingAssemblies), 152private bool FieldsAreEquivalent(IFieldSymbol x, IFieldSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies) 433var xElement = xElements[i]; 434var yElement = yElements[i]; 450var xElement = xElements[i]; 451var yElement = yElements[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
65SymbolKind.Field => CombineHashCodes((IFieldSymbol)x, currentHash), 92private int CombineHashCodes(IFieldSymbol x, int currentHash)
Microsoft.CodeAnalysis.CodeStyle.Fixes (66)
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateConstructor\GenerateConstructorHelpers.cs (1)
355if (symbol is IFieldSymbol { IsConst: false } field)
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateVariable\AbstractGenerateVariableService.CodeAction.cs (1)
85var fieldSymbol = CodeGenerationSymbolFactory.CreateFieldSymbol(
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateVariable\AbstractGenerateVariableService.State.cs (1)
415=> symbol is IFieldSymbol field && field.IsReadOnly;
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementHelpers.cs (4)
28.OfType<IFieldSymbol>() 40ImmutableArray<IFieldSymbol> fields, 62bool IsAssignedToFieldOrProperty(ImmutableArray<IFieldSymbol> fields, ImmutableArray<IPropertySymbol> properties, IParameterSymbol parameter) 65bool IsAssignedToField(IFieldSymbol field, IParameterSymbol parameter)
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementInterfaceGenerator_DisposePattern.cs (4)
46var disposedValueField = await CreateDisposedValueFieldAsync( 115IFieldSymbol disposedValueField) 133IFieldSymbol disposedValueField) 229private static async Task<IFieldSymbol> CreateDisposedValueFieldAsync(
src\roslyn\src\Analyzers\Core\CodeFixes\MakeFieldReadonly\AbstractMakeFieldReadonlyCodeFixProvider.cs (2)
78var symbol = (IFieldSymbol?)model.GetDeclaredSymbol(declarator, cancellationToken);
src\roslyn\src\Analyzers\Core\CodeFixes\UseAutoProperty\AbstractUseAutoPropertyCodeFixProvider.cs (7)
74IFieldSymbol fieldSymbol, 175field = (IFieldSymbol?)field.GetSymbolKey(cancellationToken).Resolve(compilation, cancellationToken: cancellationToken).Symbol; 391private async Task<(IFieldSymbol? fieldSymbol, IPropertySymbol? propertySymbol)> MapDiagnosticToCurrentSolutionAsync( 407var fieldSymbol = (IFieldSymbol)fieldSemanticModel.GetRequiredDeclaredSymbol(declarator, cancellationToken); 422fieldSymbol = fieldSymbol.GetSymbolKey(cancellationToken).Resolve(currentCompilation, cancellationToken: cancellationToken).GetAnySymbol() as IFieldSymbol; 478IFieldSymbol field,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractCodeGenerationService.cs (9)
50public TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode 79public SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken) 124protected abstract TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, TCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 144public abstract SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, TCodeGenerationContextInfo info, CancellationToken cancellationToken); 346IFieldSymbol field => CreateFieldDeclaration(field, codeGenerationDestination, info, cancellationToken), 364IFieldSymbol field => AddField(currentDestination, field, info, availableIndices, cancellationToken), 375var field = members.OfType<IFieldSymbol>().FirstOrDefault(); 401public Task<Document> AddFieldAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractFlagsEnumGenerator.cs (17)
12internal abstract class AbstractFlagsEnumGenerator : IComparer<(IFieldSymbol field, ulong value)> 63var allFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 66var usedFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 73List<(IFieldSymbol field, ulong value)> allFieldsAndValues, 74List<(IFieldSymbol field, ulong value)> usedFieldsAndValues) 124var zeroField = GetZeroField(allFieldsAndValues); 137IFieldSymbol field, INamedTypeSymbol enumType, SpecialType underlyingSpecialType) 152private static IFieldSymbol? GetZeroField(List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 168List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 172foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 191foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 205int IComparer<(IFieldSymbol field, ulong value)>.Compare((IFieldSymbol field, ulong value) x, (IFieldSymbol field, ulong value) y)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationHelpers.cs (1)
158.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (3)
102public static IFieldSymbol CreateFieldSymbol( 589internal static IFieldSymbol CreateFieldSymbol( 590IFieldSymbol field,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerator.cs (1)
37public static Task<Document> AddFieldDeclarationAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\ICodeGenerationService.cs (3)
27SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken); 58TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 138Task<Document> AddFieldAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
18public ImmutableArray<IFieldSymbol> TupleElements { get; protected set; }
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldInfo.cs (6)
13private static readonly ConditionalWeakTable<IFieldSymbol, CodeGenerationFieldInfo> s_fieldToInfoMap = new(); 30IFieldSymbol field, 39private static CodeGenerationFieldInfo GetInfo(IFieldSymbol field) 48public static bool GetIsUnsafe(IFieldSymbol field) 54public static bool GetIsWithEvents(IFieldSymbol field) 60public static SyntaxNode GetInitializer(IFieldSymbol field)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldSymbol.cs (2)
34public new IFieldSymbol OriginalDefinition 42public IFieldSymbol CorrespondingTupleField => null;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
83IFieldSymbol field => field.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
526.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\InitializeParameter\InitializeParameterHelpersCore.cs (1)
152if (memberReference.Member is IFieldSymbol or IPropertySymbol)
Microsoft.CodeAnalysis.CSharp (45)
Compilation\CSharpSemanticModel.cs (2)
601case IFieldSymbol field: 3006public abstract IFieldSymbol GetDeclaredSymbol(EnumMemberDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken));
Compilation\MemberSemanticModel.cs (1)
616public override IFieldSymbol GetDeclaredSymbol(EnumMemberDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
Compilation\QueryClauseInfo.cs (1)
43/// <see cref="IFieldSymbol"/> or <see cref="IPropertySymbol"/> that return a delegate.
Compilation\SpeculativeSemanticModelWithMemberModel.cs (1)
275public override IFieldSymbol GetDeclaredSymbol(EnumMemberDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
Compilation\SyntaxTreeSemanticModel.cs (1)
1519public override IFieldSymbol GetDeclaredSymbol(EnumMemberDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
CSharpExtensions.cs (1)
1424public static IFieldSymbol? GetDeclaredSymbol(this SemanticModel? semanticModel, EnumMemberDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
Operations\CSharpOperationFactory.cs (3)
581IFieldSymbol field = boundFieldAccess.FieldSymbol.GetPublicSymbol(); 1792ImmutableArray<IFieldSymbol> initializedFields = ImmutableArray.Create<IFieldSymbol>(boundFieldEqualsValue.Field.GetPublicSymbol());
SymbolDisplay\SymbolDisplayVisitor.Members.cs (5)
22private void VisitFieldType(IFieldSymbol symbol) 27public override void VisitField(IFieldSymbol symbol) 900private void AddFieldModifiersIfNeeded(IFieldSymbol symbol) 938var isConst = symbol is IFieldSymbol { IsConst: true }; 939var isRequired = symbol is IFieldSymbol { IsRequired: true } or IPropertySymbol { IsRequired: true };
SymbolDisplay\SymbolDisplayVisitor.Types.cs (2)
592ImmutableArray<IFieldSymbol> elements = symbol.TupleElements; 597var element = elements[i];
Symbols\PublicModel\FieldSymbol.cs (19)
26ISymbol IFieldSymbol.AssociatedSymbol 34RefKind IFieldSymbol.RefKind => _underlying.RefKind; 36ImmutableArray<CustomModifier> IFieldSymbol.RefCustomModifiers => _underlying.RefCustomModifiers; 38ITypeSymbol IFieldSymbol.Type 51CodeAnalysis.NullableAnnotation IFieldSymbol.NullableAnnotation => _underlying.TypeWithAnnotations.ToPublicAnnotation(); 53ImmutableArray<CustomModifier> IFieldSymbol.CustomModifiers 58IFieldSymbol IFieldSymbol.OriginalDefinition 66IFieldSymbol IFieldSymbol.CorrespondingTupleField 74bool IFieldSymbol.IsExplicitlyNamedTupleElement 82bool IFieldSymbol.IsConst => _underlying.IsConst; 84bool IFieldSymbol.IsReadOnly => _underlying.IsReadOnly; 86bool IFieldSymbol.IsVolatile => _underlying.IsVolatile; 88bool IFieldSymbol.IsRequired => _underlying.IsRequired; 90bool IFieldSymbol.IsFixedSizeBuffer => _underlying.IsFixedSizeBuffer; 92int IFieldSymbol.FixedSize => _underlying.FixedSize; 94bool IFieldSymbol.HasConstantValue => _underlying.HasConstantValue; 96object IFieldSymbol.ConstantValue => _underlying.ConstantValue;
Symbols\PublicModel\NamedTypeSymbol.cs (1)
159ImmutableArray<IFieldSymbol> INamedTypeSymbol.TupleElements
Symbols\SymbolExtensions.cs (4)
611internal static IFieldSymbol? GetPublicSymbol(this FieldSymbol? symbol) 613return symbol.GetPublicSymbol<IFieldSymbol>(); 742internal static ImmutableArray<IFieldSymbol> GetPublicSymbols(this ImmutableArray<FieldSymbol> symbols) 744return GetPublicSymbols<IFieldSymbol>(StaticCast<Symbol>.From(symbols));
Symbols\TypedConstantExtensions.cs (4)
87var field = member as IFieldSymbol; 166var field = member as IFieldSymbol;
Microsoft.CodeAnalysis.CSharp.CodeStyle (21)
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructFieldsWritable\CSharpMakeStructFieldsWritableDiagnosticAnalyzer.cs (1)
79.OfType<IFieldSymbol>()
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructReadOnly\CSharpMakeStructReadOnlyDiagnosticAnalyzer.cs (1)
103if (member is IFieldSymbol field)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseAutoProperty\CSharpUseAutoPropertyAnalyzer.cs (4)
49ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> ineligibleFieldUsageIfOutsideProperty, 115if (symbolInfo.GetAnySymbol() is not IFieldSymbol { ContainingType.TypeKind: TypeKind.Struct }) 144if (symbol is IFieldSymbol field) 242HashSet<IFieldSymbol> result,
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (2)
444if (symbol is not IPropertySymbol and not IFieldSymbol) 1130if (emptySymbol is not IFieldSymbol and not IPropertySymbol)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseDeconstruction\CSharpUseDeconstructionDiagnosticAnalyzer.cs (3)
170foreach (var element in tupleType.TupleElements) 209foreach (var element in tupleType.TupleElements) 264if (member is not IFieldSymbol field)
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePrimaryConstructor\CSharpUsePrimaryConstructorDiagnosticAnalyzer.cs (3)
93if (member is not IFieldSymbol and not IPropertySymbol) 175if (_candidateMembersToRemove.Any(kvp => kvp.Key is IFieldSymbol) && 176_candidateMembersToRemove.All(kvp => kvp.Key is IFieldSymbol))
src\roslyn\src\Analyzers\CSharp\Analyzers\UseSystemThreadingLock\CSharpUseSystemThreadingLockDiagnosticAnalyzer.cs (5)
86using var fieldsArray = TemporaryArray<(IFieldSymbol field, VariableDeclaratorSyntax declarator, CodeStyleOption2<bool> option)>.Empty; 90if (member is not IFieldSymbol 139IFieldSymbol, 150if (context.ContainingSymbol is not IFieldSymbol fieldSymbol) 170var fieldReference = fieldReferenceOperation.Field.OriginalDefinition;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
372if (exprSymbol is not IFieldSymbol { IsConst: true })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (1)
735if (castedSymbol is not IFieldSymbol and not ILocalSymbol and not IParameterSymbol and not IParameterSymbol { RefKind: RefKind.Ref })
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (41)
src\roslyn\src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordEngine.cs (1)
107.OfType<IFieldSymbol>()
src\roslyn\src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordHelpers.cs (15)
26ImmutableArray<IFieldSymbol> expectedComparedFields) 78ImmutableArray<IFieldSymbol> expectedHashedFields) 228ImmutableArray<IFieldSymbol> fields, 249Field: IFieldSymbol referencedField 448{ Instance: IInstanceReferenceOperation, Field: IFieldSymbol field } 492private static ImmutableArray<IFieldSymbol> GetEqualizedFields( 505using var _1 = ArrayBuilder<IFieldSymbol>.GetInstance(out var fields); 728ArrayBuilder<IFieldSymbol> builder) 786ArrayBuilder<IFieldSymbol> builder, 882ArrayBuilder<IFieldSymbol> builder) 920ArrayBuilder<IFieldSymbol> builder) 930var field = UnwrapPropertyToField(memberReference1.Member); 959ArrayBuilder<IFieldSymbol> builder, 1124private static IFieldSymbol? UnwrapPropertyToField(ISymbol propertyOrField) 1128IFieldSymbol field => field,
src\roslyn\src\Analyzers\CSharp\CodeFixes\DisambiguateSameVariable\CSharpDisambiguateSameVariableCodeFixProvider.cs (1)
109where m is IFieldSymbol or IPropertySymbol
src\roslyn\src\Analyzers\CSharp\CodeFixes\MakeMemberRequired\CSharpMakeMemberRequiredCodeFixProvider.cs (1)
80else if (fieldOrPropertySymbol is IFieldSymbol fieldSymbol)
src\roslyn\src\Analyzers\CSharp\CodeFixes\Nullable\CSharpDeclareAsNullableCodeFixProvider.cs (3)
183else if (symbol is IFieldSymbol { IsImplicitlyDeclared: false, DeclaringSyntaxReferences.Length: > 0 } field) 193else if (symbol is IFieldSymbol { CorrespondingTupleField: IFieldSymbol { Locations: [{ IsInSource: true } location] } })
src\roslyn\src\Analyzers\CSharp\CodeFixes\ReplaceDefaultLiteral\CSharpReplaceDefaultLiteralCodeFixProvider.cs (1)
88type.GetMembers("None").FirstOrDefault() is IFieldSymbol field && IsZero(field.ConstantValue))
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseAutoProperty\CSharpUseAutoPropertyCodeFixProvider.cs (1)
83IFieldSymbol fieldSymbol,
src\roslyn\src\Analyzers\CSharp\CodeFixes\UsePrimaryConstructor\CSharpUsePrimaryConstructorCodeFixProvider.cs (2)
319IMethodSymbol or IPropertySymbol or IEventSymbol or IFieldSymbol => 468Contract.ThrowIfFalse(member is IFieldSymbol or IPropertySymbol);
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseSystemThreadingLock\CSharpUseSystemThreadingLockCodeFixProvider.cs (1)
91if (semanticModel.GetDeclaredSymbol(variableDeclarator, cancellationToken) is not IFieldSymbol field)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationHelpers.cs (1)
278if (symbol is IFieldSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (2)
97protected override TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CSharpCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) 664public override SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\EnumMemberGenerator.cs (3)
23internal static EnumDeclarationSyntax AddEnumMemberTo(EnumDeclarationSyntax destination, IFieldSymbol enumMember, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken) 53IFieldSymbol enumMember, 73EnumDeclarationSyntax? destination, IFieldSymbol enumMember)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\FieldGenerator.cs (5)
55IFieldSymbol field, 71IFieldSymbol field, 87IFieldSymbol field, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken) 110private static EqualsValueClauseSyntax? GenerateEqualsValue(IFieldSymbol field) 121private static SyntaxTokenList GenerateModifiers(IFieldSymbol field, CSharpCodeGenerationContextInfo info)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\NamedTypeGenerator.cs (1)
124members = members.WhereAsArray(m => m is not IPropertySymbol and not IFieldSymbol || !primaryConstructor.Parameters.Any(static (p, m) => p.Name == m.Name, m));
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeSymbolExtensions.TypeSyntaxGeneratorVisitor.cs (1)
248foreach (var element in symbol.TupleElements)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (1)
1558case IFieldSymbol field:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\InitializeParameter\InitializeParameterHelpers.cs (1)
76else if (fieldOrProperty is IFieldSymbol field)
Microsoft.CodeAnalysis.CSharp.Features (91)
Completion\CompletionProviders\EnumAndCompletionListTagCompletionProvider.cs (3)
184var fields = type.GetMembers().OfType<IFieldSymbol>().Where(f => f.IsConst).Where(f => f.HasConstantValue); 185foreach (var field in fields.OrderBy(f => IntegerUtilities.ToInt64(f.ConstantValue))) 217if (member is IFieldSymbol { IsStatic: true } field)
Completion\CompletionProviders\PropertySubPatternCompletionProvider.cs (1)
134IFieldSymbol field => field.Type,
Completion\CompletionProviders\TupleNameCompletionProvider.cs (1)
104var field = type.TupleElements[index];
ConvertPrimaryToRegularConstructor\ConvertPrimaryToRegularConstructorCodeRefactoringProvider.cs (9)
182ImmutableDictionary<IParameterSymbol, IFieldSymbol> CreateSynthesizedFields() 184using var _1 = PooledDictionary<Location, IFieldSymbol>.GetInstance(out var locationToField); 185using var _2 = PooledDictionary<IParameterSymbol, IFieldSymbol>.GetInstance(out var result); 192if (member is IFieldSymbol { IsImplicitlyDeclared: true, Locations: [var location, ..] } field) 199locationToField.TryGetValue(location, out var existingField)) 205var synthesizedField = CodeGenerationSymbolFactory.CreateFieldSymbol( 304.Select(p => parameterToSynthesizedFields.TryGetValue(p, out var field) ? field : null) 361if (!parameterToSynthesizedFields.TryGetValue(parameter, out var field)) 463if (!parameterToSynthesizedFields.TryGetValue(parameter, out var field))
ConvertProgram\ConvertProgramTransform_TopLevelStatements.cs (2)
298var field = (IFieldSymbol?)semanticModel.GetDeclaredSymbol(variable, cancellationToken);
EditAndContinue\CSharpEditAndContinueAnalyzer.cs (1)
2562IFieldSymbol { ContainingType.TypeKind: TypeKind.Enum }
EncapsulateField\CSharpEncapsulateFieldService.cs (7)
93var field = semanticModel.GetDeclaredSymbol(declarator, cancellationToken) as IFieldSymbol; 95var fieldToAdd = declarationAnnotation.AddAnnotationToSymbol(CodeGenerationSymbolFactory.CreateFieldSymbol( 123protected override async Task<ImmutableArray<IFieldSymbol>> GetFieldsAsync(Document document, TextSpan span, CancellationToken cancellationToken) 148.Select(d => semanticModel.GetDeclaredSymbol(d, cancellationToken) as IFieldSymbol) 156protected override (string fieldName, string propertyName) GenerateFieldAndPropertyNames(IFieldSymbol field) 190private static bool IsNew(IFieldSymbol field)
GenerateConstructors\CSharpGenerateConstructorsCodeRefactoringProvider.cs (2)
56protected override IFieldSymbol? TryMapToWritableInstanceField(IPropertySymbol property, CancellationToken cancellationToken) 72return property.ContainingType.GetMembers(accessedMemberName).FirstOrDefault() as IFieldSymbol;
InitializeParameter\CSharpInitializeMemberFromPrimaryConstructorParameterCodeRefactoringProvider.cs (5)
110if (memberWithName is IFieldSymbol { IsConst: false, DeclaringSyntaxReferences: [var syntaxRef1, ..] } field && 160refactorings.Add(siblingFieldOrProperty is IFieldSymbol ? fieldAction : propertyAction); 161refactorings.Add(siblingFieldOrProperty is IFieldSymbol ? propertyAction : fieldAction); 173refactorings.Add(siblingFieldOrProperty is IFieldSymbol ? allFieldsAction : allPropertiesAction); 174refactorings.Add(siblingFieldOrProperty is IFieldSymbol ? allPropertiesAction : allFieldsAction);
InitializeParameter\CSharpInitializeMemberFromPrimaryConstructorParameterCodeRefactoringProvider_Update.cs (3)
100IFieldSymbol => GetAddContext<IFieldSymbol>(compilation, parameter, cancellationToken), 119else if (fieldOrProperty is IFieldSymbol field)
LanguageServices\CSharpSymbolDisplayService.SymbolDescriptionBuilder.cs (2)
110else if (symbol is IFieldSymbol field) 265IFieldSymbol symbol)
QuickInfo\CSharpSemanticQuickInfoProvider.cs (2)
218case IFieldSymbol { HasConstantValue: true }: return null; 222case IFieldSymbol:
ReplacePropertyWithMethods\CSharpReplacePropertyWithMethodsService.cs (4)
39IFieldSymbol? propertyBackingField, 64IFieldSymbol? propertyBackingField, 107IFieldSymbol? propertyBackingField, 170IFieldSymbol? propertyBackingField,
SignatureHelp\AttributeSignatureHelpProvider.cs (3)
175var type = namedParameter is IFieldSymbol ? ((IFieldSymbol)namedParameter).Type : ((IPropertySymbol)namedParameter).Type; 180namedParameter is IFieldSymbol ? SymbolDisplayPartKind.FieldName : SymbolDisplayPartKind.PropertyName,
SignatureHelp\TupleConstructionSignatureHelpProvider.cs (1)
182foreach (var element in tupleType.TupleElements)
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructFieldsWritable\CSharpMakeStructFieldsWritableDiagnosticAnalyzer.cs (1)
79.OfType<IFieldSymbol>()
src\roslyn\src\Analyzers\CSharp\Analyzers\MakeStructReadOnly\CSharpMakeStructReadOnlyDiagnosticAnalyzer.cs (1)
103if (member is IFieldSymbol field)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseAutoProperty\CSharpUseAutoPropertyAnalyzer.cs (4)
49ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> ineligibleFieldUsageIfOutsideProperty, 115if (symbolInfo.GetAnySymbol() is not IFieldSymbol { ContainingType.TypeKind: TypeKind.Struct }) 144if (symbol is IFieldSymbol field) 242HashSet<IFieldSymbol> result,
src\roslyn\src\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (2)
444if (symbol is not IPropertySymbol and not IFieldSymbol) 1130if (emptySymbol is not IFieldSymbol and not IPropertySymbol)
src\roslyn\src\Analyzers\CSharp\Analyzers\UseDeconstruction\CSharpUseDeconstructionDiagnosticAnalyzer.cs (3)
170foreach (var element in tupleType.TupleElements) 209foreach (var element in tupleType.TupleElements) 264if (member is not IFieldSymbol field)
src\roslyn\src\Analyzers\CSharp\Analyzers\UsePrimaryConstructor\CSharpUsePrimaryConstructorDiagnosticAnalyzer.cs (3)
93if (member is not IFieldSymbol and not IPropertySymbol) 175if (_candidateMembersToRemove.Any(kvp => kvp.Key is IFieldSymbol) && 176_candidateMembersToRemove.All(kvp => kvp.Key is IFieldSymbol))
src\roslyn\src\Analyzers\CSharp\Analyzers\UseSystemThreadingLock\CSharpUseSystemThreadingLockDiagnosticAnalyzer.cs (5)
86using var fieldsArray = TemporaryArray<(IFieldSymbol field, VariableDeclaratorSyntax declarator, CodeStyleOption2<bool> option)>.Empty; 90if (member is not IFieldSymbol 139IFieldSymbol, 150if (context.ContainingSymbol is not IFieldSymbol fieldSymbol) 170var fieldReference = fieldReferenceOperation.Field.OriginalDefinition;
src\roslyn\src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordEngine.cs (1)
107.OfType<IFieldSymbol>()
src\roslyn\src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordHelpers.cs (15)
26ImmutableArray<IFieldSymbol> expectedComparedFields) 78ImmutableArray<IFieldSymbol> expectedHashedFields) 228ImmutableArray<IFieldSymbol> fields, 249Field: IFieldSymbol referencedField 448{ Instance: IInstanceReferenceOperation, Field: IFieldSymbol field } 492private static ImmutableArray<IFieldSymbol> GetEqualizedFields( 505using var _1 = ArrayBuilder<IFieldSymbol>.GetInstance(out var fields); 728ArrayBuilder<IFieldSymbol> builder) 786ArrayBuilder<IFieldSymbol> builder, 882ArrayBuilder<IFieldSymbol> builder) 920ArrayBuilder<IFieldSymbol> builder) 930var field = UnwrapPropertyToField(memberReference1.Member); 959ArrayBuilder<IFieldSymbol> builder, 1124private static IFieldSymbol? UnwrapPropertyToField(ISymbol propertyOrField) 1128IFieldSymbol field => field,
src\roslyn\src\Analyzers\CSharp\CodeFixes\DisambiguateSameVariable\CSharpDisambiguateSameVariableCodeFixProvider.cs (1)
109where m is IFieldSymbol or IPropertySymbol
src\roslyn\src\Analyzers\CSharp\CodeFixes\MakeMemberRequired\CSharpMakeMemberRequiredCodeFixProvider.cs (1)
80else if (fieldOrPropertySymbol is IFieldSymbol fieldSymbol)
src\roslyn\src\Analyzers\CSharp\CodeFixes\Nullable\CSharpDeclareAsNullableCodeFixProvider.cs (3)
183else if (symbol is IFieldSymbol { IsImplicitlyDeclared: false, DeclaringSyntaxReferences.Length: > 0 } field) 193else if (symbol is IFieldSymbol { CorrespondingTupleField: IFieldSymbol { Locations: [{ IsInSource: true } location] } })
src\roslyn\src\Analyzers\CSharp\CodeFixes\ReplaceDefaultLiteral\CSharpReplaceDefaultLiteralCodeFixProvider.cs (1)
88type.GetMembers("None").FirstOrDefault() is IFieldSymbol field && IsZero(field.ConstantValue))
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseAutoProperty\CSharpUseAutoPropertyCodeFixProvider.cs (1)
83IFieldSymbol fieldSymbol,
src\roslyn\src\Analyzers\CSharp\CodeFixes\UsePrimaryConstructor\CSharpUsePrimaryConstructorCodeFixProvider.cs (2)
319IMethodSymbol or IPropertySymbol or IEventSymbol or IFieldSymbol => 468Contract.ThrowIfFalse(member is IFieldSymbol or IPropertySymbol);
src\roslyn\src\Analyzers\CSharp\CodeFixes\UseSystemThreadingLock\CSharpUseSystemThreadingLockCodeFixProvider.cs (1)
91if (semanticModel.GetDeclaredSymbol(variableDeclarator, cancellationToken) is not IFieldSymbol field)
Microsoft.CodeAnalysis.CSharp.Workspaces (20)
Classification\SyntaxClassification\NameSyntaxClassifier.cs (2)
194case IFieldSymbol fieldSymbol: 233private static string GetClassificationForField(IFieldSymbol fieldSymbol)
Recommendations\CSharpRecommendationServiceRunner.cs (1)
638.WhereAsArray(symbol => symbol is INamespaceOrTypeSymbol or IFieldSymbol { IsConst: true }
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
372if (exprSymbol is not IFieldSymbol { IsConst: true })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (1)
735if (castedSymbol is not IFieldSymbol and not ILocalSymbol and not IParameterSymbol and not IParameterSymbol { RefKind: RefKind.Ref })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationHelpers.cs (1)
278if (symbol is IFieldSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (2)
97protected override TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CSharpCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) 664public override SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\EnumMemberGenerator.cs (3)
23internal static EnumDeclarationSyntax AddEnumMemberTo(EnumDeclarationSyntax destination, IFieldSymbol enumMember, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken) 53IFieldSymbol enumMember, 73EnumDeclarationSyntax? destination, IFieldSymbol enumMember)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\FieldGenerator.cs (5)
55IFieldSymbol field, 71IFieldSymbol field, 87IFieldSymbol field, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken) 110private static EqualsValueClauseSyntax? GenerateEqualsValue(IFieldSymbol field) 121private static SyntaxTokenList GenerateModifiers(IFieldSymbol field, CSharpCodeGenerationContextInfo info)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\NamedTypeGenerator.cs (1)
124members = members.WhereAsArray(m => m is not IPropertySymbol and not IFieldSymbol || !primaryConstructor.Parameters.Any(static (p, m) => p.Name == m.Name, m));
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeSymbolExtensions.TypeSyntaxGeneratorVisitor.cs (1)
248foreach (var element in symbol.TupleElements)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (1)
1558case IFieldSymbol field:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\InitializeParameter\InitializeParameterHelpers.cs (1)
76else if (fieldOrProperty is IFieldSymbol field)
Microsoft.CodeAnalysis.Extensions.Package (21)
Symbols\INamedTypeSymbolExtensions.cs (2)
499var fieldSymbol = (IFieldSymbol)symbol;
Symbols\IPropertySymbolExtensions.cs (2)
14public static IFieldSymbol? GetBackingFieldIfAny(this IPropertySymbol property) 16.OfType<IFieldSymbol>()
Symbols\ISymbolExtensions.cs (5)
323=> symbol is IFieldSymbol { ContainingType.IsTupleType: true }; 331IFieldSymbol fieldSymbol => !fieldSymbol.IsReadOnly && !fieldSymbol.IsConst, 337=> symbol is IFieldSymbol { IsRequired: true } or IPropertySymbol { IsRequired: true }; 342IFieldSymbol fieldSymbol => fieldSymbol.Type, 661IFieldSymbol fieldSymbol => fieldSymbol.Type,
Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
46public override bool VisitField(IFieldSymbol symbol)
Symbols\ITypeSymbolExtensions.cs (1)
703if (member is not IFieldSymbol fieldSymbol)
Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (8)
121SymbolKind.Field => FieldsAreEquivalent((IFieldSymbol)x, (IFieldSymbol)y, equivalentTypesWithDifferingAssemblies), 152private bool FieldsAreEquivalent(IFieldSymbol x, IFieldSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies) 433var xElement = xElements[i]; 434var yElement = yElements[i]; 450var xElement = xElements[i]; 451var yElement = yElements[i];
Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
65SymbolKind.Field => CombineHashCodes((IFieldSymbol)x, currentHash), 92private int CombineHashCodes(IFieldSymbol x, int currentHash)
Microsoft.CodeAnalysis.Features (193)
AddImport\SymbolReferenceFinder.cs (1)
341m is IFieldSymbol or IPropertySymbol &&
ChangeSignature\AbstractChangeSignatureService.cs (1)
950.Where(s => s is IPropertySymbol or IFieldSymbol);
Completion\Providers\AbstractContextVariableArgumentProvider.cs (1)
61if (symbol.IsKind(SymbolKind.Field, out IFieldSymbol? field))
Completion\Providers\AbstractObjectInitializerCompletionProvider.cs (2)
98fieldOrProperty is IFieldSymbol or IPropertySymbol && 117IFieldSymbol fieldSymbol => fieldSymbol.Type,
Completion\Providers\AbstractRecommendationServiceBasedCompletionProvider.cs (1)
214if (symbol is IFieldSymbol or IPropertySymbol)
Completion\Providers\ImportCompletionProvider\AbstractExtensionMethodImportCompletionProvider.cs (1)
117IFieldSymbol fieldSymbol => fieldSymbol.Type,
ConvertAutoPropertyToFullProperty\AbstractConvertAutoPropertyToFullPropertyCodeRefactoringProvider.cs (3)
71var fields = propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>(); 72var field = fields.FirstOrDefault(f => propertySymbol.Equals(f.AssociatedSymbol)); 107var newField = CodeGenerationSymbolFactory.CreateFieldSymbol(
ConvertTupleToStruct\AbstractConvertTupleToStructCodeRefactoringProvider.cs (7)
122ImmutableArray<IFieldSymbol> fields, 466var tupleFieldNames = tupleType.TupleElements.SelectAsArray<IFieldSymbol, string>(f => f.Name); 481var tupleFieldNames = tupleType.TupleElements.SelectAsArray<IFieldSymbol, string>(f => f.Name); 671StringComparer comparer, ImmutableArray<IFieldSymbol> fields1, ImmutableArray<IFieldSymbol> fields2) 886var arguments = tupleType.TupleElements.SelectAsArray<IFieldSymbol, SyntaxNode>( 923ImmutableArray<IFieldSymbol> fields, SyntaxGenerator generator,
EditAndContinue\AbstractEditAndContinueAnalyzer.ActiveMembersBuilder.cs (2)
35if (member is IFieldSymbol or IPropertySymbol or IEventSymbol) 99if (oldMethod is IMethodSymbol or IPropertySymbol or IFieldSymbol or IEventSymbol)
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (18)
312SymbolKind.Field => GetDisplayName((IFieldSymbol)symbol), 339internal virtual string GetDisplayName(IFieldSymbol symbol) 2577protected static bool ReturnTypesEquivalent(IFieldSymbol oldField, IFieldSymbol newField, bool exact) 2637return ReturnTypesEquivalent((IFieldSymbol)oldMember, (IFieldSymbol)newMember, exact); 3020var newMatchingSymbol = newContainingType.GetMembers(oldSymbol.Name).FirstOrDefault(m => m is IPropertySymbol or IFieldSymbol); 3465IFieldSymbol or 3888case IMethodSymbol or IFieldSymbol: 3925case IMethodSymbol or IFieldSymbol: 3977if (oldSymbol.Name != newSymbol.Name || oldSymbol is IMethodSymbol or IFieldSymbol) 4137Contract.ThrowIfFalse(oldMember is IFieldSymbol or IPropertySymbol or IEventSymbol); 4429if (oldSymbol is IFieldSymbol oldField && newSymbol is IFieldSymbol newField) 5058if (newSymbol is IFieldSymbol || newSymbol.IsAutoProperty()) 6347var oldBackingField = capture.GetPrimaryParameterBackingField(); 7058=> symbol is { IsStatic: false } and (IPropertySymbol or IFieldSymbol) && 7082IFieldSymbol or
EditAndContinue\Utilities\Extensions.cs (4)
208=> property.ContainingType.GetMembers().Any(static (member, property) => member is IFieldSymbol field && field.AssociatedSymbol == property, property); 224public static IFieldSymbol? GetPrimaryParameterBackingField(this IParameterSymbol parameter) 225=> (IFieldSymbol?)parameter.ContainingType.GetMembers().FirstOrDefault( 226static (member, parameter) => member is IFieldSymbol field && ParsePrimaryParameterBackingFieldName(field.Name, out var paramName) && paramName == parameter.Name, parameter);
EmbeddedLanguages\EmbeddedLanguageDetector.cs (2)
366if (symbol is not IFieldSymbol { Name: not "" } fieldSymbol) 482return symbol is IFieldSymbol or IPropertySymbol &&
EncapsulateField\AbstractEncapsulateFieldService.cs (21)
42protected abstract Task<ImmutableArray<IFieldSymbol>> GetFieldsAsync(Document document, TextSpan span, CancellationToken cancellationToken); 51var firstField = fields[0]; 74foreach (var field in fields) 82private ImmutableArray<CodeAction> EncapsulateAllFields(Document document, ImmutableArray<IFieldSymbol> fields) 94private ImmutableArray<CodeAction> EncapsulateOneField(Document document, IFieldSymbol field) 111Document document, ImmutableArray<IFieldSymbol> fields, 141private async Task<Solution> EncapsulateFieldsInCurrentProcessAsync(Document document, ImmutableArray<IFieldSymbol> fields, bool updateReferences, CancellationToken cancellationToken) 147foreach (var field in fields) 154if (field.GetSymbolKey(cancellationToken).Resolve(compilation, cancellationToken: cancellationToken).Symbol is not IFieldSymbol currentField) 169IFieldSymbol field, 173var originalField = field; 187field = (IFieldSymbol)field.GetSymbolKey(cancellationToken).Resolve(compilation, cancellationToken: cancellationToken).Symbol!; 208field = (IFieldSymbol)semanticModel.GetRequiredDeclaredSymbol(newDeclaration, cancellationToken); 231bool updateReferences, Solution solution, Document document, IFieldSymbol field, string finalFieldName, string generatedPropertyName, CancellationToken cancellationToken) 255field = (IFieldSymbol)field.GetSymbolKey(cancellationToken).Resolve(compilation, cancellationToken: cancellationToken).Symbol!; 277IFieldSymbol field, 319IFieldSymbol field, 340IFieldSymbol field, 363protected abstract (string fieldName, string propertyName) GenerateFieldAndPropertyNames(IFieldSymbol field); 378protected static IMethodSymbol CreateSet(string originalFieldName, IFieldSymbol field, SyntaxGenerator factory) 397protected static IMethodSymbol CreateGet(string originalFieldName, IFieldSymbol field, SyntaxGenerator factory)
EncapsulateField\IEncapsulateFieldService.cs (1)
18Task<Solution> EncapsulateFieldsAsync(Document document, ImmutableArray<IFieldSymbol> fields, bool updateReferences, CancellationToken cancellationToken);
ExtractMethod\MethodExtractor.Analyzer.cs (2)
883var field = (IFieldSymbol)pair.Key;
GenerateConstructors\AbstractGenerateConstructorsCodeRefactoringProvider.cs (1)
64protected abstract IFieldSymbol? TryMapToWritableInstanceField(IPropertySymbol property, CancellationToken cancellationToken);
GenerateFromMembers\GenerateFromMembersHelpers.cs (3)
58IFieldSymbol field => IsViableField(field), 67IFieldSymbol field => IsViableField(field) && !field.IsConst, 72private static bool IsViableField(IFieldSymbol field)
GenerateType\AbstractGenerateTypeService.Editor.cs (1)
623if (symbol is IFieldSymbol field)
InitializeParameter\AbstractInitializeMemberFromParameterCodeRefactoringProviderMemberCreation.cs (7)
123if (siblingFieldOrProperty is IFieldSymbol) 139if (siblingFieldOrProperty is IFieldSymbol) 195var field = CreateField(parameter, accessibilityModifiersRequired, rules); 273private IFieldSymbol CreateField( 512else if (fieldOrProperty is IFieldSymbol field) 516codeGenerator.GetInfo(GetAddContext<IFieldSymbol>(parameter, blockStatement, typeDeclaration, cancellationToken), options, root.SyntaxTree.Options), 637if (memberWithName is IFieldSymbol field &&
InlineMethod\AbstractInlineMethodRefactoringProvider.cs (2)
499semanticModel.GetDeclaredSymbol(declarator, cancellationToken) is IFieldSymbol fieldSymbol) 506if (semanticModel.GetAllDeclaredSymbols(node, cancellationToken).SingleOrDefault() is IFieldSymbol fieldSymbolFallBack)
LanguageServices\AnonymousTypeDisplayService\AbstractStructuralTypeDisplayService.StructuralTypeCollectorVisitor.cs (2)
37public override void VisitField(IFieldSymbol symbol) 98foreach (var field in symbol.TupleElements)
LanguageServices\SymbolDisplayService\AbstractSymbolDisplayService.AbstractSymbolDescriptionBuilder.cs (3)
406else if (symbol is IFieldSymbol field) 629private async Task AddDescriptionForFieldAsync(IFieldSymbol symbol) 649private async Task<ImmutableArray<SymbolDisplayPart>> GetFieldPartsAsync(IFieldSymbol symbol)
MetadataAsSource\AbstractMetadataAsSourceService.WrappedFieldSymbol.cs (4)
14private sealed class WrappedFieldSymbol(IFieldSymbol fieldSymbol, IDocumentationCommentFormattingService docCommentFormattingService) : AbstractWrappedSymbol(fieldSymbol, canImplementImplicitly: false, docCommentFormattingService: docCommentFormattingService), IFieldSymbol 16private readonly IFieldSymbol _symbol = fieldSymbol; 18public new IFieldSymbol OriginalDefinition => _symbol.OriginalDefinition; 20public IFieldSymbol CorrespondingTupleField => null;
MetadataAsSource\AbstractMetadataAsSourceService.WrappedNamedTypeSymbol.cs (2)
46SymbolKind.Field => new WrappedFieldSymbol((IFieldSymbol)m, docCommentFormattingService), 85public ImmutableArray<IFieldSymbol> TupleElements => _symbol.TupleElements;
NameTupleElement\AbstractNameTupleElementCodeRefactoringProvider.cs (1)
72var element = elements[argumentIndex];
PullMemberUp\MemberAndDestinationValidator.cs (1)
48IPropertySymbol or IEventSymbol or IFieldSymbol => true,
PullMemberUp\MembersPuller.cs (2)
186else if (member is IFieldSymbol fieldSymbol) 499if (selectedMember is IFieldSymbol fieldSymbol)
QuickInfo\CommonSemanticQuickInfoProvider.ErrorVisitor.cs (1)
32public override bool VisitField(IFieldSymbol symbol)
ReplacePropertyWithMethods\AbstractReplacePropertyWithMethodsService.cs (6)
30Document document, IPropertySymbol property, SyntaxNode propertyDeclaration, IFieldSymbol? propertyBackingField, string desiredGetMethodName, string desiredSetMethodName, CancellationToken cancellationToken); 39protected static SyntaxNode GetFieldReference(SyntaxGenerator generator, IFieldSymbol propertyBackingField) 57IPropertySymbol property, IFieldSymbol? propertyBackingField, 82private readonly IFieldSymbol? _propertyBackingField; 99IFieldSymbol? propertyBackingField, 319private SyntaxNode QualifyIfAppropriate(IFieldSymbol propertyBackingField, SyntaxNode newIdentifierName)
ReplacePropertyWithMethods\IReplacePropertyWithMethodsService.cs (2)
21IPropertySymbol property, IFieldSymbol? propertyBackingField, 28IFieldSymbol? propertyBackingField,
ReplacePropertyWithMethods\ReplacePropertyWithMethodsCodeRefactoringProvider.cs (10)
115private static ImmutableDictionary<IPropertySymbol, IFieldSymbol?> CreateDefinitionToBackingFieldMap(IEnumerable<ReferencedSymbol> propertyReferences) 117var definitionToBackingField = ImmutableDictionary.CreateBuilder<IPropertySymbol, IFieldSymbol?>(SymbolEquivalenceComparer.Instance); 153private static IFieldSymbol? GetBackingField(IPropertySymbol property) 155var field = property.GetBackingFieldIfAny(); 194ImmutableDictionary<IPropertySymbol, IFieldSymbol?> propertyToBackingField, 214ImmutableDictionary<IPropertySymbol, IFieldSymbol?> propertyToBackingField, 235IDictionary<IPropertySymbol, IFieldSymbol?> propertyToBackingField, 275var fieldSymbol = propertyToBackingField.GetValueOrDefault(property); 297ImmutableDictionary<IPropertySymbol, IFieldSymbol?> definitionToBackingField, 347IDictionary<IPropertySymbol, IFieldSymbol?> definitionToBackingField,
RQName\RQNodeBuilder.cs (2)
25IFieldSymbol fieldSymbol => BuildField(fieldSymbol), 87private static RQMember? BuildField(IFieldSymbol symbol)
Shared\Extensions\ISymbolExtensions_2.cs (1)
46publicIcon = ((IFieldSymbol)symbol).IsConst ? Glyph.ConstantPublic : Glyph.FieldPublic;
Shared\Utilities\ExtractTypeHelpers.cs (2)
218var field = member as IFieldSymbol;
src\roslyn\src\Analyzers\Core\Analyzers\MakeFieldReadonly\AbstractMakeFieldReadonlyDiagnosticAnalyzer.cs (13)
42var fieldStateMap = new ConcurrentDictionary<IFieldSymbol, (bool isCandidate, bool written)>(); 88var field = (IFieldSymbol)symbolContext.Symbol; 108var field = fieldReference.Field; 120if (member is IFieldSymbol field && fieldStateMap.TryRemove(field.OriginalDefinition, out var value)) 144if (member is IFieldSymbol field && 160bool IsCandidateField(IFieldSymbol symbol) 191static bool IsDataContractSerializable(IFieldSymbol symbol, INamedTypeSymbol? dataContractAttribute, INamedTypeSymbol? dataMemberAttribute) 201(bool isCandidate, bool written) TryGetOrInitializeFieldState(IFieldSymbol fieldSymbol, AnalyzerOptions options, CancellationToken cancellationToken) 215IFieldSymbol field, 234private static Location GetDiagnosticLocation(IFieldSymbol field) 272var field = fieldReference.Field; 308private static CodeStyleOption2<bool> GetCodeStyleOption(IFieldSymbol field, AnalyzerOptions options, out Location diagnosticLocation)
src\roslyn\src\Analyzers\Core\Analyzers\PopulateSwitch\PopulateSwitchStatementHelpers.cs (1)
158if (member is not IFieldSymbol fieldSymbol || fieldSymbol.Type.SpecialType != SpecialType.None)
src\roslyn\src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (6)
380foreach (var field in initializer.InitializedFields) 626if (isInlineArray && member is IFieldSymbol { IsStatic: false }) 689if (member is IFieldSymbol { RefKind: RefKind.Ref }) 888case IPropertySymbol or IFieldSymbol: 932/// Backing fields have a non-null <see cref="IFieldSymbol.AssociatedSymbol"/>. 1049return ((IFieldSymbol)memberSymbol).AssociatedSymbol == null;
src\roslyn\src\Analyzers\Core\Analyzers\UseAutoProperty\AbstractUseAutoPropertyAnalyzer.cs (20)
51private static readonly ObjectPool<ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>>> s_fieldToUsageLocationPool = new(() => []); 58protected static void AddFieldUsage(ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites, IFieldSymbol field, SyntaxNode location) 61private static void ClearAndFree(ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> multiMap) 91SemanticModel semanticModel, IMethodSymbol accessor, HashSet<string> fieldNames, HashSet<IFieldSymbol> result, CancellationToken cancellationToken); 94HashSet<string> fieldNames, ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> ineligibleFieldUsageIfOutsideProperty, SemanticModel semanticModel, SyntaxNode codeBlock, CancellationToken cancellationToken); 122if (member is IFieldSymbol 222ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldReads, 223ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites, 236if (semanticModel.GetSymbolInfo(identifierName, cancellationToken).Symbol is not IFieldSymbol field) 268using var _ = PooledHashSet<IFieldSymbol>.GetInstance(out var set); 284using var _ = PooledHashSet<IFieldSymbol>.GetInstance(out var set); 290private IFieldSymbol? CheckFieldAccessExpression( 309IFieldSymbol field, 482var getterField = getterFields.TrivialField ?? getterFields.NonTrivialFields.Single(); 498protected IFieldSymbol? TryGetDirectlyAccessedFieldSymbol( 538ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> ineligibleFieldUsageIfOutsideProperty, 539ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldReads, 540ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites, 543using var _1 = PooledHashSet<IFieldSymbol>.GetInstance(out var reportedFields);
src\roslyn\src\Analyzers\Core\Analyzers\UseAutoProperty\AccessedFields.cs (5)
16IFieldSymbol? TrivialField, 17ImmutableArray<IFieldSymbol> NonTrivialFields) 21public AccessedFields(IFieldSymbol? trivialField) : this(trivialField, []) 28public AccessedFields Where<TArg>(Func<IFieldSymbol, TArg, bool> predicate, TArg arg) 32public bool Contains(IFieldSymbol field)
src\roslyn\src\Analyzers\Core\Analyzers\UseAutoProperty\AnalysisResult.cs (1)
32IFieldSymbol Field,
src\roslyn\src\Analyzers\Core\Analyzers\UseExplicitTupleName\UseExplicitTupleNameDiagnosticAnalyzer.cs (5)
49var field = fieldReferenceOperation.Field; 54var namedField = GetNamedField(field.ContainingType, field, context.CancellationToken); 76private static IFieldSymbol? GetNamedField( 77INamedTypeSymbol containingType, IFieldSymbol unnamedField, CancellationToken cancellationToken) 83if (member is IFieldSymbol fieldSymbol &&
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateConstructor\GenerateConstructorHelpers.cs (1)
355if (symbol is IFieldSymbol { IsConst: false } field)
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateVariable\AbstractGenerateVariableService.CodeAction.cs (1)
85var fieldSymbol = CodeGenerationSymbolFactory.CreateFieldSymbol(
src\roslyn\src\Analyzers\Core\CodeFixes\GenerateVariable\AbstractGenerateVariableService.State.cs (1)
415=> symbol is IFieldSymbol field && field.IsReadOnly;
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementHelpers.cs (4)
28.OfType<IFieldSymbol>() 40ImmutableArray<IFieldSymbol> fields, 62bool IsAssignedToFieldOrProperty(ImmutableArray<IFieldSymbol> fields, ImmutableArray<IPropertySymbol> properties, IParameterSymbol parameter) 65bool IsAssignedToField(IFieldSymbol field, IParameterSymbol parameter)
src\roslyn\src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementInterfaceGenerator_DisposePattern.cs (4)
46var disposedValueField = await CreateDisposedValueFieldAsync( 115IFieldSymbol disposedValueField) 133IFieldSymbol disposedValueField) 229private static async Task<IFieldSymbol> CreateDisposedValueFieldAsync(
src\roslyn\src\Analyzers\Core\CodeFixes\MakeFieldReadonly\AbstractMakeFieldReadonlyCodeFixProvider.cs (2)
78var symbol = (IFieldSymbol?)model.GetDeclaredSymbol(declarator, cancellationToken);
src\roslyn\src\Analyzers\Core\CodeFixes\UseAutoProperty\AbstractUseAutoPropertyCodeFixProvider.cs (7)
74IFieldSymbol fieldSymbol, 175field = (IFieldSymbol?)field.GetSymbolKey(cancellationToken).Resolve(compilation, cancellationToken: cancellationToken).Symbol; 391private async Task<(IFieldSymbol? fieldSymbol, IPropertySymbol? propertySymbol)> MapDiagnosticToCurrentSolutionAsync( 407var fieldSymbol = (IFieldSymbol)fieldSemanticModel.GetRequiredDeclaredSymbol(declarator, cancellationToken); 422fieldSymbol = fieldSymbol.GetSymbolKey(cancellationToken).Resolve(currentCompilation, cancellationToken: cancellationToken).GetAnySymbol() as IFieldSymbol; 478IFieldSymbol field,
ValueTracking\ValueTracker.cs (2)
30or IFieldSymbol 87case IFieldSymbol:
Microsoft.CodeAnalysis.ResxSourceGenerator (50)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
277SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context), 315SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.FieldMetricData.cs (2)
15IFieldSymbol symbol, 27internal static FieldMetricData Compute(IFieldSymbol field, CodeMetricsAnalysisContext context)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.NamedTypeMetricData.cs (7)
73ImmutableHashSet<IFieldSymbol> filteredFieldsForComplexity = getFilteredFieldsForComplexity(); 82filteredFieldsForComplexity.Contains((IFieldSymbol)child.Symbol)) 109ImmutableHashSet<IFieldSymbol> getFilteredFieldsForComplexity() 111ImmutableHashSet<IFieldSymbol>.Builder? builder = null; 121builder ??= ImmutableHashSet.CreateBuilder<IFieldSymbol>(); 122builder.Add((IFieldSymbol)fieldData.Symbol); 126return builder?.ToImmutable() ?? ImmutableHashSet<IFieldSymbol>.Empty;
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\ComputationalComplexityMetrics.cs (1)
152foreach (var field in ((IFieldInitializerOperation)operation).InitializedFields)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (5)
43public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 49if (member is IFieldSymbol associated && 232IFieldSymbol field => field.IsReadOnly, 363IFieldSymbol field => field.IsConst, 374IFieldSymbol field => field.IsReadOnly,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\NamingStyles\Serialization\SymbolSpecification.cs (2)
514if (kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsReadOnly) 522if ((kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsConst) ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
67/// <item>Two <see cref="IFieldSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.FieldSymbolKey.cs (4)
9private sealed class FieldSymbolKey : AbstractSymbolKey<IFieldSymbol> 13public sealed override void Create(IFieldSymbol symbol, SymbolKeyWriter visitor) 20SymbolKeyReader reader, IFieldSymbol? contextualSymbol, out string? failureReason) 31using var result = GetMembersOfNamedType<IFieldSymbol>(containingTypeResolution, metadataName);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
347public override void VisitField(IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.TupleTypeSymbolKey.cs (2)
27foreach (var element in symbol.TupleElements) 41foreach (var element in symbol.TupleElements)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (1)
24.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
499var fieldSymbol = (IFieldSymbol)symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IPropertySymbolExtensions.cs (2)
14public static IFieldSymbol? GetBackingFieldIfAny(this IPropertySymbol property) 16.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (5)
323=> symbol is IFieldSymbol { ContainingType.IsTupleType: true }; 331IFieldSymbol fieldSymbol => !fieldSymbol.IsReadOnly && !fieldSymbol.IsConst, 337=> symbol is IFieldSymbol { IsRequired: true } or IPropertySymbol { IsRequired: true }; 342IFieldSymbol fieldSymbol => fieldSymbol.Type, 661IFieldSymbol fieldSymbol => fieldSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
46public override bool VisitField(IFieldSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (1)
703if (member is not IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (8)
121SymbolKind.Field => FieldsAreEquivalent((IFieldSymbol)x, (IFieldSymbol)y, equivalentTypesWithDifferingAssemblies), 152private bool FieldsAreEquivalent(IFieldSymbol x, IFieldSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies) 433var xElement = xElements[i]; 434var yElement = yElements[i]; 450var xElement = xElements[i]; 451var yElement = yElements[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
65SymbolKind.Field => CombineHashCodes((IFieldSymbol)x, currentHash), 92private int CombineHashCodes(IFieldSymbol x, int currentHash)
Microsoft.CodeAnalysis.VisualBasic (37)
Binding\MemberSemanticModel.vb (1)
562Public Overrides Function GetDeclaredSymbol(declarationSyntax As EnumMemberDeclarationSyntax, Optional cancellationToken As CancellationToken = Nothing) As IFieldSymbol
Compilation\SemanticModel.vb (1)
2542Public MustOverride Overloads Function GetDeclaredSymbol(declarationSyntax As EnumMemberDeclarationSyntax, Optional cancellationToken As CancellationToken = Nothing) As IFieldSymbol
Compilation\SpeculativeSemanticModelWithMemberModel.vb (1)
181Public Overrides Function GetDeclaredSymbol(declarationSyntax As EnumMemberDeclarationSyntax, Optional cancellationToken As CancellationToken = Nothing) As IFieldSymbol
Compilation\SyntaxTreeSemanticModel.vb (2)
1153Public Overrides Function GetDeclaredSymbol(declarationSyntax As EnumMemberDeclarationSyntax, Optional cancellationToken As CancellationToken = Nothing) As IFieldSymbol 1366Dim field = TryCast(Me.GetDeclaredSymbol(identifier, cancellationToken), IFieldSymbol)
Operations\VisualBasicOperationFactory.vb (3)
919Dim field As IFieldSymbol = boundFieldAccess.FieldSymbol 991Dim initializedFields As ImmutableArray(Of IFieldSymbol) = boundFieldInitializer.InitializedFields.As(Of IFieldSymbol)
SymbolDisplay\SymbolDisplayVisitor.Members.vb (3)
11Public Overrides Sub VisitField(symbol As IFieldSymbol) 596Private Sub AddFieldModifiersIfRequired(symbol As IFieldSymbol) 618Dim isConst = symbol.Kind = SymbolKind.Field AndAlso DirectCast(symbol, IFieldSymbol).IsConst
SymbolDisplay\SymbolDisplayVisitor.Types.vb (1)
390Dim elements As ImmutableArray(Of IFieldSymbol) = symbol.TupleElements
Symbols\FieldSymbol.vb (19)
87Public MustOverride ReadOnly Property IsReadOnly As Boolean Implements IFieldSymbol.IsReadOnly 404Private ReadOnly Property IFieldSymbol_AssociatedSymbol As ISymbol Implements IFieldSymbol.AssociatedSymbol 422Private ReadOnly Property IFieldSymbol_IsConst As Boolean Implements IFieldSymbol.IsConst 428Private ReadOnly Property IFieldSymbol_IsVolatile As Boolean Implements IFieldSymbol.IsVolatile, IFieldSymbolInternal.IsVolatile 434Private ReadOnly Property IFieldSymbol_IsRequired As Boolean Implements IFieldSymbol.IsRequired 440Private ReadOnly Property IFieldSymbol_IsFixedSizeBuffer As Boolean Implements IFieldSymbol.IsFixedSizeBuffer 446Private ReadOnly Property IFieldSymbol_FixedSize As Integer Implements IFieldSymbol.FixedSize 455Private ReadOnly Property IFieldSymbol_RefKind As RefKind Implements IFieldSymbol.RefKind 464Private ReadOnly Property IFieldSymbol_RefCustomModifiers As ImmutableArray(Of CustomModifier) Implements IFieldSymbol.RefCustomModifiers 470Private ReadOnly Property IFieldSymbol_Type As ITypeSymbol Implements IFieldSymbol.Type 476Private ReadOnly Property IFieldSymbol_NullableAnnotation As NullableAnnotation Implements IFieldSymbol.NullableAnnotation 482Private ReadOnly Property IFieldSymbol_HasConstantValue As Boolean Implements IFieldSymbol.HasConstantValue 488Private ReadOnly Property IFieldSymbol_ConstantValue As Object Implements IFieldSymbol.ConstantValue 494Private ReadOnly Property IFieldSymbol_CustomModifiers As ImmutableArray(Of CustomModifier) Implements IFieldSymbol.CustomModifiers 500Private ReadOnly Property IFieldSymbol_OriginalDefinition As IFieldSymbol Implements IFieldSymbol.OriginalDefinition 506Private ReadOnly Property IFieldSymbol_CorrespondingTupleField As IFieldSymbol Implements IFieldSymbol.CorrespondingTupleField 512Private ReadOnly Property IFieldSymbol_HasExplicitTupleElementName As Boolean Implements IFieldSymbol.IsExplicitlyNamedTupleElement
Symbols\NamedTypeSymbol.vb (2)
1477Private ReadOnly Property INamedTypeSymbol_TupleElements As ImmutableArray(Of IFieldSymbol) Implements INamedTypeSymbol.TupleElements 1479Return StaticCast(Of IFieldSymbol).From(TupleElements)
Symbols\TypedConstant.vb (2)
80Dim field = TryCast(member, IFieldSymbol) 145Dim field = TryCast(member, IFieldSymbol)
VisualBasicExtensions.vb (2)
599Public Function AssociatedField(eventSymbol As IEventSymbol) As IFieldSymbol 954Public Function GetDeclaredSymbol(semanticModel As SemanticModel, declarationSyntax As EnumMemberDeclarationSyntax, Optional cancellationToken As CancellationToken = Nothing) As IFieldSymbol
Microsoft.CodeAnalysis.VisualBasic.CodeStyle (2)
src\roslyn\src\Analyzers\VisualBasic\Analyzers\UseAutoProperty\VisualBasicUseAutoPropertyAnalyzer.vb (2)
42ineligibleFieldUsageIfOutsideProperty As ConcurrentDictionary(Of IFieldSymbol, ConcurrentSet(Of SyntaxNode)), 142Protected Overrides Sub AddAccessedFields(semanticModel As SemanticModel, accessor As IMethodSymbol, fieldNames As HashSet(Of String), result As HashSet(Of IFieldSymbol), cancellationToken As CancellationToken)
Microsoft.CodeAnalysis.VisualBasic.CodeStyle.Fixes (13)
src\roslyn\src\Analyzers\VisualBasic\CodeFixes\UseAutoProperty\VisualBasicUseAutoPropertyCodeFixProvider.vb (2)
54fieldSymbol As IFieldSymbol, 100Private Shared Async Function GetFieldInitializerAsync(fieldSymbol As IFieldSymbol, cancellationToken As CancellationToken) As Task(Of (equalsValue As EqualsValueSyntax, asNewClause As AsNewClauseSyntax, arrayBounds As ArgumentListSyntax))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\EnumMemberGenerator.vb (3)
15enumMember As IFieldSymbol, 32Public Function GenerateEnumMemberDeclaration(enumMember As IFieldSymbol, 52Private Function CreateEnumMemberValue(destinationOpt As EnumBlockSyntax, enumMember As IFieldSymbol) As ExpressionSyntax
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\FieldGenerator.vb (5)
45field As IFieldSymbol, 56field As IFieldSymbol, 70field As IFieldSymbol, 94Private Function GenerateEqualsValue(generator As SyntaxGenerator, field As IFieldSymbol) As EqualsValueSyntax 103Private Function GenerateModifiers(field As IFieldSymbol,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\VisualBasicCodeGenerationService.vb (2)
103field As IFieldSymbol, 554Public Overrides Function CreateFieldDeclaration(field As IFieldSymbol,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\LanguageServices\VisualBasicTypeInferenceService.TypeInferrer.vb (1)
615Return CreateResult(DirectCast(symbol, IFieldSymbol).Type)
Microsoft.CodeAnalysis.VisualBasic.Features (23)
Completion\CompletionProviders\EnumCompletionProvider.vb (1)
68If member.Kind = SymbolKind.Field AndAlso DirectCast(member, IFieldSymbol).IsConst AndAlso member.IsEditorBrowsable(options.MemberDisplayOptions.HideAdvancedMembers, syntaxContext.SemanticModel.Compilation) Then
EncapsulateField\VisualBasicEncapsulateFieldService.vb (5)
71Protected Overrides Async Function GetFieldsAsync(document As Document, span As TextSpan, cancellationToken As CancellationToken) As Task(Of ImmutableArray(Of IFieldSymbol)) 89OfType(Of IFieldSymbol)(). 107Protected Overrides Function GenerateFieldAndPropertyNames(field As IFieldSymbol) As (fieldName As String, propertyName As String) 123Private Shared Function IsShadows(field As IFieldSymbol) As Boolean 127Private Shared Function MakeUnique(propertyName As String, field As IFieldSymbol) As String
GenerateConstructors\VisualBasicGenerateConstructorsCodeRefactoringProvider.vb (1)
45Protected Overrides Function TryMapToWritableInstanceField([property] As IPropertySymbol, cancellationToken As CancellationToken) As IFieldSymbol
LanguageServices\VisualBasicSymbolDisplayService.SymbolDescriptionBuilder.vb (3)
81ElseIf TypeOf symbol Is IFieldSymbol Then 82Return GetInitializerSourcePartsAsync(DirectCast(symbol, IFieldSymbol)) 140Private Overloads Async Function GetInitializerSourcePartsAsync(symbol As IFieldSymbol) As Task(Of ImmutableArray(Of SymbolDisplayPart))
QuickInfo\VisualBasicSemanticQuickInfoProvider.vb (2)
173ElseIf TypeOf symbol Is IFieldSymbol Then 174Return DirectCast(symbol, IFieldSymbol).Type
ReplacePropertyWithMethods\VisualBasicReplacePropertyWithMethods.vb (4)
30propertyBackingField As IFieldSymbol, 51propertyBackingField As IFieldSymbol, 83propertyBackingField As IFieldSymbol, 116propertyBackingField As IFieldSymbol,
SignatureHelp\AttributeSignatureHelpProvider.vb (3)
143Dim type = If(TypeOf namedParameter Is IFieldSymbol, 144DirectCast(namedParameter, IFieldSymbol).Type, 150If(TypeOf namedParameter Is IFieldSymbol, SymbolDisplayPartKind.FieldName, SymbolDisplayPartKind.PropertyName),
src\roslyn\src\Analyzers\VisualBasic\Analyzers\UseAutoProperty\VisualBasicUseAutoPropertyAnalyzer.vb (2)
42ineligibleFieldUsageIfOutsideProperty As ConcurrentDictionary(Of IFieldSymbol, ConcurrentSet(Of SyntaxNode)), 142Protected Overrides Sub AddAccessedFields(semanticModel As SemanticModel, accessor As IMethodSymbol, fieldNames As HashSet(Of String), result As HashSet(Of IFieldSymbol), cancellationToken As CancellationToken)
src\roslyn\src\Analyzers\VisualBasic\CodeFixes\UseAutoProperty\VisualBasicUseAutoPropertyCodeFixProvider.vb (2)
54fieldSymbol As IFieldSymbol, 100Private Shared Async Function GetFieldInitializerAsync(fieldSymbol As IFieldSymbol, cancellationToken As CancellationToken) As Task(Of (equalsValue As EqualsValueSyntax, asNewClause As AsNewClauseSyntax, arrayBounds As ArgumentListSyntax))
Microsoft.CodeAnalysis.VisualBasic.Workspaces (17)
Classification\SyntaxClassification\NameSyntaxClassifier.vb (2)
122Dim classification = GetClassificationForField(DirectCast(symbol, IFieldSymbol)) 196Private Shared Function GetClassificationForField(fieldSymbol As IFieldSymbol) As String
Recommendations\VisualBasicRecommendationServiceRunner.vb (2)
85Dim field = DirectCast(symbol, IFieldSymbol) 366Dim associatedSymbol = DirectCast(s, IFieldSymbol).AssociatedSymbol
Rename\VisualBasicRenameRewriterLanguageService.vb (1)
318Dim fieldSymbol = DirectCast(symbol, IFieldSymbol)
Simplification\Reducers\VisualBasicVariableDeclaratorReducer.vb (1)
148(TypeOf declaredSymbol IsNot ILocalSymbol AndAlso TypeOf declaredSymbol IsNot IFieldSymbol) Then
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\EnumMemberGenerator.vb (3)
15enumMember As IFieldSymbol, 32Public Function GenerateEnumMemberDeclaration(enumMember As IFieldSymbol, 52Private Function CreateEnumMemberValue(destinationOpt As EnumBlockSyntax, enumMember As IFieldSymbol) As ExpressionSyntax
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\FieldGenerator.vb (5)
45field As IFieldSymbol, 56field As IFieldSymbol, 70field As IFieldSymbol, 94Private Function GenerateEqualsValue(generator As SyntaxGenerator, field As IFieldSymbol) As EqualsValueSyntax 103Private Function GenerateModifiers(field As IFieldSymbol,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\VisualBasicCodeGenerationService.vb (2)
103field As IFieldSymbol, 554Public Overrides Function CreateFieldDeclaration(field As IFieldSymbol,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\LanguageServices\VisualBasicTypeInferenceService.TypeInferrer.vb (1)
615Return CreateResult(DirectCast(symbol, IFieldSymbol).Type)
Microsoft.CodeAnalysis.Workspaces (95)
Editing\DeclarationModifiers.cs (3)
65or IFieldSymbol 70var field = symbol as IFieldSymbol;
Editing\SyntaxGenerator.cs (3)
132public SyntaxNode FieldDeclaration(IFieldSymbol field) 143public SyntaxNode FieldDeclaration(IFieldSymbol field, SyntaxNode? initializer) 731return FieldDeclaration((IFieldSymbol)symbol);
FindSymbols\FindReferences\Finders\AbstractMemberScopedReferenceFinder.cs (1)
83if (current is IFieldSymbol field)
FindSymbols\FindReferences\Finders\EventSymbolReferenceFinder.cs (1)
27.OfType<IFieldSymbol>()
FindSymbols\FindReferences\Finders\FieldSymbolReferenceFinder.cs (5)
13internal sealed class FieldSymbolReferenceFinder : AbstractReferenceFinder<IFieldSymbol> 15protected override bool CanFind(IFieldSymbol symbol) 19IFieldSymbol symbol, 30IFieldSymbol symbol, 44IFieldSymbol symbol,
FindSymbols\FindReferences\Finders\PropertySymbolReferenceFinder.cs (1)
56if (member is IFieldSymbol field &&
Recommendations\AbstractRecommendationServiceRunner.cs (1)
540: [.. symbols.Where(s => s is not IFieldSymbol), .. namedType.TupleElements];
Rename\RenameUtilities.cs (1)
399if (symbol is IFieldSymbol { IsImplicitlyDeclared: true, AssociatedSymbol: IPropertySymbol associatedProperty })
Rename\SymbolicRenameLocations.ReferenceProcessing.cs (1)
52if (referencedSymbol.Kind == SymbolKind.Field && originalSymbol.Equals(((IFieldSymbol)referencedSymbol).AssociatedSymbol))
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\NamingStyles\Serialization\SymbolSpecification.cs (2)
514if (kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsReadOnly) 522if ((kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsConst) ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
67/// <item>Two <see cref="IFieldSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.FieldSymbolKey.cs (4)
9private sealed class FieldSymbolKey : AbstractSymbolKey<IFieldSymbol> 13public sealed override void Create(IFieldSymbol symbol, SymbolKeyWriter visitor) 20SymbolKeyReader reader, IFieldSymbol? contextualSymbol, out string? failureReason) 31using var result = GetMembersOfNamedType<IFieldSymbol>(containingTypeResolution, metadataName);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
347public override void VisitField(IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.TupleTypeSymbolKey.cs (2)
27foreach (var element in symbol.TupleElements) 41foreach (var element in symbol.TupleElements)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (1)
24.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
499var fieldSymbol = (IFieldSymbol)symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IPropertySymbolExtensions.cs (2)
14public static IFieldSymbol? GetBackingFieldIfAny(this IPropertySymbol property) 16.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (5)
323=> symbol is IFieldSymbol { ContainingType.IsTupleType: true }; 331IFieldSymbol fieldSymbol => !fieldSymbol.IsReadOnly && !fieldSymbol.IsConst, 337=> symbol is IFieldSymbol { IsRequired: true } or IPropertySymbol { IsRequired: true }; 342IFieldSymbol fieldSymbol => fieldSymbol.Type, 661IFieldSymbol fieldSymbol => fieldSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
46public override bool VisitField(IFieldSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (1)
703if (member is not IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (8)
121SymbolKind.Field => FieldsAreEquivalent((IFieldSymbol)x, (IFieldSymbol)y, equivalentTypesWithDifferingAssemblies), 152private bool FieldsAreEquivalent(IFieldSymbol x, IFieldSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies) 433var xElement = xElements[i]; 434var yElement = yElements[i]; 450var xElement = xElements[i]; 451var yElement = yElements[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
65SymbolKind.Field => CombineHashCodes((IFieldSymbol)x, currentHash), 92private int CombineHashCodes(IFieldSymbol x, int currentHash)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractCodeGenerationService.cs (9)
50public TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode 79public SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken) 124protected abstract TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, TCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 144public abstract SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, TCodeGenerationContextInfo info, CancellationToken cancellationToken); 346IFieldSymbol field => CreateFieldDeclaration(field, codeGenerationDestination, info, cancellationToken), 364IFieldSymbol field => AddField(currentDestination, field, info, availableIndices, cancellationToken), 375var field = members.OfType<IFieldSymbol>().FirstOrDefault(); 401public Task<Document> AddFieldAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractFlagsEnumGenerator.cs (17)
12internal abstract class AbstractFlagsEnumGenerator : IComparer<(IFieldSymbol field, ulong value)> 63var allFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 66var usedFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 73List<(IFieldSymbol field, ulong value)> allFieldsAndValues, 74List<(IFieldSymbol field, ulong value)> usedFieldsAndValues) 124var zeroField = GetZeroField(allFieldsAndValues); 137IFieldSymbol field, INamedTypeSymbol enumType, SpecialType underlyingSpecialType) 152private static IFieldSymbol? GetZeroField(List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 168List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 172foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 191foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 205int IComparer<(IFieldSymbol field, ulong value)>.Compare((IFieldSymbol field, ulong value) x, (IFieldSymbol field, ulong value) y)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationHelpers.cs (1)
158.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (3)
102public static IFieldSymbol CreateFieldSymbol( 589internal static IFieldSymbol CreateFieldSymbol( 590IFieldSymbol field,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerator.cs (1)
37public static Task<Document> AddFieldDeclarationAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\ICodeGenerationService.cs (3)
27SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken); 58TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 138Task<Document> AddFieldAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
18public ImmutableArray<IFieldSymbol> TupleElements { get; protected set; }
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldInfo.cs (6)
13private static readonly ConditionalWeakTable<IFieldSymbol, CodeGenerationFieldInfo> s_fieldToInfoMap = new(); 30IFieldSymbol field, 39private static CodeGenerationFieldInfo GetInfo(IFieldSymbol field) 48public static bool GetIsUnsafe(IFieldSymbol field) 54public static bool GetIsWithEvents(IFieldSymbol field) 60public static SyntaxNode GetInitializer(IFieldSymbol field)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldSymbol.cs (2)
34public new IFieldSymbol OriginalDefinition 42public IFieldSymbol CorrespondingTupleField => null;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
83IFieldSymbol field => field.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
526.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\InitializeParameter\InitializeParameterHelpersCore.cs (1)
152if (memberReference.Member is IFieldSymbol or IPropertySymbol)
Microsoft.DotNet.ApiCompatibility (8)
Mapping\TypeMapper.cs (1)
158member is IFieldSymbol &&
Rules\CannotAddMemberToInterface.cs (1)
28if (right is IFieldSymbol)
Rules\EnumsMustMatch.cs (6)
56Dictionary<string, IFieldSymbol> leftMembers = left.GetMembers() 58.Select(a => (IFieldSymbol)a) 60Dictionary<string, IFieldSymbol> rightMembers = right.GetMembers() 62.Select(a => (IFieldSymbol)a) 67foreach (KeyValuePair<string, IFieldSymbol> lEntry in leftMembers) 69if (!rightMembers.TryGetValue(lEntry.Key, out IFieldSymbol? rField))
Microsoft.Extensions.Logging.Generators (2)
LoggerMessageGenerator.Parser.cs (2)
698foreach (IFieldSymbol fs in currentClassType.GetMembers().OfType<IFieldSymbol>())
Microsoft.Gen.ComplianceReports (2)
Parser.cs (2)
147foreach (var field in typeSymbol.GetMembers().OfType<IFieldSymbol>())
Microsoft.Gen.Logging (2)
Parsing\Parser.cs (1)
652IFieldSymbol fs => fs.Type,
Parsing\Parser.Records.cs (1)
66IFieldSymbol field => new(field.Name, field.Type, Property: null),
Microsoft.Gen.MetadataExtractor (5)
src\Generators\Microsoft.Gen.ComplianceReports\Parser.cs (2)
147foreach (var field in typeSymbol.GetMembers().OfType<IFieldSymbol>())
src\Generators\Microsoft.Gen.Metrics\Parser.cs (3)
387if (symbol is not IFieldSymbol fieldSymbol || 719var fieldSymbol = member as IFieldSymbol;
Microsoft.Gen.Metrics (3)
Parser.cs (3)
387if (symbol is not IFieldSymbol fieldSymbol || 719var fieldSymbol = member as IFieldSymbol;
Microsoft.Gen.MetricsReports (3)
src\Generators\Microsoft.Gen.Metrics\Parser.cs (3)
387if (symbol is not IFieldSymbol fieldSymbol || 719var fieldSymbol = member as IFieldSymbol;
Microsoft.Interop.LibraryImportGenerator (1)
Analyzers\NativeMarshallingAttributeAnalyzer.cs (1)
171IFieldSymbol field => field.Type,
Microsoft.Interop.SourceGeneration (2)
TypeSymbolExtensions.cs (2)
156foreach (IFieldSymbol field in type.GetMembers().OfType<IFieldSymbol>())
Microsoft.Maui.Controls.BindingSourceGen (3)
BindingSourceGenerator.cs (2)
267 IFieldSymbol fieldSymbol => !fieldSymbol.IsReadOnly, 275 IFieldSymbol fieldSymbol => fieldSymbol.Type.IsTypeNullable(enabledNullable),
ISymbolExtensions.cs (1)
16 IFieldSymbol _ => AccessorKind.Field,
Microsoft.ML.InternalCodeAnalyzer (5)
ContractsCheckAnalyzer.cs (2)
152var field = context.SemanticModel.GetSymbolInfo(access).Symbol as IFieldSymbol;
ContractsCheckNameofFixProvider.cs (1)
139foreach (IFieldSymbol s in type.GetMembers().Where(p => p.Kind == SymbolKind.Field))
InstanceInitializerAnalyzer.cs (2)
42var symbol = (IFieldSymbol)context.Symbol;
Roslyn.Diagnostics.Analyzers (111)
AbstractDoNotCopyValue.cs (5)
275public override void VisitField(IFieldSymbol symbol) 711foreach (var field in operation.InitializedFields) 1398var field = ((IFieldReferenceOperation)operation).Field; 1474private void CheckFieldSymbolInUnsupportedContext(IOperation operation, IFieldSymbol? field) 1521CheckFieldSymbolInUnsupportedContext(operation, (IFieldSymbol)symbol);
AbstractExposeMemberForTesting`1.cs (6)
67case IFieldSymbol: 112var accessorField = testAccessorType.GetMembers().OfType<IFieldSymbol>().FirstOrDefault(field => field.Type.Equals(containingType)); 122case IFieldSymbol fieldSymbol: 170private SyntaxNode GenerateTestAccessorForField(IFieldSymbol fieldSymbol, string memberName, SyntaxGenerator syntaxGenerator, IFieldSymbol accessorField)
DefaultableTypeShouldHaveDefaultableFieldsAnalyzer.cs (3)
58AnalyzeField(context, (IFieldSymbol)context.Symbol, nonDefaultableAttribute, knownNonDefaultableTypes); 72AnalyzeField(context, (IFieldSymbol)member, nonDefaultableAttribute, knownNonDefaultableTypes); 76private static void AnalyzeField(SymbolAnalysisContext originalContext, IFieldSymbol field, INamedTypeSymbol nonDefaultableAttribute, ConcurrentDictionary<ITypeSymbol, bool> knownNonDefaultableTypes)
ImportingConstructorShouldBeObsoleteCodeFixProvider.cs (1)
210mefConstructionType.GetMembers("ImportingConstructorMessage").OfType<IFieldSymbol>().Any())
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
277SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context), 315SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context),
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.FieldMetricData.cs (2)
15IFieldSymbol symbol, 27internal static FieldMetricData Compute(IFieldSymbol field, CodeMetricsAnalysisContext context)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.NamedTypeMetricData.cs (7)
73ImmutableHashSet<IFieldSymbol> filteredFieldsForComplexity = getFilteredFieldsForComplexity(); 82filteredFieldsForComplexity.Contains((IFieldSymbol)child.Symbol)) 109ImmutableHashSet<IFieldSymbol> getFilteredFieldsForComplexity() 111ImmutableHashSet<IFieldSymbol>.Builder? builder = null; 121builder ??= ImmutableHashSet.CreateBuilder<IFieldSymbol>(); 122builder.Add((IFieldSymbol)fieldData.Symbol); 126return builder?.ToImmutable() ?? ImmutableHashSet<IFieldSymbol>.Empty;
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\ComputationalComplexityMetrics.cs (1)
152foreach (var field in ((IFieldInitializerOperation)operation).InitializedFields)
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\roslyn\src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (5)
43public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 49if (member is IFieldSymbol associated && 232IFieldSymbol field => field.IsReadOnly, 363IFieldSymbol field => field.IsConst, 374IFieldSymbol field => field.IsReadOnly,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\NamingStyles\Serialization\SymbolSpecification.cs (2)
514if (kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsReadOnly) 522if ((kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsConst) ||
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
67/// <item>Two <see cref="IFieldSymbol"/>s are the "same" if they have
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.FieldSymbolKey.cs (4)
9private sealed class FieldSymbolKey : AbstractSymbolKey<IFieldSymbol> 13public sealed override void Create(IFieldSymbol symbol, SymbolKeyWriter visitor) 20SymbolKeyReader reader, IFieldSymbol? contextualSymbol, out string? failureReason) 31using var result = GetMembersOfNamedType<IFieldSymbol>(containingTypeResolution, metadataName);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
347public override void VisitField(IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.TupleTypeSymbolKey.cs (2)
27foreach (var element in symbol.TupleElements) 41foreach (var element in symbol.TupleElements)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (1)
24.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\INamedTypeSymbolExtensions.cs (2)
499var fieldSymbol = (IFieldSymbol)symbol;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\IPropertySymbolExtensions.cs (2)
14public static IFieldSymbol? GetBackingFieldIfAny(this IPropertySymbol property) 16.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.cs (5)
323=> symbol is IFieldSymbol { ContainingType.IsTupleType: true }; 331IFieldSymbol fieldSymbol => !fieldSymbol.IsReadOnly && !fieldSymbol.IsConst, 337=> symbol is IFieldSymbol { IsRequired: true } or IPropertySymbol { IsRequired: true }; 342IFieldSymbol fieldSymbol => fieldSymbol.Type, 661IFieldSymbol fieldSymbol => fieldSymbol.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
46public override bool VisitField(IFieldSymbol symbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\ITypeSymbolExtensions.cs (1)
703if (member is not IFieldSymbol fieldSymbol)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.EquivalenceVisitor.cs (8)
121SymbolKind.Field => FieldsAreEquivalent((IFieldSymbol)x, (IFieldSymbol)y, equivalentTypesWithDifferingAssemblies), 152private bool FieldsAreEquivalent(IFieldSymbol x, IFieldSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies) 433var xElement = xElements[i]; 434var yElement = yElements[i]; 450var xElement = xElements[i]; 451var yElement = yElements[i];
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Extensions\Symbols\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
65SymbolKind.Field => CombineHashCodes((IFieldSymbol)x, currentHash), 92private int CombineHashCodes(IFieldSymbol x, int currentHash)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractCodeGenerationService.cs (9)
50public TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode 79public SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken) 124protected abstract TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, TCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 144public abstract SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, TCodeGenerationContextInfo info, CancellationToken cancellationToken); 346IFieldSymbol field => CreateFieldDeclaration(field, codeGenerationDestination, info, cancellationToken), 364IFieldSymbol field => AddField(currentDestination, field, info, availableIndices, cancellationToken), 375var field = members.OfType<IFieldSymbol>().FirstOrDefault(); 401public Task<Document> AddFieldAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractFlagsEnumGenerator.cs (17)
12internal abstract class AbstractFlagsEnumGenerator : IComparer<(IFieldSymbol field, ulong value)> 63var allFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 66var usedFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 73List<(IFieldSymbol field, ulong value)> allFieldsAndValues, 74List<(IFieldSymbol field, ulong value)> usedFieldsAndValues) 124var zeroField = GetZeroField(allFieldsAndValues); 137IFieldSymbol field, INamedTypeSymbol enumType, SpecialType underlyingSpecialType) 152private static IFieldSymbol? GetZeroField(List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 168List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 172foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 191foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 205int IComparer<(IFieldSymbol field, ulong value)>.Compare((IFieldSymbol field, ulong value) x, (IFieldSymbol field, ulong value) y)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationHelpers.cs (1)
158.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (3)
102public static IFieldSymbol CreateFieldSymbol( 589internal static IFieldSymbol CreateFieldSymbol( 590IFieldSymbol field,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerator.cs (1)
37public static Task<Document> AddFieldDeclarationAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\ICodeGenerationService.cs (3)
27SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CodeGenerationContextInfo info, CancellationToken cancellationToken); 58TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CodeGenerationContextInfo info, CancellationToken cancellationToken) where TDeclarationNode : SyntaxNode; 138Task<Document> AddFieldAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken);
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
18public ImmutableArray<IFieldSymbol> TupleElements { get; protected set; }
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldInfo.cs (6)
13private static readonly ConditionalWeakTable<IFieldSymbol, CodeGenerationFieldInfo> s_fieldToInfoMap = new(); 30IFieldSymbol field, 39private static CodeGenerationFieldInfo GetInfo(IFieldSymbol field) 48public static bool GetIsUnsafe(IFieldSymbol field) 54public static bool GetIsWithEvents(IFieldSymbol field) 60public static SyntaxNode GetInitializer(IFieldSymbol field)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldSymbol.cs (2)
34public new IFieldSymbol OriginalDefinition 42public IFieldSymbol CorrespondingTupleField => null;
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
83IFieldSymbol field => field.Type,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
526.OfType<IFieldSymbol>()
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\InitializeParameter\InitializeParameterHelpersCore.cs (1)
152if (memberReference.Member is IFieldSymbol or IPropertySymbol)
Roslyn.Diagnostics.CSharp.Analyzers (17)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
372if (exprSymbol is not IFieldSymbol { IsConst: true })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (1)
735if (castedSymbol is not IFieldSymbol and not ILocalSymbol and not IParameterSymbol and not IParameterSymbol { RefKind: RefKind.Ref })
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationHelpers.cs (1)
278if (symbol is IFieldSymbol
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationService.cs (2)
97protected override TDeclarationNode AddField<TDeclarationNode>(TDeclarationNode destination, IFieldSymbol field, CSharpCodeGenerationContextInfo info, IList<bool>? availableIndices, CancellationToken cancellationToken) 664public override SyntaxNode CreateFieldDeclaration(IFieldSymbol field, CodeGenerationDestination destination, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\EnumMemberGenerator.cs (3)
23internal static EnumDeclarationSyntax AddEnumMemberTo(EnumDeclarationSyntax destination, IFieldSymbol enumMember, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken) 53IFieldSymbol enumMember, 73EnumDeclarationSyntax? destination, IFieldSymbol enumMember)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\FieldGenerator.cs (5)
55IFieldSymbol field, 71IFieldSymbol field, 87IFieldSymbol field, CSharpCodeGenerationContextInfo info, CancellationToken cancellationToken) 110private static EqualsValueClauseSyntax? GenerateEqualsValue(IFieldSymbol field) 121private static SyntaxTokenList GenerateModifiers(IFieldSymbol field, CSharpCodeGenerationContextInfo info)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\NamedTypeGenerator.cs (1)
124members = members.WhereAsArray(m => m is not IPropertySymbol and not IFieldSymbol || !primaryConstructor.Parameters.Any(static (p, m) => p.Name == m.Name, m));
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeSymbolExtensions.TypeSyntaxGeneratorVisitor.cs (1)
248foreach (var element in symbol.TupleElements)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (1)
1558case IFieldSymbol field:
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\InitializeParameter\InitializeParameterHelpers.cs (1)
76else if (fieldOrProperty is IFieldSymbol field)
Roslyn.Diagnostics.VisualBasic.Analyzers (11)
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\EnumMemberGenerator.vb (3)
15enumMember As IFieldSymbol, 32Public Function GenerateEnumMemberDeclaration(enumMember As IFieldSymbol, 52Private Function CreateEnumMemberValue(destinationOpt As EnumBlockSyntax, enumMember As IFieldSymbol) As ExpressionSyntax
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\FieldGenerator.vb (5)
45field As IFieldSymbol, 56field As IFieldSymbol, 70field As IFieldSymbol, 94Private Function GenerateEqualsValue(generator As SyntaxGenerator, field As IFieldSymbol) As EqualsValueSyntax 103Private Function GenerateModifiers(field As IFieldSymbol,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\VisualBasicCodeGenerationService.vb (2)
103field As IFieldSymbol, 554Public Overrides Function CreateFieldDeclaration(field As IFieldSymbol,
src\roslyn\src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\LanguageServices\VisualBasicTypeInferenceService.TypeInferrer.vb (1)
615Return CreateResult(DirectCast(symbol, IFieldSymbol).Type)
System.Text.Json.SourceGeneration (10)
Helpers\RoslynExtensions.cs (5)
215Debug.Assert(member is IFieldSymbol or IPropertySymbol); 216return member is IFieldSymbol fs ? fs.Type : ((IPropertySymbol)member).Type; 221Debug.Assert(member is IFieldSymbol or IPropertySymbol); 222Debug.Assert(otherMember is IFieldSymbol or IPropertySymbol); 282public static void ResolveNullabilityAnnotations(this IFieldSymbol field, out bool isGetterNonNullable, out bool isSetterNonNullable)
JsonSourceGenerator.Parser.cs (5)
1078foreach (IFieldSymbol fieldInfo in members.OfType<IFieldSymbol>()) 1278Debug.Assert(memberInfo is IFieldSymbol or IPropertySymbol); 1435Debug.Assert(memberInfo is IFieldSymbol or IPropertySymbol); 1613case IFieldSymbol fieldInfo:
System.Text.RegularExpressions.Generator (1)
UpgradeToGeneratedRegexCodeFixer.cs (1)
401if (argument.Value is ILiteralOperation or IFieldReferenceOperation { Member: IFieldSymbol { IsConst: true } })
System.Windows.Forms.PrivateSourceGenerators (1)
System\Windows\Forms\SourceGenerators\EnumValidationInfo.cs (1)
20if (member is IFieldSymbol