11 implementations of IFieldSymbol
GenerateDocumentationAndConfigFiles (1)
Microsoft.CodeAnalysis.Analyzers (1)
Microsoft.CodeAnalysis.BannedApiAnalyzers (1)
Microsoft.CodeAnalysis.CodeStyle.Fixes (1)
Microsoft.CodeAnalysis.CSharp (1)
Microsoft.CodeAnalysis.Features (1)
Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers (1)
Microsoft.CodeAnalysis.VisualBasic (1)
Microsoft.CodeAnalysis.Workspaces (1)
Roslyn.Diagnostics.Analyzers (1)
Text.Analyzers (1)
2258 references to IFieldSymbol
GenerateDocumentationAndConfigFiles (84)
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\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
501.OfType<IFieldSymbol>()
ILLink.RoslynAnalyzer (31)
Metrics (50)
Metrics.Legacy (50)
Microsoft.Analyzers.Local (2)
Microsoft.AspNetCore.App.Analyzers (1)
Microsoft.AspNetCore.Components.Analyzers (2)
Microsoft.AspNetCore.Components.SdkAnalyzers (1)
Microsoft.AspNetCore.Mvc.Api.Analyzers (1)
Microsoft.CodeAnalysis (26)
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; }
Microsoft.CodeAnalysis.Analyzers (123)
MetaAnalyzers\DiagnosticDescriptorCreationAnalyzer.cs (15)
29using PooledFieldToCustomTagsConcurrentDictionary = PooledConcurrentDictionary<IFieldSymbol, ImmutableArray<string>>;
30using PooledFieldToResourceNameAndFileNameConcurrentDictionary = PooledConcurrentDictionary<IFieldSymbol, (string nameOfResource, string resourceFileName)>;
31using PooledLocalizabeStringsConcurrentDictionary = PooledConcurrentDictionary<INamedTypeSymbol, PooledConcurrentSet<(IFieldSymbol field, IArgumentOperation argument)>>;
296foreach (var field in fieldInitializer.InitializedFields)
334var localsToDescriptorsMap = PooledConcurrentDictionary<ILocalSymbol, PooledConcurrentSet<IFieldSymbol>>.GetInstance(SymbolEqualityComparer.Default);
336var fieldsUsedForCompilationEndReportDiagnostic = PooledConcurrentSet<IFieldSymbol>.GetInstance(SymbolEqualityComparer.Default);
395static void AddToLocalsToDescriptorsMap(ILocalSymbol local, IFieldSymbol field, PooledConcurrentDictionary<ILocalSymbol, PooledConcurrentSet<IFieldSymbol>> localsToDescriptorsMap)
400var set = PooledConcurrentSet<IFieldSymbol>.GetInstance(SymbolEqualityComparer.Default);
419foreach (var field in fields)
424foreach (var field in fieldsUsedForCompilationEndReportDiagnostic)
435void AnalyzeField(IFieldSymbol field)
835var builder = localizableStringsMap.GetOrAdd(containingType, _ => PooledConcurrentSet<(IFieldSymbol, IArgumentOperation)>.GetInstance());
1101foreach (var field in fieldInitializerOperation.InitializedFields)
1199var analyzer = ((IFieldSymbol)operationAnalysisContext.ContainingSymbol).ContainingType.OriginalDefinition;
MetaAnalyzers\ReportDiagnosticAnalyzer.cs (12)
119private ImmutableDictionary<INamedTypeSymbol, ImmutableArray<IFieldSymbol>> _supportedDescriptorFieldsMap;
127_supportedDescriptorFieldsMap = ImmutableDictionary<INamedTypeSymbol, ImmutableArray<IFieldSymbol>>.Empty;
138ImmutableArray<IFieldSymbol> descriptorFields = GetSupportedDescriptors(symbolContext.Compilation, (INamedTypeSymbol)symbolContext.Symbol, symbolContext.CancellationToken);
145private ImmutableArray<IFieldSymbol> GetSupportedDescriptors(Compilation compilation, INamedTypeSymbol analyzer, CancellationToken cancellationToken)
147if (_supportedDescriptorFieldsMap.TryGetValue(analyzer, out ImmutableArray<IFieldSymbol> descriptorFields))
179private ImmutableArray<IFieldSymbol> GetReferencedDescriptorFields(SyntaxNode syntax, SemanticModel semanticModel, CancellationToken cancellationToken)
181ImmutableArray<IFieldSymbol>.Builder builder = ImmutableArray.CreateBuilder<IFieldSymbol>();
187var field = (IFieldSymbol)symbol;
190builder.Add((IFieldSymbol)symbol);
241ImmutableArray<IFieldSymbol> descriptorFields = GetReferencedDescriptorFields(diagnosticInitializer, semanticModel, symbolContext.CancellationToken);
src\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\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
501.OfType<IFieldSymbol>()
Microsoft.CodeAnalysis.AnalyzerUtilities (68)
Microsoft.CodeAnalysis.BannedApiAnalyzers (96)
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\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
501.OfType<IFieldSymbol>()
Microsoft.CodeAnalysis.CodeStyle (83)
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\UseAutoProperty\AbstractUseAutoPropertyAnalyzer.cs (20)
51private static readonly ObjectPool<ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>>> s_fieldToUsageLocationPool = new(() => []);
58protected static void AddFieldUsage(ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites, IFieldSymbol field, SyntaxNode location)
61private static void ClearAndFree(ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> multiMap)
91SemanticModel semanticModel, IMethodSymbol accessor, HashSet<string> fieldNames, HashSet<IFieldSymbol> result, CancellationToken cancellationToken);
94HashSet<string> fieldNames, ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> ineligibleFieldUsageIfOutsideProperty, SemanticModel semanticModel, SyntaxNode codeBlock, CancellationToken cancellationToken);
122if (member is IFieldSymbol
222ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldReads,
223ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites,
236if (semanticModel.GetSymbolInfo(identifierName, cancellationToken).Symbol is not IFieldSymbol field)
268using var _ = PooledHashSet<IFieldSymbol>.GetInstance(out var set);
284using var _ = PooledHashSet<IFieldSymbol>.GetInstance(out var set);
290private IFieldSymbol? CheckFieldAccessExpression(
309IFieldSymbol field,
482var getterField = getterFields.TrivialField ?? getterFields.NonTrivialFields.Single();
498protected IFieldSymbol? TryGetDirectlyAccessedFieldSymbol(
538ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> ineligibleFieldUsageIfOutsideProperty,
539ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldReads,
540ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites,
543using var _1 = PooledHashSet<IFieldSymbol>.GetInstance(out var reportedFields);
Microsoft.CodeAnalysis.CodeStyle.Fixes (59)
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\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
501.OfType<IFieldSymbol>()
Microsoft.CodeAnalysis.CSharp (45)
Microsoft.CodeAnalysis.CSharp.CodeStyle (21)
src\Analyzers\CSharp\Analyzers\MakeStructFieldsWritable\CSharpMakeStructFieldsWritableDiagnosticAnalyzer.cs (1)
79.OfType<IFieldSymbol>()
Microsoft.CodeAnalysis.CSharp.CodeStyle.Fixes (40)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (1)
1480case IFieldSymbol field:
Microsoft.CodeAnalysis.CSharp.EditorFeatures.UnitTests (1)
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (46)
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)
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (36)
Microsoft.CodeAnalysis.CSharp.Features (88)
src\Analyzers\CSharp\Analyzers\MakeStructFieldsWritable\CSharpMakeStructFieldsWritableDiagnosticAnalyzer.cs (1)
79.OfType<IFieldSymbol>()
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (35)
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (106)
Microsoft.CodeAnalysis.CSharp.Test.Utilities (1)
Microsoft.CodeAnalysis.CSharp.Workspaces (20)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (1)
1480case IFieldSymbol field:
Microsoft.CodeAnalysis.CSharp.Workspaces.UnitTests (6)
Microsoft.CodeAnalysis.EditorFeatures (1)
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (91)
Microsoft.CodeAnalysis.EditorFeatures2.UnitTests (2)
Microsoft.CodeAnalysis.ExpressionEvaluator.ExpressionCompiler (1)
Microsoft.CodeAnalysis.Extensions.Package (21)
Microsoft.CodeAnalysis.Features (188)
EncapsulateField\AbstractEncapsulateFieldService.cs (21)
42protected abstract Task<ImmutableArray<IFieldSymbol>> GetFieldsAsync(Document document, TextSpan span, CancellationToken cancellationToken);
51var firstField = fields[0];
74foreach (var field in fields)
82private ImmutableArray<CodeAction> EncapsulateAllFields(Document document, ImmutableArray<IFieldSymbol> fields)
94private ImmutableArray<CodeAction> EncapsulateOneField(Document document, IFieldSymbol field)
111Document document, ImmutableArray<IFieldSymbol> fields,
141private async Task<Solution> EncapsulateFieldsInCurrentProcessAsync(Document document, ImmutableArray<IFieldSymbol> fields, bool updateReferences, CancellationToken cancellationToken)
147foreach (var field in fields)
154if (field.GetSymbolKey(cancellationToken).Resolve(compilation, cancellationToken: cancellationToken).Symbol is not IFieldSymbol currentField)
169IFieldSymbol field,
173var originalField = field;
187field = (IFieldSymbol)field.GetSymbolKey(cancellationToken).Resolve(compilation, cancellationToken: cancellationToken).Symbol!;
208field = (IFieldSymbol)semanticModel.GetRequiredDeclaredSymbol(newDeclaration, cancellationToken);
231bool updateReferences, Solution solution, Document document, IFieldSymbol field, string finalFieldName, string generatedPropertyName, CancellationToken cancellationToken)
255field = (IFieldSymbol)field.GetSymbolKey(cancellationToken).Resolve(compilation, cancellationToken: cancellationToken).Symbol!;
277IFieldSymbol field,
319IFieldSymbol field,
340IFieldSymbol field,
363protected abstract (string fieldName, string propertyName) GenerateFieldAndPropertyNames(IFieldSymbol field);
378protected static IMethodSymbol CreateSet(string originalFieldName, IFieldSymbol field, SyntaxGenerator factory)
397protected static IMethodSymbol CreateGet(string originalFieldName, IFieldSymbol field, SyntaxGenerator factory)
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\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,
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\UseAutoProperty\AbstractUseAutoPropertyAnalyzer.cs (20)
51private static readonly ObjectPool<ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>>> s_fieldToUsageLocationPool = new(() => []);
58protected static void AddFieldUsage(ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites, IFieldSymbol field, SyntaxNode location)
61private static void ClearAndFree(ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> multiMap)
91SemanticModel semanticModel, IMethodSymbol accessor, HashSet<string> fieldNames, HashSet<IFieldSymbol> result, CancellationToken cancellationToken);
94HashSet<string> fieldNames, ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> ineligibleFieldUsageIfOutsideProperty, SemanticModel semanticModel, SyntaxNode codeBlock, CancellationToken cancellationToken);
122if (member is IFieldSymbol
222ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldReads,
223ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites,
236if (semanticModel.GetSymbolInfo(identifierName, cancellationToken).Symbol is not IFieldSymbol field)
268using var _ = PooledHashSet<IFieldSymbol>.GetInstance(out var set);
284using var _ = PooledHashSet<IFieldSymbol>.GetInstance(out var set);
290private IFieldSymbol? CheckFieldAccessExpression(
309IFieldSymbol field,
482var getterField = getterFields.TrivialField ?? getterFields.NonTrivialFields.Single();
498protected IFieldSymbol? TryGetDirectlyAccessedFieldSymbol(
538ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> ineligibleFieldUsageIfOutsideProperty,
539ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldReads,
540ConcurrentDictionary<IFieldSymbol, ConcurrentSet<SyntaxNode>> fieldWrites,
543using var _1 = PooledHashSet<IFieldSymbol>.GetInstance(out var reportedFields);
Microsoft.CodeAnalysis.Features.UnitTests (5)
Microsoft.CodeAnalysis.LanguageServer (1)
Microsoft.CodeAnalysis.PerformanceSensitiveAnalyzers (96)
Microsoft.CodeAnalysis.PublicApiAnalyzers (52)
Microsoft.CodeAnalysis.Remote.ServiceHub (2)
Microsoft.CodeAnalysis.ResxSourceGenerator (50)
Microsoft.CodeAnalysis.Test.Utilities (24)
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)
Microsoft.CodeAnalysis.UnitTests (1)
Microsoft.CodeAnalysis.VisualBasic (37)
Microsoft.CodeAnalysis.VisualBasic.CodeStyle (2)
Microsoft.CodeAnalysis.VisualBasic.CodeStyle.Fixes (11)
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)
Microsoft.CodeAnalysis.VisualBasic.Semantic.UnitTests (5)
Microsoft.CodeAnalysis.VisualBasic.Symbol.UnitTests (1)
Microsoft.CodeAnalysis.VisualBasic.Workspaces (17)
Microsoft.CodeAnalysis.VisualBasic.Workspaces.UnitTests (3)
Microsoft.CodeAnalysis.Workspaces (95)
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\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
501.OfType<IFieldSymbol>()
Microsoft.CodeAnalysis.Workspaces.UnitTests (26)
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)
Microsoft.Gen.ComplianceReports (2)
Microsoft.Gen.Logging (2)
Microsoft.Gen.MetadataExtractor (5)
Microsoft.Gen.Metrics (3)
Microsoft.Gen.MetricsReports (3)
Microsoft.Interop.LibraryImportGenerator (1)
Microsoft.Interop.SourceGeneration (2)
Microsoft.Maui.Controls.BindingSourceGen (3)
Microsoft.ML.InternalCodeAnalyzer (5)
Microsoft.VisualStudio.LanguageServices (4)
Microsoft.VisualStudio.LanguageServices.CSharp (10)
CodeModel\CSharpCodeModelService_Prototype.cs (7)
30return GetVariablePrototype((IFieldSymbol)symbol, flags);
59return GetVariablePrototype(variableDeclarator, (IFieldSymbol)symbol, flags);
61return GetVariablePrototype(enumMember, (IFieldSymbol)symbol, flags);
222private string GetVariablePrototype(IFieldSymbol symbol, PrototypeFlags flags)
243private string GetVariablePrototype(VariableDeclaratorSyntax node, IFieldSymbol symbol, PrototypeFlags flags)
273private string GetVariablePrototype(EnumMemberDeclarationSyntax node, IFieldSymbol symbol, PrototypeFlags flags)
476private void AppendVariablePrototype(StringBuilder builder, IFieldSymbol symbol, PrototypeFlags flags, string baseName)
Microsoft.VisualStudio.LanguageServices.CSharp.UnitTests (1)
Microsoft.VisualStudio.LanguageServices.VisualBasic (5)
Roslyn.Diagnostics.Analyzers (111)
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)
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\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
501.OfType<IFieldSymbol>()
Roslyn.Diagnostics.CSharp.Analyzers (17)
src\Workspaces\SharedUtilitiesAndExtensions\Workspace\CSharp\LanguageServices\CSharpTypeInferenceService.TypeInferrer.cs (1)
1480case IFieldSymbol field:
Roslyn.Diagnostics.VisualBasic.Analyzers (11)
Roslyn.Test.PdbUtilities (1)
SemanticSearch.BuildTask (6)
System.Text.Json.SourceGeneration (10)
System.Text.RegularExpressions.Generator (1)
System.Windows.Forms.PrivateSourceGenerators (1)
Test.Utilities (38)
Text.Analyzers (97)
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\Extensions\SyntaxGeneratorExtensions_CreateEqualsMethod.cs (1)
501.OfType<IFieldSymbol>()