2 implementations of IFieldSymbol
Microsoft.CodeAnalysis.CSharp (1)
Symbols\PublicModel\FieldSymbol.cs (1)
13internal sealed class FieldSymbol : Symbol, IFieldSymbol
Microsoft.CodeAnalysis.VisualBasic (1)
Symbols\FieldSymbol.vb (1)
21Implements IFieldSymbol, IFieldSymbolInternal
1523 references to IFieldSymbol
ILLink.RoslynAnalyzer (31)
DataFlow\DynamicallyAccessedMembersBinder.cs (6)
62 foreach (var f in typeDefinition.ApplyIncludeInherited (t => t.GetFieldsOnTypeHierarchy (filter: null, bindingFlags: BindingFlags.NonPublic | declaredOnlyFlags), withInherited)) 67 foreach (var f in typeDefinition.GetFieldsOnTypeHierarchy (filter: null, bindingFlags: BindingFlags.Public | declaredOnlyFlags)) 189 public static IEnumerable<IFieldSymbol> GetFieldsOnTypeHierarchy (this ITypeSymbol thisType, Func<IFieldSymbol, bool>? filter, BindingFlags? bindingFlags = BindingFlags.Default) 194 foreach (var field in type.GetMembers ().OfType<IFieldSymbol> ()) {
DataFlow\LocalDataFlowVisitor.cs (4)
103 Debug.Assert (OwningSymbol is IMethodSymbol or IFieldSymbol or IPropertySymbol, 131 public abstract TValue GetFieldTargetValue (IFieldSymbol field, IFieldReferenceOperation fieldReferenceOperation, in TContext context); 204 Debug.Assert (local.ContainingSymbol is IMethodSymbol or IFieldSymbol, // backing field for property initializers 715 Debug.Assert (operation.Symbol.ContainingSymbol is IMethodSymbol or IFieldSymbol);
DataFlow\MethodBodyValue.cs (1)
23 Debug.Assert (owningSymbol is (IMethodSymbol or IFieldSymbol or IPropertySymbol));
DynamicallyAccessedMembersAnalyzer.cs (1)
153 if (member is IFieldSymbol field && field.GetDynamicallyAccessedMemberTypes () != DynamicallyAccessedMemberTypes.None && !field.Type.IsTypeInterestingForDataflow (isByRef: field.RefKind is not RefKind.None))
ISymbolExtensions.cs (1)
139 case IFieldSymbol fieldSymbol:
RequiresISymbolExtensions.cs (1)
65 if (member is IFieldSymbol field && !field.IsStatic) {
TrimAnalysis\FieldValue.cs (2)
14 public FieldValue (IFieldSymbol fieldSymbol) 21 public readonly IFieldSymbol FieldSymbol;
TrimAnalysis\FlowAnnotations.cs (3)
41 IFieldSymbol field => ShouldWarnWhenAccessedForReflection (field), 105 static bool ShouldWarnWhenAccessedForReflection (IFieldSymbol field) 110 internal static DynamicallyAccessedMemberTypes GetFieldAnnotation (IFieldSymbol field)
TrimAnalysis\GenericArgumentDataFlow.cs (2)
30 public static void ProcessGenericArgumentDataFlow (Location location, IFieldSymbol field, Action<Diagnostic> reportDiagnostic) 93 public static bool RequiresGenericArgumentDataFlow (IFieldSymbol field)
TrimAnalysis\ReflectionAccessAnalyzer.cs (4)
35 case IFieldSymbol field: 64 foreach (var field in typeSymbol.GetFieldsOnTypeHierarchy (f => f.Name == name, bindingFlags)) 110 Debug.Assert (member is IMethodSymbol or IFieldSymbol); 184 void GetDiagnosticsForField (Location location, IFieldSymbol fieldSymbol)
TrimAnalysis\TrimAnalysisFieldAccessPattern.cs (2)
15 public IFieldSymbol Field { get; init; } 21 IFieldSymbol field,
TrimAnalysis\TrimAnalysisGenericInstantiationPattern.cs (1)
61 case IFieldSymbol field:
TrimAnalysis\TrimAnalysisVisitor.cs (3)
157 var field = fieldRef.Field; 218 public override MultiValue GetFieldTargetValue (IFieldSymbol field, IFieldReferenceOperation fieldReferenceOperation, in FeatureContext featureContext) 417 private void ProcessGenericArgumentDataFlow (IFieldSymbol field, IOperation operation, in FeatureContext featureContext)
Metrics (20)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
279SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context), 317SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context),
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.FieldMetricData.cs (2)
17IFieldSymbol symbol, 29internal static FieldMetricData Compute(IFieldSymbol field, CodeMetricsAnalysisContext context)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.NamedTypeMetricData.cs (7)
75ImmutableHashSet<IFieldSymbol> filteredFieldsForComplexity = getFilteredFieldsForComplexity(); 84filteredFieldsForComplexity.Contains((IFieldSymbol)child.Symbol)) 111ImmutableHashSet<IFieldSymbol> getFilteredFieldsForComplexity() 113ImmutableHashSet<IFieldSymbol>.Builder? builder = null; 123builder ??= ImmutableHashSet.CreateBuilder<IFieldSymbol>(); 124builder.Add((IFieldSymbol)fieldData.Symbol); 128return builder?.ToImmutable() ?? ImmutableHashSet<IFieldSymbol>.Empty;
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\ComputationalComplexityMetrics.cs (1)
155foreach (var field in ((IFieldInitializerOperation)operation).InitializedFields)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (7)
112public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 118if (member is IFieldSymbol associated && 142if (symbol is IFieldSymbol fieldSymbol 604IFieldSymbol fieldSymbol => fieldSymbol.Type, 618IFieldSymbol field => field.IsReadOnly, 847IFieldSymbol field => field.IsConst, 858IFieldSymbol field => field.IsReadOnly,
Metrics.Legacy (20)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
279SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context), 317SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context),
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.FieldMetricData.cs (2)
17IFieldSymbol symbol, 29internal static FieldMetricData Compute(IFieldSymbol field, CodeMetricsAnalysisContext context)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.NamedTypeMetricData.cs (7)
75ImmutableHashSet<IFieldSymbol> filteredFieldsForComplexity = getFilteredFieldsForComplexity(); 84filteredFieldsForComplexity.Contains((IFieldSymbol)child.Symbol)) 111ImmutableHashSet<IFieldSymbol> getFilteredFieldsForComplexity() 113ImmutableHashSet<IFieldSymbol>.Builder? builder = null; 123builder ??= ImmutableHashSet.CreateBuilder<IFieldSymbol>(); 124builder.Add((IFieldSymbol)fieldData.Symbol); 128return builder?.ToImmutable() ?? ImmutableHashSet<IFieldSymbol>.Empty;
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\ComputationalComplexityMetrics.cs (1)
155foreach (var field in ((IFieldInitializerOperation)operation).InitializedFields)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (7)
112public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 118if (member is IFieldSymbol associated && 142if (symbol is IFieldSymbol fieldSymbol 604IFieldSymbol fieldSymbol => fieldSymbol.Type, 618IFieldSymbol field => field.IsReadOnly, 847IFieldSymbol field => field.IsConst, 858IFieldSymbol field => field.IsReadOnly,
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)
1181Debug.Assert(((IFieldSymbol)symbol).AssociatedSymbol == null);
DocumentationCommentId.cs (2)
357public override void VisitField(IFieldSymbol symbol) 429public override bool VisitField(IFieldSymbol symbol)
Generated\Operations.Generated.cs (6)
936IFieldSymbol Field { get; } 2352ImmutableArray<IFieldSymbol> InitializedFields { get; } 5345internal FieldReferenceOperation(IFieldSymbol field, bool isDeclaration, IOperation? instance, SemanticModel? semanticModel, SyntaxNode syntax, ITypeSymbol? type, ConstantValue? constantValue, bool isImplicit) 5353public IFieldSymbol Field { get; } 7510internal FieldInitializerOperation(ImmutableArray<IFieldSymbol> initializedFields, ImmutableArray<ILocalSymbol> locals, IOperation value, SemanticModel? semanticModel, SyntaxNode syntax, bool isImplicit) 7515public ImmutableArray<IFieldSymbol> InitializedFields { get; }
Operations\ControlFlowGraphBuilder.cs (1)
7218foreach (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)
106new IFieldSymbol OriginalDefinition { get; } 117IFieldSymbol? CorrespondingTupleField { get; }
Symbols\INamedTypeSymbol.cs (1)
186ImmutableArray<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 (47)
MetaAnalyzers\DiagnosticDescriptorCreationAnalyzer.cs (15)
26using PooledLocalizabeStringsConcurrentDictionary = PooledConcurrentDictionary<INamedTypeSymbol, PooledConcurrentSet<(IFieldSymbol field, IArgumentOperation argument)>>; 28using PooledFieldToResourceNameAndFileNameConcurrentDictionary = PooledConcurrentDictionary<IFieldSymbol, (string nameOfResource, string resourceFileName)>; 29using PooledFieldToCustomTagsConcurrentDictionary = PooledConcurrentDictionary<IFieldSymbol, ImmutableArray<string>>; 293foreach (var field in fieldInitializer.InitializedFields) 331var localsToDescriptorsMap = PooledConcurrentDictionary<ILocalSymbol, PooledConcurrentSet<IFieldSymbol>>.GetInstance(SymbolEqualityComparer.Default); 333var fieldsUsedForCompilationEndReportDiagnostic = PooledConcurrentSet<IFieldSymbol>.GetInstance(SymbolEqualityComparer.Default); 392static void AddToLocalsToDescriptorsMap(ILocalSymbol local, IFieldSymbol field, PooledConcurrentDictionary<ILocalSymbol, PooledConcurrentSet<IFieldSymbol>> localsToDescriptorsMap) 397var set = PooledConcurrentSet<IFieldSymbol>.GetInstance(SymbolEqualityComparer.Default); 416foreach (var field in fields) 421foreach (var field in fieldsUsedForCompilationEndReportDiagnostic) 432void AnalyzeField(IFieldSymbol field) 832var builder = localizableStringsMap.GetOrAdd(containingType, _ => PooledConcurrentSet<(IFieldSymbol, IArgumentOperation)>.GetInstance()); 1098foreach (var field in fieldInitializerOperation.InitializedFields) 1196var analyzer = ((IFieldSymbol)operationAnalysisContext.ContainingSymbol).ContainingType.OriginalDefinition;
MetaAnalyzers\ReportDiagnosticAnalyzer.cs (12)
118private ImmutableDictionary<INamedTypeSymbol, ImmutableArray<IFieldSymbol>> _supportedDescriptorFieldsMap; 126_supportedDescriptorFieldsMap = ImmutableDictionary<INamedTypeSymbol, ImmutableArray<IFieldSymbol>>.Empty; 137ImmutableArray<IFieldSymbol> descriptorFields = GetSupportedDescriptors(symbolContext.Compilation, (INamedTypeSymbol)symbolContext.Symbol, symbolContext.CancellationToken); 144private ImmutableArray<IFieldSymbol> GetSupportedDescriptors(Compilation compilation, INamedTypeSymbol analyzer, CancellationToken cancellationToken) 146if (_supportedDescriptorFieldsMap.TryGetValue(analyzer, out ImmutableArray<IFieldSymbol> descriptorFields)) 178private ImmutableArray<IFieldSymbol> GetReferencedDescriptorFields(SyntaxNode syntax, SemanticModel semanticModel, CancellationToken cancellationToken) 180ImmutableArray<IFieldSymbol>.Builder builder = ImmutableArray.CreateBuilder<IFieldSymbol>(); 186var field = (IFieldSymbol)symbol; 189builder.Add((IFieldSymbol)symbol); 240ImmutableArray<IFieldSymbol> descriptorFields = GetReferencedDescriptorFields(diagnosticInitializer, semanticModel, symbolContext.CancellationToken);
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
279SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context), 317SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context),
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.FieldMetricData.cs (2)
17IFieldSymbol symbol, 29internal static FieldMetricData Compute(IFieldSymbol field, CodeMetricsAnalysisContext context)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.NamedTypeMetricData.cs (7)
75ImmutableHashSet<IFieldSymbol> filteredFieldsForComplexity = getFilteredFieldsForComplexity(); 84filteredFieldsForComplexity.Contains((IFieldSymbol)child.Symbol)) 111ImmutableHashSet<IFieldSymbol> getFilteredFieldsForComplexity() 113ImmutableHashSet<IFieldSymbol>.Builder? builder = null; 123builder ??= ImmutableHashSet.CreateBuilder<IFieldSymbol>(); 124builder.Add((IFieldSymbol)fieldData.Symbol); 128return builder?.ToImmutable() ?? ImmutableHashSet<IFieldSymbol>.Empty;
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\ComputationalComplexityMetrics.cs (1)
155foreach (var field in ((IFieldInitializerOperation)operation).InitializedFields)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (7)
112public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 118if (member is IFieldSymbol associated && 142if (symbol is IFieldSymbol fieldSymbol 604IFieldSymbol fieldSymbol => fieldSymbol.Type, 618IFieldSymbol field => field.IsReadOnly, 847IFieldSymbol field => field.IsConst, 858IFieldSymbol field => field.IsReadOnly,
Microsoft.CodeAnalysis.AnalyzerUtilities (39)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
279SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context), 317SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context),
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.FieldMetricData.cs (2)
17IFieldSymbol symbol, 29internal static FieldMetricData Compute(IFieldSymbol field, CodeMetricsAnalysisContext context)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.NamedTypeMetricData.cs (7)
75ImmutableHashSet<IFieldSymbol> filteredFieldsForComplexity = getFilteredFieldsForComplexity(); 84filteredFieldsForComplexity.Contains((IFieldSymbol)child.Symbol)) 111ImmutableHashSet<IFieldSymbol> getFilteredFieldsForComplexity() 113ImmutableHashSet<IFieldSymbol>.Builder? builder = null; 123builder ??= ImmutableHashSet.CreateBuilder<IFieldSymbol>(); 124builder.Add((IFieldSymbol)fieldData.Symbol); 128return builder?.ToImmutable() ?? ImmutableHashSet<IFieldSymbol>.Empty;
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\ComputationalComplexityMetrics.cs (1)
155foreach (var field in ((IFieldInitializerOperation)operation).InitializedFields)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (7)
112public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 118if (member is IFieldSymbol associated && 142if (symbol is IFieldSymbol fieldSymbol 604IFieldSymbol fieldSymbol => fieldSymbol.Type, 618IFieldSymbol field => field.IsReadOnly, 847IFieldSymbol field => field.IsConst, 858IFieldSymbol field => field.IsReadOnly,
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\DisposeAnalysis\DisposeAnalysis.DisposeDataFlowOperationVisitor.cs (3)
26private readonly Dictionary<IFieldSymbol, PointsToAbstractValue>? _trackedInstanceFieldLocations; 41_trackedInstanceFieldLocations = new Dictionary<IFieldSymbol, PointsToAbstractValue>(); 45public ImmutableDictionary<IFieldSymbol, PointsToAbstractValue> TrackedInstanceFieldPointsToMap
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\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Analysis\DisposeAnalysis\DisposeAnalysisResult.cs (2)
16ImmutableDictionary<IFieldSymbol, PointsToAnalysis.PointsToAbstractValue>? trackedInstanceFieldPointsToMap) 22public ImmutableDictionary<IFieldSymbol, PointsToAnalysis.PointsToAbstractValue>? TrackedInstanceFieldPointsToMap { get; }
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntity.cs (1)
191IFieldSymbol fieldSymbol => fieldSymbol.HasConstantValue,
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\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\AnalysisEntityFactory.cs (4)
281symbol = fieldReference.Field.ContainingType.GetUnderlyingValueTupleTypeOrThis()?.GetMembers(name).OfType<IFieldSymbol>().FirstOrDefault() 374foreach (var field in tupleType.TupleElements) 377var mappedValueTupleField = underlyingValueTupleType.GetMembers(tupleFieldName).OfType<IFieldSymbol>().FirstOrDefault();
Microsoft.CodeAnalysis.BannedApiAnalyzers (20)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
279SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context), 317SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context),
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.FieldMetricData.cs (2)
17IFieldSymbol symbol, 29internal static FieldMetricData Compute(IFieldSymbol field, CodeMetricsAnalysisContext context)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.NamedTypeMetricData.cs (7)
75ImmutableHashSet<IFieldSymbol> filteredFieldsForComplexity = getFilteredFieldsForComplexity(); 84filteredFieldsForComplexity.Contains((IFieldSymbol)child.Symbol)) 111ImmutableHashSet<IFieldSymbol> getFilteredFieldsForComplexity() 113ImmutableHashSet<IFieldSymbol>.Builder? builder = null; 123builder ??= ImmutableHashSet.CreateBuilder<IFieldSymbol>(); 124builder.Add((IFieldSymbol)fieldData.Symbol); 128return builder?.ToImmutable() ?? ImmutableHashSet<IFieldSymbol>.Empty;
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\ComputationalComplexityMetrics.cs (1)
155foreach (var field in ((IFieldInitializerOperation)operation).InitializedFields)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (7)
112public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 118if (member is IFieldSymbol associated && 142if (symbol is IFieldSymbol fieldSymbol 604IFieldSymbol fieldSymbol => fieldSymbol.Type, 618IFieldSymbol field => field.IsReadOnly, 847IFieldSymbol field => field.IsConst, 858IFieldSymbol field => field.IsReadOnly,
Microsoft.CodeAnalysis.CodeStyle (85)
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\Analyzers\Core\Analyzers\PopulateSwitch\PopulateSwitchStatementHelpers.cs (1)
158if (member is not IFieldSymbol fieldSymbol || fieldSymbol.Type.SpecialType != SpecialType.None)
src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (6)
373foreach (var field in initializer.InitializedFields) 532if (isInlineArray && member is IFieldSymbol { IsStatic: false }) 587if (member is IFieldSymbol { IsReadOnly: false, RefKind: RefKind.Ref }) 757case IPropertySymbol or IFieldSymbol: 785/// Backing fields have a non-null <see cref="IFieldSymbol.AssociatedSymbol"/>. 902return ((IFieldSymbol)memberSymbol).AssociatedSymbol == null;
src\Analyzers\Core\Analyzers\UseAutoProperty\AbstractUseAutoPropertyAnalyzer.cs (19)
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, 495protected IFieldSymbol? TryGetDirectlyAccessedFieldSymbol( 535ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> ineligibleFieldUsageIfOutsideProperty, 536ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldReads, 537ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites, 540using var _1 = PooledHashSet<IFieldSymbol>.GetInstance(out var reportedFields);
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\Analyzers\Core\Analyzers\UseAutoProperty\AnalysisResult.cs (1)
32IFieldSymbol Field,
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\Workspaces\Core\Portable\Editing\DeclarationModifiers.cs (3)
66IFieldSymbol or 71var field = symbol as IFieldSymbol;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\INamedTypeSymbolExtensions.cs (2)
485var fieldSymbol = (IFieldSymbol)symbol;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\IPropertySymbolExtensions.cs (2)
11public static IFieldSymbol? GetBackingFieldIfAny(this IPropertySymbol property) 13.OfType<IFieldSymbol>()
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ISymbolExtensions.cs (5)
320=> symbol is IFieldSymbol { ContainingType.IsTupleType: true }; 328IFieldSymbol fieldSymbol => !fieldSymbol.IsReadOnly && !fieldSymbol.IsConst, 334=> symbol is IFieldSymbol { IsRequired: true } or IPropertySymbol { IsRequired: true }; 339IFieldSymbol fieldSymbol => fieldSymbol.Type, 624IFieldSymbol fieldSymbol => fieldSymbol.Type,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
44public override bool VisitField(IFieldSymbol symbol)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ITypeSymbolExtensions.cs (1)
696if (member is not IFieldSymbol fieldSymbol)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\NamingStyles\Serialization\SymbolSpecification.cs (2)
519if (kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsReadOnly) 527if ((kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsConst) ||
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
65/// <item>Two <see cref="IFieldSymbol"/>s are the "same" if they have
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\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
347public override void VisitField(IFieldSymbol fieldSymbol)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.TupleTypeSymbolKey.cs (2)
27foreach (var element in symbol.TupleElements) 41foreach (var element in symbol.TupleElements)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (1)
23.OfType<IFieldSymbol>()
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\SymbolEquivalenceComparer.EquivalenceVisitor.cs (8)
119SymbolKind.Field => FieldsAreEquivalent((IFieldSymbol)x, (IFieldSymbol)y, equivalentTypesWithDifferingAssemblies), 150private bool FieldsAreEquivalent(IFieldSymbol x, IFieldSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies) 432var xElement = xElements[i]; 433var yElement = yElements[i]; 449var xElement = xElements[i]; 450var yElement = yElements[i];
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
62SymbolKind.Field => CombineHashCodes((IFieldSymbol)x, currentHash), 89private int CombineHashCodes(IFieldSymbol x, int currentHash)
Microsoft.CodeAnalysis.CodeStyle.Fixes (59)
src\Analyzers\Core\CodeFixes\GenerateConstructor\GenerateConstructorHelpers.cs (1)
355if (symbol is IFieldSymbol { IsConst: false } field)
src\Analyzers\Core\CodeFixes\GenerateVariable\AbstractGenerateVariableService.CodeAction.cs (1)
90var fieldSymbol = CodeGenerationSymbolFactory.CreateFieldSymbol(
src\Analyzers\Core\CodeFixes\GenerateVariable\AbstractGenerateVariableService.State.cs (1)
407=> symbol is IFieldSymbol field && field.IsReadOnly;
src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementHelpers.cs (4)
27.OfType<IFieldSymbol>() 43ImmutableArray<IFieldSymbol> fields, 65bool IsAssignedToFieldOrProperty(ImmutableArray<IFieldSymbol> fields, ImmutableArray<IPropertySymbol> properties, IParameterSymbol parameter) 68bool IsAssignedToField(IFieldSymbol field, IParameterSymbol parameter)
src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementInterfaceGenerator_DisposePattern.cs (3)
120IFieldSymbol disposedValueField) 138IFieldSymbol disposedValueField) 233private static async Task<IFieldSymbol> CreateDisposedValueFieldAsync(
src\Analyzers\Core\CodeFixes\MakeFieldReadonly\AbstractMakeFieldReadonlyCodeFixProvider.cs (2)
79var symbol = (IFieldSymbol?)model.GetDeclaredSymbol(declarator, cancellationToken);
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\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractFlagsEnumGenerator.cs (17)
13internal abstract class AbstractFlagsEnumGenerator : IComparer<(IFieldSymbol field, ulong value)> 64var allFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 67var usedFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 74List<(IFieldSymbol field, ulong value)> allFieldsAndValues, 75List<(IFieldSymbol field, ulong value)> usedFieldsAndValues) 125var zeroField = GetZeroField(allFieldsAndValues); 138IFieldSymbol field, INamedTypeSymbol enumType, SpecialType underlyingSpecialType) 153private static IFieldSymbol? GetZeroField(List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 169List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 173foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 192foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 206int IComparer<(IFieldSymbol field, ulong value)>.Compare((IFieldSymbol field, ulong value) x, (IFieldSymbol field, ulong value) y)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationHelpers.cs (1)
158.OfType<IFieldSymbol>()
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (3)
107public static IFieldSymbol CreateFieldSymbol( 594internal static IFieldSymbol CreateFieldSymbol( 595IFieldSymbol field,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerator.cs (1)
36public static Task<Document> AddFieldDeclarationAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken)
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\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
23public ImmutableArray<IFieldSymbol> TupleElements { get; protected set; }
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\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldSymbol.cs (3)
25object constantValue) : CodeGenerationSymbol(containingType?.ContainingAssembly, containingType, attributes, accessibility, modifiers, name), IFieldSymbol 39public new IFieldSymbol OriginalDefinition 47public IFieldSymbol CorrespondingTupleField => null;
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
89IFieldSymbol field => field.Type,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
506.OfType<IFieldSymbol>()
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)
597case IFieldSymbol field: 3003public abstract IFieldSymbol GetDeclaredSymbol(EnumMemberDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken));
Compilation\MemberSemanticModel.cs (1)
615public 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)
1522public override IFieldSymbol GetDeclaredSymbol(EnumMemberDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
CSharpExtensions.cs (1)
1400public static IFieldSymbol? GetDeclaredSymbol(this SemanticModel? semanticModel, EnumMemberDeclarationSyntax declarationSyntax, CancellationToken cancellationToken = default(CancellationToken))
Operations\CSharpOperationFactory.cs (3)
574IFieldSymbol field = boundFieldAccess.FieldSymbol.GetPublicSymbol(); 1726ImmutableArray<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)
584ImmutableArray<IFieldSymbol> elements = symbol.TupleElements; 589var 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)
610internal static IFieldSymbol? GetPublicSymbol(this FieldSymbol? symbol) 612return symbol.GetPublicSymbol<IFieldSymbol>(); 741internal static ImmutableArray<IFieldSymbol> GetPublicSymbols(this ImmutableArray<FieldSymbol> symbols) 743return GetPublicSymbols<IFieldSymbol>(StaticCast<Symbol>.From(symbols));
Symbols\TypedConstantExtensions.cs (4)
85var field = member as IFieldSymbol; 164var field = member as IFieldSymbol;
Microsoft.CodeAnalysis.CSharp.CodeStyle (21)
src\Analyzers\CSharp\Analyzers\MakeStructFieldsWritable\CSharpMakeStructFieldsWritableDiagnosticAnalyzer.cs (1)
79.OfType<IFieldSymbol>()
src\Analyzers\CSharp\Analyzers\MakeStructReadOnly\CSharpMakeStructReadOnlyDiagnosticAnalyzer.cs (1)
103if (member is IFieldSymbol field)
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\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (2)
475if (symbol is not IPropertySymbol and not IFieldSymbol) 1117if (emptySymbol is not IFieldSymbol and not IPropertySymbol)
src\Analyzers\CSharp\Analyzers\UseDeconstruction\CSharpUseDeconstructionDiagnosticAnalyzer.cs (3)
173foreach (var element in tupleType.TupleElements) 212foreach (var element in tupleType.TupleElements) 267if (member is not IFieldSymbol field)
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\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\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
329if (exprSymbol is not IFieldSymbol { IsConst: true })
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (1)
707if (castedSymbol is not IFieldSymbol and not ILocalSymbol and not IParameterSymbol and not IParameterSymbol { RefKind: RefKind.Ref })
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (39)
src\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordEngine.cs (1)
107.OfType<IFieldSymbol>()
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\Analyzers\CSharp\CodeFixes\DisambiguateSameVariable\CSharpDisambiguateSameVariableCodeFixProvider.cs (1)
109where m is IFieldSymbol or IPropertySymbol
src\Analyzers\CSharp\CodeFixes\MakeMemberRequired\CSharpMakeMemberRequiredCodeFixProvider.cs (1)
77else if (fieldOrPropertySymbol is IFieldSymbol fieldSymbol)
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\Analyzers\CSharp\CodeFixes\ReplaceDefaultLiteral\CSharpReplaceDefaultLiteralCodeFixProvider.cs (1)
88type.GetMembers("None").FirstOrDefault() is IFieldSymbol field && IsZero(field.ConstantValue))
src\Analyzers\CSharp\CodeFixes\UsePrimaryConstructor\CSharpUsePrimaryConstructorCodeFixProvider.cs (1)
321IMethodSymbol or IPropertySymbol or IEventSymbol or IFieldSymbol =>
src\Analyzers\CSharp\CodeFixes\UseSystemThreadingLock\CSharpUseSystemThreadingLockCodeFixProvider.cs (1)
93if (semanticModel.GetDeclaredSymbol(variableDeclarator, cancellationToken) is not IFieldSymbol field)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationHelpers.cs (1)
277if (symbol is IFieldSymbol
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\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\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\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\NamedTypeGenerator.cs (1)
121members = members.WhereAsArray(m => m is not IPropertySymbol and not IFieldSymbol || !primaryConstructor.Parameters.Any(static (p, m) => p.Name == m.Name, m));
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeSymbolExtensions.TypeSyntaxGeneratorVisitor.cs (1)
254foreach (var element in symbol.TupleElements)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (1)
1479case IFieldSymbol field:
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\InitializeParameter\InitializeParameterHelpers.cs (1)
76else if (fieldOrProperty is IFieldSymbol field)
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (1)
SymbolKey\SymbolKeyMetadataVsSourceTests.cs (1)
370ResolveAndVerifyTypeSymbol(list[3], (originalSymbols[3] as IFieldSymbol).Type, model, comp20);
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (46)
CodeGen\CodeGenDeconstructTests.cs (12)
3611var field = (IFieldSymbol)model.GetDeclaredSymbol(decl); 5404var xType = ((IFieldSymbol)xSymbol).Type; 5411var yType = ((IFieldSymbol)ySymbol).Type; 5437var xType = ((IFieldSymbol)xSymbol).Type; 5444var yType = ((IFieldSymbol)ySymbol).Type; 5569var xType = ((IFieldSymbol)xSymbol).Type; 5617var yType = ((IFieldSymbol)ySymbol).Type; 5648var x1Type = ((IFieldSymbol)x1Symbol).Type; 5657var x2Type = ((IFieldSymbol)x2Symbol).Type; 5692var x1Type = ((IFieldSymbol)x1Symbol).Type; 5701var x2Type = ((IFieldSymbol)x2Symbol).Type;
CodeGen\CodeGenTupleTest.cs (34)
3645foreach (var item in type.TupleElements) 5883Assert.All(tupleWithoutNames.GetMembers().OfType<IFieldSymbol>().Select(f => f.Locations.FirstOrDefault()), 5960Assert.All(tupleWithoutNames.GetMembers().OfType<IFieldSymbol>().Select(f => f.Locations.FirstOrDefault()), 5979Assert.All(tupleWithNames.GetMembers().OfType<IFieldSymbol>().Select(f => f.Locations.FirstOrDefault()), 5998Assert.All(tupleWithSomeNames.GetMembers().OfType<IFieldSymbol>().Select(f => f.Locations.FirstOrDefault()), 6016Assert.All(tupleWithNames.GetMembers().OfType<IFieldSymbol>().Select(f => f.Locations.FirstOrDefault()), 6068Assert.All(tuple8WithoutNames.GetMembers().OfType<IFieldSymbol>().Where(f => f.Name != "Rest").Select(f => f.Locations.FirstOrDefault()), 6093Assert.All(tuple8WithNames.GetMembers().OfType<IFieldSymbol>().Select(f => f.Locations.FirstOrDefault()), 6118Assert.All(tuple9WithoutNames.GetMembers().OfType<IFieldSymbol>().Select(f => f.Locations.FirstOrDefault()), 6144Assert.All(tuple9WithNames.GetMembers().OfType<IFieldSymbol>().Select(f => f.Locations.FirstOrDefault()), 6176Assert.All(tuple9WithNames.GetMembers().OfType<IFieldSymbol>().Select(f => f.Locations.FirstOrDefault()), 6200Assert.All(tupleWithoutNames.GetMembers().OfType<IFieldSymbol>().Select(f => f.Locations.FirstOrDefault()), 6600var tuple1 = (INamedTypeSymbol)comp.SourceModule.GlobalNamespace.GetMember<INamedTypeSymbol>("C").GetMember<IFieldSymbol>("F").Type; 6635var tuple1 = (INamedTypeSymbol)((IFieldSymbol)comp.GetMember("Program.F")).Type; 6677var tuple1 = (INamedTypeSymbol)((IFieldSymbol)comp.GetMember("Program.F")).Type; 6716var tuple1 = (INamedTypeSymbol)((IFieldSymbol)comp.GetMember("Program.F")).Type; 6757var tuple1 = (INamedTypeSymbol)((IFieldSymbol)comp.GetMember("Program.F")).Type; 6835var tuple1 = (INamedTypeSymbol)((IFieldSymbol)comp.GetMember("Program.F")).Type; 6865var tuple1 = (INamedTypeSymbol)((IFieldSymbol)comp.GetMember("Program.F")).Type; 6904var tuple1 = (INamedTypeSymbol)((IFieldSymbol)comp.GetMember("Program.F")).Type; 14252m1Tuple.GetMember<IFieldSymbol>("Rest").Type.ToTestDisplayString()); 14259m1Tuple.GetMember<IFieldSymbol>("Rest").Type.ToTestDisplayString()); 14268m2Tuple.GetMember<IFieldSymbol>("Rest").Type.ToTestDisplayString()); 14270var f1Tuple = (INamedTypeSymbol)test.GetMember<IFieldSymbol>("F1").Type; 14277f1Tuple = (INamedTypeSymbol)((IFieldSymbol)symbolInfo.Symbol).Type; 14282f1Tuple.GetMember<IFieldSymbol>("Rest").Type.ToTestDisplayString()); 14296p1Tuple.GetMember<IFieldSymbol>("Rest").Type.ToTestDisplayString()); 14440e1Tuple.GetMember<IFieldSymbol>("Rest").Type.ToTestDisplayString()); 22859AssertEx.SetEqual(xSymbol.GetMembers().OfType<IFieldSymbol>().Select(f => f.Name), 27419VerifyTypeFromVisualBasic((INamedTypeSymbol)((IFieldSymbol)containingType.GetMembers("F0").Single()).Type, TupleUnderlyingTypeValue.Null, "System.ValueTuple", "System.ValueTuple"); 27420VerifyTypeFromVisualBasic((INamedTypeSymbol)((IFieldSymbol)containingType.GetMembers("F1").Single()).Type, TupleUnderlyingTypeValue.Distinct, "(System.Int32, System.Int32)", "(System.Int32, System.Int32)"); 27421VerifyTypeFromVisualBasic((INamedTypeSymbol)((IFieldSymbol)containingType.GetMembers("F2").Single()).Type, TupleUnderlyingTypeValue.Distinct, "(System.Int32 A, System.Int32 B)", "(A As System.Int32, B As System.Int32)"); 27422VerifyTypeFromVisualBasic((INamedTypeSymbol)((IFieldSymbol)containingType.GetMembers("F3").Single()).Type, TupleUnderlyingTypeValue.Distinct, "(System.Object, System.Object, System.Object, System.Object, System.Object, System.Object, System.Object, System.Object)", "(System.Object, System.Object, System.Object, System.Object, System.Object, System.Object, System.Object, System.Object)"); 27423VerifyTypeFromVisualBasic((INamedTypeSymbol)((IFieldSymbol)containingType.GetMembers("F4").Single()).Type, TupleUnderlyingTypeValue.Distinct, "(System.Object, System.Object B, System.Object, System.Object D, System.Object, System.Object F, System.Object, System.Object H)", "(System.Object, B As System.Object, System.Object, D As System.Object, System.Object, F As System.Object, System.Object, H As System.Object)");
Microsoft.CodeAnalysis.CSharp.Emit2.UnitTests (6)
Emit\NumericIntPtrTests.cs (6)
11228var symbol = (IFieldSymbol)model.GetSymbolInfo(cref).Symbol; 11253var symbol = (IFieldSymbol)model.GetSymbolInfo(cref).Symbol; 11298var symbol = (IFieldSymbol)model.GetSymbolInfo(cref).Symbol;
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (36)
Diagnostics\GetDiagnosticsTests.cs (2)
1846foreach (var field in namedType.GetMembers().OfType<IFieldSymbol>())
Semantics\OutVarTests.cs (28)
26431Assert.Equal("System.Int32", ((IFieldSymbol)compilation.GetSemanticModel(tree).GetDeclaredSymbol(x1Decl.VariableDesignation())).Type.ToTestDisplayString()); 27028Assert.Equal("System.Int32", ((IFieldSymbol)compilation.GetSemanticModel(tree).GetDeclaredSymbol(x1Decl.VariableDesignation())).Type.ToTestDisplayString()); 32202var x1 = (IFieldSymbol)model.GetDeclaredSymbol(x1Decl.VariableDesignation()); 32232var b = (IFieldSymbol)model.GetDeclaredSymbol(tree.GetRoot().DescendantNodes().OfType<VariableDeclaratorSyntax>().Where(d => d.Identifier.ValueText == "b").Single()); 32243var x1 = (IFieldSymbol)model.GetDeclaredSymbol(x1Decl.VariableDesignation()); 32272var b = (IFieldSymbol)model.GetDeclaredSymbol(tree.GetRoot().DescendantNodes().OfType<VariableDeclaratorSyntax>().Where(d => d.Identifier.ValueText == "b").Single()); 32283var x1 = (IFieldSymbol)model.GetDeclaredSymbol(x1Decl.VariableDesignation()); 32312var a = (IFieldSymbol)model.GetDeclaredSymbol(tree.GetRoot().DescendantNodes().OfType<VariableDeclaratorSyntax>().Where(d => d.Identifier.ValueText == "a").Single()); 32323var x1 = (IFieldSymbol)model.GetDeclaredSymbol(x1Decl.VariableDesignation()); 32331x1 = (IFieldSymbol)model.GetDeclaredSymbol(x1Decl.VariableDesignation()); 32369var x1 = (IFieldSymbol)model.GetDeclaredSymbol(x1Decl.VariableDesignation()); 32386var b = (IFieldSymbol)model.GetDeclaredSymbol(bDecl); 32389x1 = (IFieldSymbol)model.GetDeclaredSymbol(x1Decl.VariableDesignation()); 32438var x1 = (IFieldSymbol)model.GetDeclaredSymbol(x1Decl.VariableDesignation()); 32488var x1 = (IFieldSymbol)model.GetDeclaredSymbol(x1Decl.VariableDesignation()); 32753var local = (IFieldSymbol)symbol;
Semantics\PatternMatchingTestBase.cs (2)
265var local = (IFieldSymbol)symbol;
Semantics\PatternMatchingTests_Global.cs (2)
901Assert.Equal("System.Int32", ((IFieldSymbol)compilation.GetSemanticModel(tree).GetDeclaredSymbol(x1Decl)).Type.ToTestDisplayString()); 1459Assert.Equal("System.Int32", ((IFieldSymbol)compilation.GetSemanticModel(tree).GetDeclaredSymbol(x1Decl)).Type.ToTestDisplayString());
Semantics\RecordTests.cs (2)
896var xBackingField = (IFieldSymbol)c.GetMember("<X>k__BackingField");
Microsoft.CodeAnalysis.CSharp.Features (86)
Completion\CompletionProviders\EnumAndCompletionListTagCompletionProvider.cs (2)
189var fields = type.GetMembers().OfType<IFieldSymbol>().Where(f => f.IsConst).Where(f => f.HasConstantValue); 224if (member is IFieldSymbol { IsStatic: true } field)
Completion\CompletionProviders\PropertySubPatternCompletionProvider.cs (1)
129IFieldSymbol field => field.Type,
Completion\CompletionProviders\TupleNameCompletionProvider.cs (1)
104var field = type.TupleElements[index];
ConvertPrimaryToRegularConstructor\ConvertPrimaryToRegularConstructorCodeRefactoringProvider.cs (7)
181ImmutableDictionary<IParameterSymbol, IFieldSymbol> CreateSynthesizedFields() 183using var _1 = PooledDictionary<Location, IFieldSymbol>.GetInstance(out var locationToField); 184using var _2 = PooledDictionary<IParameterSymbol, IFieldSymbol>.GetInstance(out var result); 191if (member is IFieldSymbol { IsImplicitlyDeclared: true, Locations: [var location, ..] } field) 204var synthesizedField = CodeGenerationSymbolFactory.CreateFieldSymbol( 301.Select(p => parameterToSynthesizedFields.TryGetValue(p, out var field) ? field : null) 355if (!parameterToSynthesizedFields.TryGetValue(parameter, out var field))
ConvertProgram\ConvertProgramTransform_TopLevelStatements.cs (2)
257var field = (IFieldSymbol?)semanticModel.GetDeclaredSymbol(variable, cancellationToken);
EditAndContinue\CSharpEditAndContinueAnalyzer.cs (1)
2566IFieldSymbol { ContainingType.TypeKind: TypeKind.Enum }
EncapsulateField\CSharpEncapsulateFieldService.cs (6)
93var field = semanticModel.GetDeclaredSymbol(declarator, cancellationToken) as IFieldSymbol; 123protected override async Task<ImmutableArray<IFieldSymbol>> GetFieldsAsync(Document document, TextSpan span, CancellationToken cancellationToken) 147return [.. declarators.Select(d => semanticModel.GetDeclaredSymbol(d, cancellationToken) as IFieldSymbol) 155protected override (string fieldName, string propertyName) GenerateFieldAndPropertyNames(IFieldSymbol field) 189private 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)
103if (memberWithName is IFieldSymbol { IsConst: false, DeclaringSyntaxReferences: [var syntaxRef1, ..] } field && 161yield return siblingFieldOrProperty is IFieldSymbol ? fieldAction : propertyAction; 162yield return siblingFieldOrProperty is IFieldSymbol ? propertyAction : fieldAction; 174yield return siblingFieldOrProperty is IFieldSymbol ? allFieldsAction : allPropertiesAction; 175yield return 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)
107else if (symbol is IFieldSymbol field) 170IFieldSymbol symbol)
QuickInfo\CSharpSemanticQuickInfoProvider.cs (2)
110case IFieldSymbol { HasConstantValue: true }: return default; 114case IFieldSymbol:
ReplacePropertyWithMethods\CSharpReplacePropertyWithMethodsService.cs (4)
38IFieldSymbol? propertyBackingField, 63IFieldSymbol? propertyBackingField, 106IFieldSymbol? propertyBackingField, 164IFieldSymbol? 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)
181foreach (var element in tupleType.TupleElements)
src\Analyzers\CSharp\Analyzers\MakeStructFieldsWritable\CSharpMakeStructFieldsWritableDiagnosticAnalyzer.cs (1)
79.OfType<IFieldSymbol>()
src\Analyzers\CSharp\Analyzers\MakeStructReadOnly\CSharpMakeStructReadOnlyDiagnosticAnalyzer.cs (1)
103if (member is IFieldSymbol field)
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\Analyzers\CSharp\Analyzers\UseCollectionExpression\UseCollectionExpressionHelpers.cs (2)
475if (symbol is not IPropertySymbol and not IFieldSymbol) 1117if (emptySymbol is not IFieldSymbol and not IPropertySymbol)
src\Analyzers\CSharp\Analyzers\UseDeconstruction\CSharpUseDeconstructionDiagnosticAnalyzer.cs (3)
173foreach (var element in tupleType.TupleElements) 212foreach (var element in tupleType.TupleElements) 267if (member is not IFieldSymbol field)
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\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\Analyzers\CSharp\CodeFixes\ConvertToRecord\ConvertToRecordEngine.cs (1)
107.OfType<IFieldSymbol>()
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\Analyzers\CSharp\CodeFixes\DisambiguateSameVariable\CSharpDisambiguateSameVariableCodeFixProvider.cs (1)
109where m is IFieldSymbol or IPropertySymbol
src\Analyzers\CSharp\CodeFixes\MakeMemberRequired\CSharpMakeMemberRequiredCodeFixProvider.cs (1)
77else if (fieldOrPropertySymbol is IFieldSymbol fieldSymbol)
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\Analyzers\CSharp\CodeFixes\ReplaceDefaultLiteral\CSharpReplaceDefaultLiteralCodeFixProvider.cs (1)
88type.GetMembers("None").FirstOrDefault() is IFieldSymbol field && IsZero(field.ConstantValue))
src\Analyzers\CSharp\CodeFixes\UsePrimaryConstructor\CSharpUsePrimaryConstructorCodeFixProvider.cs (1)
321IMethodSymbol or IPropertySymbol or IEventSymbol or IFieldSymbol =>
src\Analyzers\CSharp\CodeFixes\UseSystemThreadingLock\CSharpUseSystemThreadingLockCodeFixProvider.cs (1)
93if (semanticModel.GetDeclaredSymbol(variableDeclarator, cancellationToken) is not IFieldSymbol field)
UseAutoProperty\CSharpUseAutoPropertyCodeFixProvider.cs (1)
82IFieldSymbol fieldSymbol,
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (35)
Semantics\AccessCheckTests.cs (27)
748IFieldSymbol privField = classA.GetMembers("priv").Single() as IFieldSymbol; 749IFieldSymbol pubField = classA.GetMembers("pub").Single() as IFieldSymbol; 750IFieldSymbol protField = classA.GetMembers("prot").Single() as IFieldSymbol; 751ITypeSymbol karrayType = (classA.GetMembers("karray").Single() as IFieldSymbol).Type; 752ITypeSymbol aarrayType = (classA.GetMembers("aarray").Single() as IFieldSymbol).Type; 753ITypeSymbol kptrType = (classA.GetMembers("kptr").Single() as IFieldSymbol).Type; 754ITypeSymbol aptrType = (classA.GetMembers("aptr").Single() as IFieldSymbol).Type; 755ITypeSymbol kinreturnfuncptrType = (classA.GetMembers("kinreturnfuncptr").Single() as IFieldSymbol).Type; 756ITypeSymbol kinparamfuncptr1Type = (classA.GetMembers("kinparamfuncptr1").Single() as IFieldSymbol).Type; 757ITypeSymbol kinparamfuncptr2Type = (classA.GetMembers("kinparamfuncptr2").Single() as IFieldSymbol).Type; 758ITypeSymbol afuncptrType = (classA.GetMembers("afuncptr").Single() as IFieldSymbol).Type; 759ITypeSymbol kenumType = (classA.GetMembers("kenum").Single() as IFieldSymbol).Type; 760ITypeSymbol aenumType = (classA.GetMembers("aenum").Single() as IFieldSymbol).Type; 764ITypeSymbol unknownType = (classA.GetMembers("unknowntype").Single() as IFieldSymbol).Type; 903IFieldSymbol Outer_Inner_Field = Outer_Inner.GetMembers("Field").Single() as IFieldSymbol; 904IFieldSymbol Outer_Pointer = Outer.GetMembers("Pointer").Single() as IFieldSymbol; 905IFieldSymbol Outer_Protected = Outer.GetMembers("Protected").Single() as IFieldSymbol; 906IFieldSymbol Outer_ProtectedInternal = Outer.GetMembers("ProtectedInternal").Single() as IFieldSymbol; 907IFieldSymbol Outer_PrivateProtected = Outer.GetMembers("PrivateProtected").Single() as IFieldSymbol;
Semantics\NativeIntegerTests.cs (2)
15393var symbol = (IFieldSymbol)model.GetSymbolInfo(cref).Symbol;
Semantics\RecordStructTests.cs (4)
1841var xBackingField = (IFieldSymbol)c.GetMember("<X>k__BackingField"); 1888var xBackingField = (IFieldSymbol)c.GetMember("<X>k__BackingField");
Semantics\UnsafeTests.cs (2)
8238Assert.Equal(intPointerType.GetPublicSymbol(), ((IFieldSymbol)receiverSymbol).Type); 8296Assert.Equal(intPointerType.GetPublicSymbol(), ((IFieldSymbol)receiverSymbol).Type);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (106)
Compilation\SemanticModelAPITests.cs (9)
796var xSym = mainType.GetMembers("x").Single() as IFieldSymbol; 1721var fieldQ = classQ.GetMember<IFieldSymbol>("q"); 4409var fieldX = (IFieldSymbol)classA.GetMembers("X").Single().ISymbol; 4410var fieldY = (IFieldSymbol)classA.GetMembers("Y").Single().ISymbol; 4411var fieldZ = (IFieldSymbol)classA.GetMembers("Z").Single().ISymbol;
Compilation\SemanticModelGetDeclaredSymbolAPITests.cs (18)
949var fSymbol = model.GetDeclaredSymbol(fieldDecl.Declaration.Variables[0]) as IFieldSymbol; 3647var fSymbol = model.GetDeclaredSymbol((EnumMemberDeclarationSyntax)enumMemberDecl); 4083var fieldB = classM.GetMember<IFieldSymbol>("B"); 4914var element = (IFieldSymbol)model.GetDeclaredSymbol(decl); 4937var element = (IFieldSymbol)model.GetDeclaredSymbol(decl); 4960var element = (IFieldSymbol)model.GetDeclaredSymbol(decl); 4995var element = (IFieldSymbol)model.GetDeclaredSymbol(decl); 5041var element = (IFieldSymbol)model.GetDeclaredSymbol(decl); 5090var element = (IFieldSymbol)model.GetDeclaredSymbol(decl); 5113var element = (IFieldSymbol)model.GetDeclaredSymbol(decl);
Compilation\SemanticModelGetSemanticInfoTests.cs (12)
4616var symbol = (IFieldSymbol)semanticInfo.Symbol; 4682var symbol = (IFieldSymbol)semanticInfo.Symbol; 4719var symbol = (IFieldSymbol)semanticInfo.Symbol; 4755var symbol = (IFieldSymbol)semanticInfo.Symbol; 4791var symbol = (IFieldSymbol)semanticInfo.Symbol; 4823var symbol = (IFieldSymbol)semanticInfo.Symbol;
Compilation\SymbolVisitorTests.cs (3)
81public override void VisitField(IFieldSymbol symbol) 256public override string VisitField(IFieldSymbol symbol) 447public override int VisitField(IFieldSymbol symbol, StringBuilder argument)
Symbols\Source\DeclaringSyntaxNodeTests.cs (16)
203var f = s1.GetMembers("f").Single() as IFieldSymbol; 238foreach (IFieldSymbol f in c1.GetMembers().OfType<IFieldSymbol>()) 459foreach (IFieldSymbol f in c2.GetMembers().OfType<IFieldSymbol>()) 475foreach (IFieldSymbol f in c3.GetMembers().OfType<IFieldSymbol>()) 542if (memb is IFieldSymbol) 544var fld = (IFieldSymbol)memb; 552var fieldT = c1.GetMembers("t").Single() as IFieldSymbol; 565if (memb is IFieldSymbol) 567var fld = (IFieldSymbol)memb;
Symbols\Source\FieldTests.cs (4)
498var goo = (IFieldSymbol)s.GetMember("goo").GetPublicSymbol(); 518var goo = (IFieldSymbol)s.GetMember("goo").GetPublicSymbol();
Symbols\Source\NullablePublicAPITests.cs (6)
147return c.GetMembers().OfType<IFieldSymbol>().ToArray(); 2786Assert.Equal(PublicNullableAnnotation.Annotated, ((IFieldSymbol)symInfo.Symbol).NullableAnnotation); 2787Assert.Equal(PublicNullableAnnotation.Annotated, ((IFieldSymbol)symInfo.Symbol).Type.NullableAnnotation); 2791Assert.Equal(PublicNullableAnnotation.NotAnnotated, ((IFieldSymbol)symInfo.Symbol).NullableAnnotation); 2792Assert.Equal(PublicNullableAnnotation.NotAnnotated, ((IFieldSymbol)symInfo.Symbol).Type.NullableAnnotation); 4215Assert.Equal(SpecialType.System_String, ((IFieldSymbol)symbolInfo.Symbol).Type.SpecialType);
Symbols\SymbolEqualityTests.cs (38)
225var type1 = ((IFieldSymbol)comp.GetMember("A.field1")).Type; 226var type2 = ((IFieldSymbol)comp.GetMember("A.field2")).Type; 249var type1 = ((IFieldSymbol)comp.GetMember("A.field1")).Type; 250var type2 = ((IFieldSymbol)comp.GetMember("A.field2")).Type; 285var type1 = ((IFieldSymbol)comp.GetMember("A.field1")).Type; 286var type2 = ((IFieldSymbol)comp.GetMember("A.field2")).Type; 309var type1 = ((IFieldSymbol)comp.GetMember("A.field1")).Type; 310var type2 = ((IFieldSymbol)comp.GetMember("A.field2")).Type; 344var type1comp1 = ((IFieldSymbol)comp1.GetMember("A.field1")).Type; 345var type1comp2 = ((IFieldSymbol)comp2.GetMember("A.field1")).Type; 346var type2 = ((IFieldSymbol)comp2.GetMember("B.field2")).Type; 376var symbol1 = ((IFieldSymbol)comp.GetMember("A.field1")).Type; 424var field1 = (IFieldSymbol)member1; 425var field2 = (IFieldSymbol)member2; 454var type1 = ((IFieldSymbol)model.GetDeclaredSymbol(member1Syntax.Declaration.Variables[0])).Type; 455var type2 = ((IFieldSymbol)model.GetDeclaredSymbol(member2Syntax.Declaration.Variables[0])).Type; 485var type1 = ((IFieldSymbol)model.GetDeclaredSymbol(member1Syntax.Declaration.Variables[0])).Type; 486var type2 = ((IFieldSymbol)model.GetDeclaredSymbol(member2Syntax.Declaration.Variables[0])).Type; 528var type1 = ((IFieldSymbol)model.GetDeclaredSymbol(member1Syntax.Declaration.Variables[0])).Type; 529var type2 = ((IFieldSymbol)model.GetDeclaredSymbol(member2Syntax.Declaration.Variables[0])).Type; 559var type1 = ((IFieldSymbol)model.GetDeclaredSymbol(member1Syntax.Declaration.Variables[0])).Type; 560var type2 = ((IFieldSymbol)model.GetDeclaredSymbol(member2Syntax.Declaration.Variables[0])).Type; 630var type1 = ((IFieldSymbol)model.GetDeclaredSymbol(member1Syntax.Declaration.Variables[0])).Type; 631var type2 = ((IFieldSymbol)model.GetDeclaredSymbol(member2Syntax.Declaration.Variables[0])).Type; 679var type1 = ((IFieldSymbol)model.GetDeclaredSymbol(member1Syntax.Declaration.Variables[0])).Type; 680var type2 = ((IFieldSymbol)model.GetDeclaredSymbol(member2Syntax.Declaration.Variables[0])).Type; 686var field1 = (IFieldSymbol)type1.GetMembers()[0]; 687var field2 = (IFieldSymbol)type2.GetMembers()[0]; 731var type1 = ((IFieldSymbol)model.GetDeclaredSymbol(member1Syntax.Declaration.Variables[0])).Type; 732var type2 = ((IFieldSymbol)model.GetDeclaredSymbol(member2Syntax.Declaration.Variables[0])).Type; 781var field1 = (IFieldSymbol)((INamedTypeSymbol)model.GetDeclaredSymbol(member1Syntax)).GetMembers("field").Single(); // A<T!>! A<T>.field 782var field2 = (IFieldSymbol)model.GetSymbolInfo(member2Syntax).Symbol; // A<T!>! A<T!>.field
Microsoft.CodeAnalysis.CSharp.Test.Utilities (1)
Extensions.cs (1)
815return ((IFieldSymbol)symbol).Type;
Microsoft.CodeAnalysis.CSharp.Workspaces (20)
Classification\SyntaxClassification\NameSyntaxClassifier.cs (2)
195case IFieldSymbol fieldSymbol: 234private static string GetClassificationForField(IFieldSymbol fieldSymbol)
Recommendations\CSharpRecommendationServiceRunner.cs (1)
633.WhereAsArray(symbol => symbol is INamespaceOrTypeSymbol or IFieldSymbol { IsConst: true }
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Extensions\ParenthesizedExpressionSyntaxExtensions.cs (1)
329if (exprSymbol is not IFieldSymbol { IsConst: true })
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\CSharp\Simplification\Simplifiers\CastSimplifier.cs (1)
707if (castedSymbol is not IFieldSymbol and not ILocalSymbol and not IParameterSymbol and not IParameterSymbol { RefKind: RefKind.Ref })
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\CSharpCodeGenerationHelpers.cs (1)
277if (symbol is IFieldSymbol
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\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\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\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\CodeGeneration\NamedTypeGenerator.cs (1)
121members = members.WhereAsArray(m => m is not IPropertySymbol and not IFieldSymbol || !primaryConstructor.Parameters.Any(static (p, m) => p.Name == m.Name, m));
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\Extensions\ITypeSymbolExtensions.TypeSyntaxGeneratorVisitor.cs (1)
254foreach (var element in symbol.TupleElements)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (1)
1479case IFieldSymbol field:
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\InitializeParameter\InitializeParameterHelpers.cs (1)
76else if (fieldOrProperty is IFieldSymbol field)
Microsoft.CodeAnalysis.CSharp.Workspaces.UnitTests (6)
CodeGeneration\SyntaxGeneratorTests.cs (6)
3801var symbolX = (IFieldSymbol)symbolC.GetMembers("X").First(); 3802var symbolY = (IFieldSymbol)symbolC.GetMembers("Y").First(); 3803var symbolZ = (IFieldSymbol)symbolC.GetMembers("Z").First();
Microsoft.CodeAnalysis.EditorFeatures (1)
RenameTracking\RenameTrackingTaggerProvider.TrackingSession.cs (1)
240if (sourceSymbol is IFieldSymbol { ContainingType.IsTupleType: true, IsImplicitlyDeclared: true })
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (91)
CodeGeneration\CodeGenerationTests.cs (1)
69var field = CodeGenerationSymbolFactory.CreateFieldSymbol(
SymbolFinder\FindSymbolAtPositionTests.cs (2)
61var fieldSymbol = Assert.IsAssignableFrom<IFieldSymbol>(await FindSymbolAtPositionAsync(workspace));
Utilities\SymbolEquivalenceComparerTests.cs (88)
53var intField1 = (IFieldSymbol)type.GetMembers("intField1").Single(); 54var intArrayField1 = (IFieldSymbol)type.GetMembers("intArrayField1").Single(); 55var stringArrayField1 = (IFieldSymbol)type.GetMembers("stringArrayField1").Single(); 56var intArrayArrayField1 = (IFieldSymbol)type.GetMembers("intArrayArrayField1").Single(); 57var intArrayRank2Field1 = (IFieldSymbol)type.GetMembers("intArrayRank2Field1").Single(); 58var int32Field1 = (IFieldSymbol)type.GetMembers("int32Field1").Single(); 60var intField2 = (IFieldSymbol)type.GetMembers("intField2").Single(); 61var intArrayField2 = (IFieldSymbol)type.GetMembers("intArrayField2").Single(); 62var stringArrayField2 = (IFieldSymbol)type.GetMembers("stringArrayField2").Single(); 63var intArrayArrayField2 = (IFieldSymbol)type.GetMembers("intArrayArrayField2").Single(); 64var intArrayRank2Field2 = (IFieldSymbol)type.GetMembers("intArrayRank2Field2").Single(); 65var int32Field2 = (IFieldSymbol)type.GetMembers("int32Field2").Single(); 126var csharpIntField1 = (IFieldSymbol)csharpType.GetMembers("intField1").Single(); 127var csharpIntArrayField1 = (IFieldSymbol)csharpType.GetMembers("intArrayField1").Single(); 128var csharpStringArrayField1 = (IFieldSymbol)csharpType.GetMembers("stringArrayField1").Single(); 129var csharpIntArrayArrayField1 = (IFieldSymbol)csharpType.GetMembers("intArrayArrayField1").Single(); 130var csharpIntArrayRank2Field1 = (IFieldSymbol)csharpType.GetMembers("intArrayRank2Field1").Single(); 131var csharpInt32Field1 = (IFieldSymbol)csharpType.GetMembers("int32Field1").Single(); 133var vbIntField1 = (IFieldSymbol)vbType.GetMembers("intField1").Single(); 134var vbIntArrayField1 = (IFieldSymbol)vbType.GetMembers("intArrayField1").Single(); 135var vbStringArrayField1 = (IFieldSymbol)vbType.GetMembers("stringArrayField1").Single(); 136var vbIntArrayArrayField1 = (IFieldSymbol)vbType.GetMembers("intArrayArrayField1").Single(); 137var vbIntArrayRank2Field1 = (IFieldSymbol)vbType.GetMembers("intArrayRank2Field1").Single(); 138var vbInt32Field1 = (IFieldSymbol)vbType.GetMembers("int32Field1").Single(); 286var intInstantiation1 = (IFieldSymbol)typeC.GetMembers("intInstantiation1").Single(); 287var stringInstantiation = (IFieldSymbol)typeC.GetMembers("stringInstantiation").Single(); 288var instanceInstantiation = (IFieldSymbol)typeC.GetMembers("instanceInstantiation").Single(); 289var intInstantiation2 = (IFieldSymbol)typeD.GetMembers("intInstantiation2").Single(); 1345var a1 = ((IFieldSymbol)t1.GetMembers("A").Single()).Type; 1346var b1 = ((IFieldSymbol)t1.GetMembers("B").Single()).Type; 1347var c1 = ((IFieldSymbol)t1.GetMembers("C").Single()).Type; 1348var d1 = ((IFieldSymbol)t1.GetMembers("D").Single()).Type; 1349var a2 = ((IFieldSymbol)t2.GetMembers("A").Single()).Type; 1350var b2 = ((IFieldSymbol)t2.GetMembers("B").Single()).Type; 1351var c2 = ((IFieldSymbol)t2.GetMembers("C").Single()).Type; 1352var d2 = ((IFieldSymbol)t2.GetMembers("D").Single()).Type; 1409var a1 = ((IFieldSymbol)t1.GetMembers("A").Single()).Type; 1410var b1 = ((IFieldSymbol)t1.GetMembers("B").Single()).Type; 1411var c1 = ((IFieldSymbol)t1.GetMembers("C").Single()).Type; 1412var d1 = ((IFieldSymbol)t1.GetMembers("D").Single()).Type; 1413var a2 = ((IFieldSymbol)t2.GetMembers("A").Single()).Type; 1414var b2 = ((IFieldSymbol)t2.GetMembers("B").Single()).Type; 1415var c2 = ((IFieldSymbol)t2.GetMembers("C").Single()).Type; 1416var d2 = ((IFieldSymbol)t2.GetMembers("D").Single()).Type; 1472var a1 = ((IFieldSymbol)t1.GetMembers("A").Single()).Type; 1473var b1 = ((IFieldSymbol)t1.GetMembers("B").Single()).Type; 1474var c1 = ((IFieldSymbol)t1.GetMembers("C").Single()).Type; 1475var d1 = ((IFieldSymbol)t1.GetMembers("D").Single()).Type; 1476var a2 = ((IFieldSymbol)t2.GetMembers("A").Single()).Type; 1477var b2 = ((IFieldSymbol)t2.GetMembers("B").Single()).Type; 1478var c2 = ((IFieldSymbol)t2.GetMembers("C").Single()).Type; 1479var d2 = ((IFieldSymbol)t2.GetMembers("D").Single()).Type; 1535var a1 = ((IFieldSymbol)t1.GetMembers("A").Single()).Type; 1536var b1 = ((IFieldSymbol)t1.GetMembers("B").Single()).Type; 1537var c1 = ((IFieldSymbol)t1.GetMembers("C").Single()).Type; 1538var d1 = ((IFieldSymbol)t1.GetMembers("D").Single()).Type; 1539var a2 = ((IFieldSymbol)t2.GetMembers("A").Single()).Type; 1540var b2 = ((IFieldSymbol)t2.GetMembers("B").Single()).Type; 1541var c2 = ((IFieldSymbol)t2.GetMembers("C").Single()).Type; 1542var d2 = ((IFieldSymbol)t2.GetMembers("D").Single()).Type;
Microsoft.CodeAnalysis.EditorFeatures2.UnitTests (2)
Workspaces\TryFindSourceDefinitionTests.vb (2)
60Dim field = DirectCast(Type.GetMembers("field").Single(), IFieldSymbol) 104Dim field = DirectCast(Type.GetMembers("field").Single(), IFieldSymbol)
Microsoft.CodeAnalysis.ExpressionEvaluator.ExpressionCompiler (1)
AbstractTypeParameterChecker.cs (1)
80public sealed override void VisitField(IFieldSymbol symbol)
Microsoft.CodeAnalysis.Features (173)
AddImport\SymbolReferenceFinder.cs (1)
342m is IFieldSymbol or IPropertySymbol &&
Completion\Providers\AbstractContextVariableArgumentProvider.cs (1)
61if (symbol.IsKind(SymbolKind.Field, out IFieldSymbol? field))
Completion\Providers\AbstractObjectInitializerCompletionProvider.cs (1)
115IFieldSymbol fieldSymbol => fieldSymbol.Type,
Completion\Providers\ImportCompletionProvider\AbstractExtensionMethodImportCompletionProvider.cs (1)
107IFieldSymbol 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)
121ImmutableArray<IFieldSymbol> fields, 465var tupleFieldNames = tupleType.TupleElements.SelectAsArray<IFieldSymbol, string>(f => f.Name); 480var tupleFieldNames = tupleType.TupleElements.SelectAsArray<IFieldSymbol, string>(f => f.Name); 670StringComparer comparer, ImmutableArray<IFieldSymbol> fields1, ImmutableArray<IFieldSymbol> fields2) 885var arguments = tupleType.TupleElements.SelectAsArray<IFieldSymbol, SyntaxNode>( 922ImmutableArray<IFieldSymbol> fields, SyntaxGenerator generator,
EditAndContinue\AbstractEditAndContinueAnalyzer.ActiveMembersBuilder.cs (2)
34if (member is IFieldSymbol or IPropertySymbol or IEventSymbol) 98if (oldMethod is IMethodSymbol or IPropertySymbol or IFieldSymbol or IEventSymbol)
EditAndContinue\AbstractEditAndContinueAnalyzer.cs (6)
317SymbolKind.Field => GetDisplayName((IFieldSymbol)symbol), 344internal virtual string GetDisplayName(IFieldSymbol symbol) 2417protected static bool ReturnTypesEquivalent(IFieldSymbol oldField, IFieldSymbol newField, bool exact) 2463return ReturnTypesEquivalent((IFieldSymbol)oldMember, (IFieldSymbol)newMember, exact);
EditAndContinue\Utilities\Extensions.cs (4)
170=> property.ContainingType.GetMembers().Any(static (member, property) => member is IFieldSymbol field && field.AssociatedSymbol == property, property); 186public static IFieldSymbol? GetPrimaryParameterBackingField(this IParameterSymbol parameter) 187=> (IFieldSymbol?)parameter.ContainingType.GetMembers().FirstOrDefault( 188static (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) 475return symbol is IFieldSymbol or IPropertySymbol &&
EncapsulateField\AbstractEncapsulateFieldService.cs (21)
41protected abstract Task<ImmutableArray<IFieldSymbol>> GetFieldsAsync(Document document, TextSpan span, CancellationToken cancellationToken); 50var firstField = fields[0]; 73foreach (var field in fields) 81private ImmutableArray<CodeAction> EncapsulateAllFields(Document document, ImmutableArray<IFieldSymbol> fields) 93private ImmutableArray<CodeAction> EncapsulateOneField(Document document, IFieldSymbol field) 110Document document, ImmutableArray<IFieldSymbol> fields, 140private async Task<Solution> EncapsulateFieldsInCurrentProcessAsync(Document document, ImmutableArray<IFieldSymbol> fields, bool updateReferences, CancellationToken cancellationToken) 146foreach (var field in fields) 153if (field.GetSymbolKey(cancellationToken).Resolve(compilation, cancellationToken: cancellationToken).Symbol is not IFieldSymbol currentField) 168IFieldSymbol field, 172var originalField = field; 186field = (IFieldSymbol)field.GetSymbolKey(cancellationToken).Resolve(compilation, cancellationToken: cancellationToken).Symbol!; 207field = (IFieldSymbol)semanticModel.GetRequiredDeclaredSymbol(newDeclaration, cancellationToken); 230bool updateReferences, Solution solution, Document document, IFieldSymbol field, string finalFieldName, string generatedPropertyName, CancellationToken cancellationToken) 254field = (IFieldSymbol)field.GetSymbolKey(cancellationToken).Resolve(compilation, cancellationToken: cancellationToken).Symbol!; 276IFieldSymbol field, 318IFieldSymbol field, 339IFieldSymbol field, 362protected abstract (string fieldName, string propertyName) GenerateFieldAndPropertyNames(IFieldSymbol field); 377protected static IMethodSymbol CreateSet(string originalFieldName, IFieldSymbol field, SyntaxGenerator factory) 396protected 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)
878var field = (IFieldSymbol)pair.Key;
GenerateConstructors\AbstractGenerateConstructorsCodeRefactoringProvider.cs (1)
63protected 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)
620if (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 (1)
587&& semanticModel.GetAllDeclaredSymbols(node, cancellationToken).SingleOrDefault() is IFieldSymbol fieldSymbol)
LanguageServices\AnonymousTypeDisplayService\AbstractStructuralTypeDisplayService.StructuralTypeCollectorVisitor.cs (2)
37public override void VisitField(IFieldSymbol symbol) 98foreach (var field in symbol.TupleElements)
LanguageServices\SymbolDisplayService\AbstractSymbolDisplayService.AbstractSymbolDescriptionBuilder.cs (3)
315else if (symbol is IFieldSymbol field) 538private async Task AddDescriptionForFieldAsync(IFieldSymbol symbol) 558private async Task<ImmutableArray<SymbolDisplayPart>> GetFieldPartsAsync(IFieldSymbol symbol)
MetadataAsSource\AbstractMetadataAsSourceService.WrappedFieldSymbol.cs (5)
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\MembersPuller.cs (2)
185else if (member is IFieldSymbol fieldSymbol) 498if (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 (8)
115private static ImmutableDictionary<IPropertySymbol, IFieldSymbol?> CreateDefinitionToBackingFieldMap(IEnumerable<ReferencedSymbol> propertyReferences) 117var definitionToBackingField = ImmutableDictionary.CreateBuilder<IPropertySymbol, IFieldSymbol?>(SymbolEquivalenceComparer.Instance); 153private static IFieldSymbol? GetBackingField(IPropertySymbol property) 194ImmutableDictionary<IPropertySymbol, IFieldSymbol?> propertyToBackingField, 214ImmutableDictionary<IPropertySymbol, IFieldSymbol?> propertyToBackingField, 235IDictionary<IPropertySymbol, IFieldSymbol?> propertyToBackingField, 293ImmutableDictionary<IPropertySymbol, IFieldSymbol?> definitionToBackingField, 343IDictionary<IPropertySymbol, IFieldSymbol?> definitionToBackingField,
RQName\RQNodeBuilder.cs (2)
25IFieldSymbol fieldSymbol => BuildField(fieldSymbol), 87private static RQMember? BuildField(IFieldSymbol symbol)
Shared\Extensions\ISymbolExtensions_2.cs (1)
45publicIcon = ((IFieldSymbol)symbol).IsConst ? Glyph.ConstantPublic : Glyph.FieldPublic;
Shared\Utilities\ExtractTypeHelpers.cs (2)
218var field = member as IFieldSymbol;
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\Analyzers\Core\Analyzers\PopulateSwitch\PopulateSwitchStatementHelpers.cs (1)
158if (member is not IFieldSymbol fieldSymbol || fieldSymbol.Type.SpecialType != SpecialType.None)
src\Analyzers\Core\Analyzers\RemoveUnusedMembers\AbstractRemoveUnusedMembersDiagnosticAnalyzer.cs (6)
373foreach (var field in initializer.InitializedFields) 532if (isInlineArray && member is IFieldSymbol { IsStatic: false }) 587if (member is IFieldSymbol { IsReadOnly: false, RefKind: RefKind.Ref }) 757case IPropertySymbol or IFieldSymbol: 785/// Backing fields have a non-null <see cref="IFieldSymbol.AssociatedSymbol"/>. 902return ((IFieldSymbol)memberSymbol).AssociatedSymbol == null;
src\Analyzers\Core\Analyzers\UseAutoProperty\AbstractUseAutoPropertyAnalyzer.cs (19)
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, 495protected IFieldSymbol? TryGetDirectlyAccessedFieldSymbol( 535ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> ineligibleFieldUsageIfOutsideProperty, 536ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldReads, 537ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites, 540using var _1 = PooledHashSet<IFieldSymbol>.GetInstance(out var reportedFields);
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\Analyzers\Core\Analyzers\UseAutoProperty\AnalysisResult.cs (1)
32IFieldSymbol Field,
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\Analyzers\Core\CodeFixes\GenerateConstructor\GenerateConstructorHelpers.cs (1)
355if (symbol is IFieldSymbol { IsConst: false } field)
src\Analyzers\Core\CodeFixes\GenerateVariable\AbstractGenerateVariableService.CodeAction.cs (1)
90var fieldSymbol = CodeGenerationSymbolFactory.CreateFieldSymbol(
src\Analyzers\Core\CodeFixes\GenerateVariable\AbstractGenerateVariableService.State.cs (1)
407=> symbol is IFieldSymbol field && field.IsReadOnly;
src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementHelpers.cs (4)
27.OfType<IFieldSymbol>() 43ImmutableArray<IFieldSymbol> fields, 65bool IsAssignedToFieldOrProperty(ImmutableArray<IFieldSymbol> fields, ImmutableArray<IPropertySymbol> properties, IParameterSymbol parameter) 68bool IsAssignedToField(IFieldSymbol field, IParameterSymbol parameter)
src\Analyzers\Core\CodeFixes\ImplementInterface\ImplementInterfaceGenerator_DisposePattern.cs (3)
120IFieldSymbol disposedValueField) 138IFieldSymbol disposedValueField) 233private static async Task<IFieldSymbol> CreateDisposedValueFieldAsync(
src\Analyzers\Core\CodeFixes\MakeFieldReadonly\AbstractMakeFieldReadonlyCodeFixProvider.cs (2)
79var symbol = (IFieldSymbol?)model.GetDeclaredSymbol(declarator, cancellationToken);
UseAutoProperty\AbstractUseAutoPropertyCodeFixProvider.cs (7)
58IFieldSymbol fieldSymbol, 203field = (IFieldSymbol?)field.GetSymbolKey(cancellationToken).Resolve(compilation, cancellationToken: cancellationToken).Symbol; 290private async Task<(IFieldSymbol? fieldSymbol, IPropertySymbol? propertySymbol)> MapDiagnosticToCurrentSolutionAsync( 306var fieldSymbol = (IFieldSymbol)fieldSemanticModel.GetRequiredDeclaredSymbol(declarator, cancellationToken); 321fieldSymbol = fieldSymbol.GetSymbolKey(cancellationToken).Resolve(currentCompilation, cancellationToken: cancellationToken).GetAnySymbol() as IFieldSymbol; 392IFieldSymbol field, LightweightRenameLocations renameLocations, TPropertyDeclaration propertyDeclaration, CancellationToken cancellationToken)
ValueTracking\ValueTracker.cs (2)
30or IFieldSymbol 87case IFieldSymbol:
Microsoft.CodeAnalysis.Features.UnitTests (5)
FindUsages\DefinitionItemFactoryTests.cs (5)
665var c = compilation.GetMember<IFieldSymbol>("C.F").Type; 702var tuple = (INamedTypeSymbol)compilation.GetMember<IFieldSymbol>("C.F").Type; 764var tuple = (INamedTypeSymbol)compilation.GetMember<IFieldSymbol>("C.F").Type; 820var type = (INamedTypeSymbol)compilation.GetMember<IFieldSymbol>("C.F").Type; 874var type = (INamedTypeSymbol)compilation.GetMember<IFieldSymbol>("C.F").Type;
Microsoft.CodeAnalysis.LanguageServer (1)
Services\LspExtractClassOptionsService.cs (1)
30IFieldSymbol fieldSymbol => !fieldSymbol.IsImplicitlyDeclared,
Microsoft.CodeAnalysis.PublicApiAnalyzers (10)
DeclarePublicApiAnalyzer.Impl.cs (2)
637else if (symbol is IFieldSymbol field) 935public override bool VisitField(IFieldSymbol symbol)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (7)
112public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 118if (member is IFieldSymbol associated && 142if (symbol is IFieldSymbol fieldSymbol 604IFieldSymbol fieldSymbol => fieldSymbol.Type, 618IFieldSymbol field => field.IsReadOnly, 847IFieldSymbol field => field.IsConst, 858IFieldSymbol field => field.IsReadOnly,
Microsoft.CodeAnalysis.Remote.ServiceHub (3)
Services\EncapsulateField\RemoteEncapsulateFieldService.cs (3)
36using var _ = ArrayBuilder<IFieldSymbol>.GetInstance(out var fields); 41var resolved = SymbolKey.ResolveString(key, compilation, cancellationToken: cancellationToken).GetAnySymbol() as IFieldSymbol;
Microsoft.CodeAnalysis.ResxSourceGenerator (20)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
279SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context), 317SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context),
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.FieldMetricData.cs (2)
17IFieldSymbol symbol, 29internal static FieldMetricData Compute(IFieldSymbol field, CodeMetricsAnalysisContext context)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.NamedTypeMetricData.cs (7)
75ImmutableHashSet<IFieldSymbol> filteredFieldsForComplexity = getFilteredFieldsForComplexity(); 84filteredFieldsForComplexity.Contains((IFieldSymbol)child.Symbol)) 111ImmutableHashSet<IFieldSymbol> getFilteredFieldsForComplexity() 113ImmutableHashSet<IFieldSymbol>.Builder? builder = null; 123builder ??= ImmutableHashSet.CreateBuilder<IFieldSymbol>(); 124builder.Add((IFieldSymbol)fieldData.Symbol); 128return builder?.ToImmutable() ?? ImmutableHashSet<IFieldSymbol>.Empty;
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\ComputationalComplexityMetrics.cs (1)
155foreach (var field in ((IFieldInitializerOperation)operation).InitializedFields)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (7)
112public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 118if (member is IFieldSymbol associated && 142if (symbol is IFieldSymbol fieldSymbol 604IFieldSymbol fieldSymbol => fieldSymbol.Type, 618IFieldSymbol field => field.IsReadOnly, 847IFieldSymbol field => field.IsConst, 858IFieldSymbol field => field.IsReadOnly,
Microsoft.CodeAnalysis.Test.Utilities (24)
Compilation\CompilationDifference.cs (1)
169var actual = EmitResult.Baseline.SynthesizedMembers.Single(e => e.Key.ToString() == typeName).Value.Where(s => s.Kind == SymbolKind.Field).Select(s => (IFieldSymbol)s.GetISymbol()).Select(f => f.Name + ": " + f.Type);
Compilation\OperationTreeVerifier.cs (1)
1542foreach (var local in operation.InitializedFields)
Compilation\TestOperationVisitor.cs (2)
1105foreach (var field in operation.InitializedFields) 1536case IFieldSymbol field:
CompilationVerifier.cs (1)
749.Select(f => $"{((IFieldSymbol)f.GetISymbol()).Type.ToString()} {f.Name}")
Diagnostics\CouldHaveMoreSpecificTypeAnalyzer.cs (8)
47Dictionary<IFieldSymbol, HashSet<INamedTypeSymbol>> fieldsSourceTypes = new Dictionary<IFieldSymbol, HashSet<INamedTypeSymbol>>(); 140foreach (IFieldSymbol initializedField in initializer.InitializedFields) 151foreach (IFieldSymbol field in fieldsSourceTypes.Keys) 232private static void AssignTo(IOperation target, Dictionary<ILocalSymbol, HashSet<INamedTypeSymbol>> localsSourceTypes, Dictionary<IFieldSymbol, HashSet<INamedTypeSymbol>> fieldsSourceTypes, IOperation sourceValue) 237private static void AssignTo(IOperation target, Dictionary<ILocalSymbol, HashSet<INamedTypeSymbol>> localsSourceTypes, Dictionary<IFieldSymbol, HashSet<INamedTypeSymbol>> fieldsSourceTypes, ITypeSymbol sourceType) 247IFieldSymbol targetField = ((IFieldReferenceOperation)target).Field; 298private void Report(CompilationAnalysisContext context, IFieldSymbol field, ITypeSymbol moreSpecificType, DiagnosticDescriptor descriptor)
Diagnostics\FieldCouldBeReadOnlyAnalyzer.cs (11)
39HashSet<IFieldSymbol> assignedToFields = new HashSet<IFieldSymbol>(); 40HashSet<IFieldSymbol> mightBecomeReadOnlyFields = new HashSet<IFieldSymbol>(); 91IFieldSymbol field = (IFieldSymbol)symbolContext.Symbol; 103foreach (IFieldSymbol couldBeReadOnlyField in mightBecomeReadOnlyFields) 111private static void AssignTo(IOperation target, bool inConstructor, ITypeSymbol staticConstructorType, HashSet<IFieldSymbol> assignedToFields, HashSet<IFieldSymbol> mightBecomeReadOnlyFields) 125IFieldSymbol targetField = fieldReference.Field; 142private void Report(CompilationAnalysisContext context, IFieldSymbol field, DiagnosticDescriptor descriptor)
Microsoft.CodeAnalysis.UnitTests (1)
Diagnostics\OperationTests.cs (1)
168ImmutableArray<IFieldSymbol>.Empty, ImmutableArray<ILocalSymbol>.Empty,
Microsoft.CodeAnalysis.VisualBasic (37)
Binding\MemberSemanticModel.vb (1)
563Public Overrides Function GetDeclaredSymbol(declarationSyntax As EnumMemberDeclarationSyntax, Optional cancellationToken As CancellationToken = Nothing) As IFieldSymbol
Compilation\SemanticModel.vb (1)
2547Public 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)
920Dim field As IFieldSymbol = boundFieldAccess.FieldSymbol 992Dim 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)
383Dim 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\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 (11)
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\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\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\VisualBasicCodeGenerationService.vb (2)
104field As IFieldSymbol, 555Public Overrides Function CreateFieldDeclaration(field As IFieldSymbol,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\LanguageServices\VisualBasicTypeInferenceService.TypeInferrer.vb (1)
614Return CreateResult(DirectCast(symbol, IFieldSymbol).Type)
Microsoft.CodeAnalysis.VisualBasic.Emit.UnitTests (33)
CodeGen\CodeGenTuples.vb (33)
5777Assert.True(DirectCast(mFirst, IFieldSymbol).IsExplicitlyNamedTupleElement) 5796Assert.False(DirectCast(mItem1, IFieldSymbol).IsExplicitlyNamedTupleElement) 6898Assert.All(tupleWithoutNames.GetMembers().OfType(Of IFieldSymbol)().Select(Function(f) f.Locations.FirstOrDefault()), 6951Assert.All(tupleWithoutNames.GetMembers().OfType(Of IFieldSymbol)().Select(Function(f) f.Locations.FirstOrDefault()), 6971Assert.All(tupleWithoutNames.GetMembers().OfType(Of IFieldSymbol)().Select(Function(f) f.Locations.FirstOrDefault()), 6992Assert.All(tupleWithSomeNames.GetMembers().OfType(Of IFieldSymbol)().Select(Function(f) f.Locations.FirstOrDefault()), 7010Assert.All(tupleWithoutNames.GetMembers().OfType(Of IFieldSymbol)().Select(Function(f) f.Locations.FirstOrDefault()), 7035Assert.All(tuple8WithoutNames.GetMembers().OfType(Of IFieldSymbol)().Select(Function(f) f.Locations.FirstOrDefault()), 7060Assert.All(tuple8WithNames.GetMembers().OfType(Of IFieldSymbol)().Select(Function(f) f.Locations.FirstOrDefault()), 7085Assert.All(tuple9WithoutNames.GetMembers().OfType(Of IFieldSymbol)().Select(Function(f) f.Locations.FirstOrDefault()), 7110Assert.All(tuple9WithNames.GetMembers().OfType(Of IFieldSymbol)().Select(Function(f) f.Locations.FirstOrDefault()), 7135Assert.All(tuple9WithNames.GetMembers().OfType(Of IFieldSymbol)().Select(Function(f) f.Locations.FirstOrDefault()), 7159Assert.All(tupleWithoutNames.GetMembers().OfType(Of IFieldSymbol)().Select(Function(f) f.Locations.FirstOrDefault()), 7544Dim tuple1 = DirectCast(DirectCast(comp.GetMember("Program.F"), IFieldSymbol).Type, INamedTypeSymbol) 7576Dim tuple1 = DirectCast(DirectCast(comp.GetMember("Program.F"), IFieldSymbol).Type, INamedTypeSymbol) 7608Dim tuple1 = DirectCast(DirectCast(comp.GetMember("Program.F"), IFieldSymbol).Type, INamedTypeSymbol) 7643Dim tuple1 = DirectCast(DirectCast(comp.GetMember("Program.F"), IFieldSymbol).Type, INamedTypeSymbol) 7669Dim tuple1 = DirectCast(DirectCast(comp.GetMember("Program.F"), IFieldSymbol).Type, INamedTypeSymbol) 7704Dim tuple1 = DirectCast(DirectCast(comp.GetMember("Program.F"), IFieldSymbol).Type, INamedTypeSymbol) 15384Assert.False(DirectCast(m3Item8, IFieldSymbol).IsExplicitlyNamedTupleElement) 15546Assert.False(DirectCast(m4Item8, IFieldSymbol).IsExplicitlyNamedTupleElement) 15566Assert.True(DirectCast(m4h4, IFieldSymbol).IsExplicitlyNamedTupleElement) 15800Assert.True(DirectCast(m5Item8, IFieldSymbol).IsExplicitlyNamedTupleElement) 16155Assert.False(DirectCast(m8Item8, IFieldSymbol).IsExplicitlyNamedTupleElement) 16175Assert.True(DirectCast(m8Item1, IFieldSymbol).IsExplicitlyNamedTupleElement) 16352Assert.False(DirectCast(m1Item1, IFieldSymbol).IsExplicitlyNamedTupleElement) 16375Assert.False(DirectCast(m2Item1, IFieldSymbol).IsExplicitlyNamedTupleElement) 16395Assert.True(DirectCast(m2a2, IFieldSymbol).IsExplicitlyNamedTupleElement) 23122VerifyTypeFromCSharp(DirectCast(DirectCast(containingType.GetMembers("F0").Single(), IFieldSymbol).Type, INamedTypeSymbol), TupleUnderlyingTypeValue.Nothing, "System.ValueTuple", "()") 23123VerifyTypeFromCSharp(DirectCast(DirectCast(containingType.GetMembers("F1").Single(), IFieldSymbol).Type, INamedTypeSymbol), TupleUnderlyingTypeValue.Nothing, "(System.Int32, System.Int32)", "(System.Int32, System.Int32)") 23124VerifyTypeFromCSharp(DirectCast(DirectCast(containingType.GetMembers("F2").Single(), IFieldSymbol).Type, INamedTypeSymbol), TupleUnderlyingTypeValue.Distinct, "(System.Int32 A, System.Int32 B)", "(A As System.Int32, B As System.Int32)") 23125VerifyTypeFromCSharp(DirectCast(DirectCast(containingType.GetMembers("F3").Single(), IFieldSymbol).Type, INamedTypeSymbol), TupleUnderlyingTypeValue.Nothing, "(System.Object, System.Object, System.Object, System.Object, System.Object, System.Object, System.Object, System.Object)", "(System.Object, System.Object, System.Object, System.Object, System.Object, System.Object, System.Object, System.Object)") 23126VerifyTypeFromCSharp(DirectCast(DirectCast(containingType.GetMembers("F4").Single(), IFieldSymbol).Type, INamedTypeSymbol), TupleUnderlyingTypeValue.Distinct, "(System.Object, System.Object B, System.Object, System.Object D, System.Object, System.Object F, System.Object, System.Object H)", "(System.Object, B As System.Object, System.Object, D As System.Object, System.Object, F As System.Object, System.Object, H As System.Object)")
Microsoft.CodeAnalysis.VisualBasic.Features (24)
Completion\CompletionProviders\EnumCompletionProvider.vb (2)
68If member.Kind = SymbolKind.Field AndAlso DirectCast(member, IFieldSymbol).IsConst AndAlso member.IsEditorBrowsable(options.MemberDisplayOptions.HideAdvancedMembers, syntaxContext.SemanticModel.Compilation) Then 91Dim symbolType = If(TryCast(symbol, IFieldSymbol)?.Type,
EncapsulateField\VisualBasicEncapsulateFieldService.vb (5)
70Protected Overrides Async Function GetFieldsAsync(document As Document, span As TextSpan, cancellationToken As CancellationToken) As Task(Of ImmutableArray(Of IFieldSymbol)) 88OfType(Of IFieldSymbol)(). 106Protected Overrides Function GenerateFieldAndPropertyNames(field As IFieldSymbol) As (fieldName As String, propertyName As String) 122Private Shared Function IsShadows(field As IFieldSymbol) As Boolean 126Private 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)
82ElseIf TypeOf symbol Is IFieldSymbol Then 83Return GetInitializerSourcePartsAsync(DirectCast(symbol, IFieldSymbol)) 141Private Overloads Async Function GetInitializerSourcePartsAsync(symbol As IFieldSymbol) As Task(Of ImmutableArray(Of SymbolDisplayPart))
QuickInfo\VisualBasicSemanticQuickInfoProvider.vb (2)
185ElseIf TypeOf symbol Is IFieldSymbol Then 186Return 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\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)
UseAutoProperty\VisualBasicUseAutoPropertyCodeFixProvider.vb (2)
50fieldSymbol As IFieldSymbol, 94Private 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.Semantic.UnitTests (5)
Compilation\SemanticModelAPITests.vb (2)
4658Dim symbol = DirectCast(semanticModel.GetSymbolInfo(node).Symbol, IFieldSymbol) 4793Dim symbol = DirectCast(semanticModel.GetSymbolInfo(node).Symbol, IFieldSymbol)
Diagnostics\GetDiagnosticsTests.vb (1)
722For Each field In namedType.GetMembers().OfType(Of IFieldSymbol)
Semantics\RefFieldTests.vb (2)
120Assert.Equal(CodeAnalysis.RefKind.None, DirectCast(field, IFieldSymbol).RefKind) 121Assert.Empty(DirectCast(field, IFieldSymbol).RefCustomModifiers)
Microsoft.CodeAnalysis.VisualBasic.Symbol.UnitTests (1)
SymbolsTests\Source\FieldTests.vb (1)
556Dim goo = DirectCast(s.GetMember(Of FieldSymbol)("goo"), IFieldSymbol)
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)
317Dim fieldSymbol = DirectCast(symbol, IFieldSymbol)
Simplification\Reducers\VisualBasicVariableDeclaratorReducer.vb (1)
149(TypeOf declaredSymbol IsNot ILocalSymbol AndAlso TypeOf declaredSymbol IsNot IFieldSymbol) Then
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\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\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\CodeGeneration\VisualBasicCodeGenerationService.vb (2)
104field As IFieldSymbol, 555Public Overrides Function CreateFieldDeclaration(field As IFieldSymbol,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\VisualBasic\LanguageServices\VisualBasicTypeInferenceService.TypeInferrer.vb (1)
614Return CreateResult(DirectCast(symbol, IFieldSymbol).Type)
Microsoft.CodeAnalysis.VisualBasic.Workspaces.UnitTests (3)
CodeGeneration\SyntaxGeneratorTests.vb (3)
3470Dim symbolX = DirectCast(symbolC.GetMembers("X").First(), IFieldSymbol) 3471Dim symbolY = DirectCast(symbolC.GetMembers("Y").First(), IFieldSymbol) 3472Dim symbolZ = DirectCast(symbolC.GetMembers("Z").First(), IFieldSymbol)
Microsoft.CodeAnalysis.Workspaces (96)
Editing\DeclarationModifiers.cs (3)
66IFieldSymbol or 71var field = symbol as IFieldSymbol;
Editing\SyntaxGenerator.cs (3)
131public SyntaxNode FieldDeclaration(IFieldSymbol field) 142public SyntaxNode FieldDeclaration(IFieldSymbol field, SyntaxNode? initializer) 722return FieldDeclaration((IFieldSymbol)symbol);
FindSymbols\FindReferences\Finders\AbstractMemberScopedReferenceFinder.cs (1)
84if (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)
346if (symbol is IFieldSymbol { IsImplicitlyDeclared: true, AssociatedSymbol: IPropertySymbol associatedProperty })
Rename\SymbolicRenameLocations.ReferenceProcessing.cs (1)
51if (referencedSymbol.Kind == SymbolKind.Field && originalSymbol.Equals(((IFieldSymbol)referencedSymbol).AssociatedSymbol))
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\INamedTypeSymbolExtensions.cs (2)
485var fieldSymbol = (IFieldSymbol)symbol;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\IPropertySymbolExtensions.cs (2)
11public static IFieldSymbol? GetBackingFieldIfAny(this IPropertySymbol property) 13.OfType<IFieldSymbol>()
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ISymbolExtensions.cs (5)
320=> symbol is IFieldSymbol { ContainingType.IsTupleType: true }; 328IFieldSymbol fieldSymbol => !fieldSymbol.IsReadOnly && !fieldSymbol.IsConst, 334=> symbol is IFieldSymbol { IsRequired: true } or IPropertySymbol { IsRequired: true }; 339IFieldSymbol fieldSymbol => fieldSymbol.Type, 624IFieldSymbol fieldSymbol => fieldSymbol.Type,
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ISymbolExtensions.RequiresUnsafeModifierVisitor.cs (1)
44public override bool VisitField(IFieldSymbol symbol)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ITypeSymbolExtensions.cs (1)
696if (member is not IFieldSymbol fieldSymbol)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\NamingStyles\Serialization\SymbolSpecification.cs (2)
519if (kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsReadOnly) 527if ((kind == SymbolKind.Field && ((IFieldSymbol)symbol).IsConst) ||
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.cs (1)
65/// <item>Two <see cref="IFieldSymbol"/>s are the "same" if they have
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\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.SymbolKeyWriter.cs (1)
347public override void VisitField(IFieldSymbol fieldSymbol)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\SymbolKey\SymbolKey.TupleTypeSymbolKey.cs (2)
27foreach (var element in symbol.TupleElements) 41foreach (var element in symbol.TupleElements)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\EnumValueUtilities.cs (1)
23.OfType<IFieldSymbol>()
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\SymbolEquivalenceComparer.EquivalenceVisitor.cs (8)
119SymbolKind.Field => FieldsAreEquivalent((IFieldSymbol)x, (IFieldSymbol)y, equivalentTypesWithDifferingAssemblies), 150private bool FieldsAreEquivalent(IFieldSymbol x, IFieldSymbol y, Dictionary<INamedTypeSymbol, INamedTypeSymbol>? equivalentTypesWithDifferingAssemblies) 432var xElement = xElements[i]; 433var yElement = yElements[i]; 449var xElement = xElements[i]; 450var yElement = yElements[i];
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Utilities\SymbolEquivalenceComparer.GetHashCodeVisitor.cs (2)
62SymbolKind.Field => CombineHashCodes((IFieldSymbol)x, currentHash), 89private int CombineHashCodes(IFieldSymbol x, int currentHash)
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\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\AbstractFlagsEnumGenerator.cs (17)
13internal abstract class AbstractFlagsEnumGenerator : IComparer<(IFieldSymbol field, ulong value)> 64var allFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 67var usedFieldsAndValues = new List<(IFieldSymbol field, ulong value)>(); 74List<(IFieldSymbol field, ulong value)> allFieldsAndValues, 75List<(IFieldSymbol field, ulong value)> usedFieldsAndValues) 125var zeroField = GetZeroField(allFieldsAndValues); 138IFieldSymbol field, INamedTypeSymbol enumType, SpecialType underlyingSpecialType) 153private static IFieldSymbol? GetZeroField(List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 169List<(IFieldSymbol field, ulong value)> allFieldsAndValues) 173foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 192foreach (var field in enumType.GetMembers().OfType<IFieldSymbol>()) 206int IComparer<(IFieldSymbol field, ulong value)>.Compare((IFieldSymbol field, ulong value) x, (IFieldSymbol field, ulong value) y)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationHelpers.cs (1)
158.OfType<IFieldSymbol>()
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerationSymbolFactory.cs (3)
107public static IFieldSymbol CreateFieldSymbol( 594internal static IFieldSymbol CreateFieldSymbol( 595IFieldSymbol field,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\CodeGenerator.cs (1)
36public static Task<Document> AddFieldDeclarationAsync(CodeGenerationSolutionContext context, INamedTypeSymbol destination, IFieldSymbol field, CancellationToken cancellationToken)
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\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationAbstractNamedTypeSymbol.cs (1)
23public ImmutableArray<IFieldSymbol> TupleElements { get; protected set; }
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\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\CodeGeneration\Symbols\CodeGenerationFieldSymbol.cs (3)
25object constantValue) : CodeGenerationSymbol(containingType?.ContainingAssembly, containingType, attributes, accessibility, modifiers, name), IFieldSymbol 39public new IFieldSymbol OriginalDefinition 47public IFieldSymbol CorrespondingTupleField => null;
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions.cs (1)
89IFieldSymbol field => field.Type,
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
506.OfType<IFieldSymbol>()
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\Core\LanguageServices\InitializeParameter\InitializeParameterHelpersCore.cs (1)
152if (memberReference.Member is IFieldSymbol or IPropertySymbol)
Microsoft.CodeAnalysis.Workspaces.UnitTests (26)
FindReferencesTests.cs (2)
129var symbol = (IFieldSymbol)(await project.GetCompilationAsync()).GetTypeByMetadataName("C").GetMembers("X").First();
SymbolKeyTests.cs (14)
151Assert.True(symbols.Any(s => s is IFieldSymbol { MetadataName: "" })); 167Assert.True(symbols.Any(s => s is IFieldSymbol { MetadataName: "" })); 183Assert.True(symbols.Any(s => s is IFieldSymbol { MetadataName: "" })); 198Assert.False(symbols.Any(s => s is IFieldSymbol { MetadataName: "" })); 213Assert.True(symbols.Any(s => s is IFieldSymbol { MetadataName: "" })); 228Assert.False(symbols.Any(s => s is IFieldSymbol { MetadataName: "" })); 243Assert.True(symbols.Any(s => s is IFieldSymbol { MetadataName: "" })); 258Assert.False(symbols.Any(s => s is IFieldSymbol { MetadataName: "" })); 273Assert.True(symbols.Any(s => s is IFieldSymbol { MetadataName: "" })); 359TestRoundTrip(GetDeclaredSymbols(compilation).OfType<IFieldSymbol>().Select(fs => fs.Type), compilation); 377TestRoundTrip(GetDeclaredSymbols(compilation).OfType<IFieldSymbol>().Select(fs => fs.Type), compilation, s => s.ToDisplayString()); 685var refSymbols = GetDeclaredSymbols(compilation).OfType<IFieldSymbol>().Select(f => f.Type).ToList(); 704var symbols = GetDeclaredSymbols(compilation).OfType<IFieldSymbol>().Select(f => f.Type).ToList(); 1257var fields = GetDeclaredSymbols(comp).OfType<IFieldSymbol>().Select(f => f.Type);
UtilityTest\DocumentationCommentIdTests.cs (10)
127CheckDeclarationId<IFieldSymbol>("F:Acme.ValueType.total", compilation, s => s.Name == "total"); 128CheckDeclarationId<IFieldSymbol>("F:Acme.Widget.NestedClass.value", compilation, s => s.Name == "value"); 129CheckDeclarationId<IFieldSymbol>("F:Acme.Widget.message", compilation, s => s.Name == "message"); 130CheckDeclarationId<IFieldSymbol>("F:Acme.Widget.defaultColor", compilation, s => s.Name == "defaultColor"); 131CheckDeclarationId<IFieldSymbol>("F:Acme.Widget.PI", compilation, s => s.Name == "PI"); 132CheckDeclarationId<IFieldSymbol>("F:Acme.Widget.monthlyAverage", compilation, s => s.Name == "monthlyAverage"); 133CheckDeclarationId<IFieldSymbol>("F:Acme.Widget.array1", compilation, s => s.Name == "array1"); 134CheckDeclarationId<IFieldSymbol>("F:Acme.Widget.array2", compilation, s => s.Name == "array2"); 135CheckDeclarationId<IFieldSymbol>("F:Acme.Widget.pCount", compilation, s => s.Name == "pCount"); 136CheckDeclarationId<IFieldSymbol>("F:Acme.Widget.ppValues", compilation, s => s.Name == "ppValues");
Microsoft.Extensions.Logging.Generators (2)
LoggerMessageGenerator.Parser.cs (2)
649foreach (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)
67IFieldSymbol 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)
377if (symbol is not IFieldSymbol fieldSymbol || 706var fieldSymbol = member as IFieldSymbol;
Microsoft.Gen.Metrics (3)
Parser.cs (3)
377if (symbol is not IFieldSymbol fieldSymbol || 706var fieldSymbol = member as IFieldSymbol;
Microsoft.Gen.MetricsReports (3)
src\Generators\Microsoft.Gen.Metrics\Parser.cs (3)
377if (symbol is not IFieldSymbol fieldSymbol || 706var 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;
Microsoft.VisualStudio.LanguageServices (6)
Library\ObjectBrowser\AbstractDescriptionBuilder.cs (2)
211await BuildFieldDeclarationAsync((IFieldSymbol)symbol, options, cancellationToken).ConfigureAwait(true); 236protected abstract Task BuildFieldDeclarationAsync(IFieldSymbol fieldSymbol, _VSOBJDESCOPTIONS options, CancellationToken cancellationToken);
Library\ObjectBrowser\Lists\MemberListItem.cs (2)
24var fieldSymbol = (IFieldSymbol)symbol;
Progression\GraphBuilder.cs (2)
280node = await GetOrCreateNodeForFieldAsync(graph, (IFieldSymbol)symbol, solution, cancellationToken).ConfigureAwait(false); 635private static async Task<GraphNode> GetOrCreateNodeForFieldAsync(Graph graph, IFieldSymbol field, Solution solution, CancellationToken cancellationToken)
Microsoft.VisualStudio.LanguageServices.CSharp (11)
CodeModel\CSharpCodeModelService_Prototype.cs (7)
31return GetVariablePrototype((IFieldSymbol)symbol, flags); 60return GetVariablePrototype(variableDeclarator, (IFieldSymbol)symbol, flags); 62return GetVariablePrototype(enumMember, (IFieldSymbol)symbol, flags); 223private string GetVariablePrototype(IFieldSymbol symbol, PrototypeFlags flags) 244private string GetVariablePrototype(VariableDeclaratorSyntax node, IFieldSymbol symbol, PrototypeFlags flags) 274private string GetVariablePrototype(EnumMemberDeclarationSyntax node, IFieldSymbol symbol, PrototypeFlags flags) 477private void AppendVariablePrototype(StringBuilder builder, IFieldSymbol symbol, PrototypeFlags flags, string baseName)
ObjectBrowser\DescriptionBuilder.cs (3)
244var fieldSymbol = memberSymbol as IFieldSymbol; 466IFieldSymbol fieldSymbol, _VSOBJDESCOPTIONS options, CancellationToken cancellationToken)
Progression\CSharpProgressionLanguageService.cs (1)
118case IFieldSymbol f: return f.ContainingType.TypeKind == TypeKind.Enum ? null : f.Type;
Microsoft.VisualStudio.LanguageServices.CSharp.UnitTests (1)
GlyphExtensionsTests.cs (1)
239var fieldMock = symbolMock.As<IFieldSymbol>();
Microsoft.VisualStudio.LanguageServices.VisualBasic (5)
CodeModel\VisualBasicCodeModelService.vb (1)
1397Dim fieldSymbol = TryCast(symbol, IFieldSymbol)
CodeModel\VisualBasicCodeModelService_Prototype.vb (2)
36Return GetVariablePrototype(DirectCast(symbol, IFieldSymbol), flags) 107Private Shared Function GetVariablePrototype(symbol As IFieldSymbol, flags As PrototypeFlags) As String
ObjectBrowser\DescriptionBuilder.vb (2)
241fieldSymbol As IFieldSymbol, 357Dim fieldSymbol = TryCast(memberSymbol, IFieldSymbol)
Roslyn.Diagnostics.Analyzers (35)
AbstractDoNotCopyValue.cs (5)
276public override void VisitField(IFieldSymbol symbol) 712foreach (var field in operation.InitializedFields) 1399var field = ((IFieldReferenceOperation)operation).Field; 1475private void CheckFieldSymbolInUnsupportedContext(IOperation operation, IFieldSymbol? field) 1522CheckFieldSymbolInUnsupportedContext(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)
212mefConstructionType.GetMembers("ImportingConstructorMessage").OfType<IFieldSymbol>().Any())
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
279SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context), 317SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context),
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.FieldMetricData.cs (2)
17IFieldSymbol symbol, 29internal static FieldMetricData Compute(IFieldSymbol field, CodeMetricsAnalysisContext context)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.NamedTypeMetricData.cs (7)
75ImmutableHashSet<IFieldSymbol> filteredFieldsForComplexity = getFilteredFieldsForComplexity(); 84filteredFieldsForComplexity.Contains((IFieldSymbol)child.Symbol)) 111ImmutableHashSet<IFieldSymbol> getFilteredFieldsForComplexity() 113ImmutableHashSet<IFieldSymbol>.Builder? builder = null; 123builder ??= ImmutableHashSet.CreateBuilder<IFieldSymbol>(); 124builder.Add((IFieldSymbol)fieldData.Symbol); 128return builder?.ToImmutable() ?? ImmutableHashSet<IFieldSymbol>.Empty;
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\ComputationalComplexityMetrics.cs (1)
155foreach (var field in ((IFieldInitializerOperation)operation).InitializedFields)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (7)
112public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 118if (member is IFieldSymbol associated && 142if (symbol is IFieldSymbol fieldSymbol 604IFieldSymbol fieldSymbol => fieldSymbol.Type, 618IFieldSymbol field => field.IsReadOnly, 847IFieldSymbol field => field.IsConst, 858IFieldSymbol field => field.IsReadOnly,
Roslyn.Test.PdbUtilities (1)
EditAndContinue\EditAndContinueTest.GenerationVerifier.cs (1)
137.Select(s => (IFieldSymbol)s.GetISymbol()).Select(f => f.Name + ": " + f.Type);
SemanticSearch.BuildTask (6)
GenerateFilteredReferenceAssembliesTask.cs (6)
146var fields = new List<IFieldSymbol>(); 281List<IFieldSymbol> fields, 307case IFieldSymbol field: 373var fields = new List<IFieldSymbol>(); 511private static unsafe void UpdateFieldDefinitions(BinaryWriter writer, MetadataReader metadataReader, ImmutableArray<ApiPattern> patterns, ImmutableArray<IFieldSymbol> symbols, int metadataOffset) 519var symbol = GetSymbolWithToken(symbols, ref symbolIndex, handle);
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)
949foreach (IFieldSymbol fieldInfo in members.OfType<IFieldSymbol>()) 1122Debug.Assert(memberInfo is IFieldSymbol or IPropertySymbol); 1242Debug.Assert(memberInfo is IFieldSymbol or IPropertySymbol); 1405case IFieldSymbol fieldInfo:
System.Text.RegularExpressions.Generator (1)
UpgradeToGeneratedRegexCodeFixer.cs (1)
295fieldReferenceOperation.Member is IFieldSymbol fieldSymbol && fieldSymbol.IsConst)
System.Windows.Forms.PrivateSourceGenerators (1)
System\Windows\Forms\SourceGenerators\EnumValidationInfo.cs (1)
20if (member is IFieldSymbol
Test.Utilities (8)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (7)
112public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 118if (member is IFieldSymbol associated && 142if (symbol is IFieldSymbol fieldSymbol 604IFieldSymbol fieldSymbol => fieldSymbol.Type, 618IFieldSymbol field => field.IsReadOnly, 847IFieldSymbol field => field.IsConst, 858IFieldSymbol field => field.IsReadOnly,
Text.Analyzers (21)
IdentifiersShouldBeSpelledCorrectly.cs (1)
316case IFieldSymbol:
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.cs (2)
279SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context), 317SymbolKind.Field => FieldMetricData.Compute((IFieldSymbol)symbol, context),
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.FieldMetricData.cs (2)
17IFieldSymbol symbol, 29internal static FieldMetricData Compute(IFieldSymbol field, CodeMetricsAnalysisContext context)
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\CodeAnalysisMetricData.NamedTypeMetricData.cs (7)
75ImmutableHashSet<IFieldSymbol> filteredFieldsForComplexity = getFilteredFieldsForComplexity(); 84filteredFieldsForComplexity.Contains((IFieldSymbol)child.Symbol)) 111ImmutableHashSet<IFieldSymbol> getFilteredFieldsForComplexity() 113ImmutableHashSet<IFieldSymbol>.Builder? builder = null; 123builder ??= ImmutableHashSet.CreateBuilder<IFieldSymbol>(); 124builder.Add((IFieldSymbol)fieldData.Symbol); 128return builder?.ToImmutable() ?? ImmutableHashSet<IFieldSymbol>.Empty;
src\RoslynAnalyzers\Utilities\Compiler\CodeMetrics\ComputationalComplexityMetrics.cs (1)
155foreach (var field in ((IFieldInitializerOperation)operation).InitializedFields)
src\RoslynAnalyzers\Utilities\Compiler\Extensions\IPropertySymbolExtensions.cs (1)
20=> propertySymbol.ContainingType.GetMembers().OfType<IFieldSymbol>().Any(f => f.IsImplicitlyDeclared && propertySymbol.Equals(f.AssociatedSymbol));
src\RoslynAnalyzers\Utilities\Compiler\Extensions\ISymbolExtensions.cs (7)
112public static bool IsPropertyWithBackingField([NotNullWhen(returnValue: true)] this ISymbol? symbol, [NotNullWhen(true)] out IFieldSymbol? backingField) 118if (member is IFieldSymbol associated && 142if (symbol is IFieldSymbol fieldSymbol 604IFieldSymbol fieldSymbol => fieldSymbol.Type, 618IFieldSymbol field => field.IsReadOnly, 847IFieldSymbol field => field.IsConst, 858IFieldSymbol field => field.IsReadOnly,