Binder\Binder_Expressions.cs (11)
442FieldSymbol field,
2045FieldSymbol possibleField = null;
2059possibleField = lookupResult.SingleSymbolOrDefault as FieldSymbol;
2139(this.ContainingMember() is FieldSymbol || (object)primaryCtor == this.ContainingMember()) ||
2227return BindFieldAccess(node, receiver, (FieldSymbol)symbol, diagnostics, resultKind, indexed, hasErrors: isError);
5934var fieldSymbol = ((BoundFieldAccess)boundMember).FieldSymbol;
8336resultType = ((FieldSymbol)symbolOpt).GetFieldType(this.FieldsBeingBound).Type;
8509result = BindFieldAccess(node, left, (FieldSymbol)symbol, diagnostics, lookupResult.Kind, indexed, hasErrors: wasError);
8857FieldSymbol fieldSymbol,
9364expr.Type.HasInlineArrayAttribute(out int length) && expr.Type.TryGetPossiblyUnsupportedByLanguageInlineArrayElementField() is FieldSymbol elementField)
9433BoundExpression bindInlineArrayElementAccess(ExpressionSyntax node, BoundExpression expr, int length, AnalyzedArguments analyzedArguments, BoundExpression convertedIndex, WellKnownType indexOrRangeWellknownType, FieldSymbol elementField, BindingDiagnosticBag diagnostics)
FlowAnalysis\NullableWalker.cs (18)
741FieldSymbol? field;
745case FieldSymbol f:
835case FieldSymbol { OriginalDefinition: SynthesizedPrimaryConstructorParameterBackingFieldSymbol }:
838case FieldSymbol { IsConst: true }:
840case FieldSymbol { AssociatedSymbol: SourcePropertySymbolBase { UsesFieldKeyword: false } prop }:
945var prop = symbolToInitialize as PropertySymbol ?? (symbolToInitialize as FieldSymbol)?.AssociatedSymbol as PropertySymbol;
1001if (requiredMember is FieldSymbol)
2053var fieldSymbol = fieldAccess.FieldSymbol;
2230primaryConstructor.GetCapturedParameters().TryGetValue(parameter, out FieldSymbol? field))
2706foreach (var field in _emptyStructTypeCache.GetStructInstanceFields(targetType))
3767(FieldSymbol { ContainingType: { IsTupleType: true }, TupleElementIndex: var oi } originalField, FieldSymbol { ContainingType: { IsTupleType: true }, TupleElementIndex: var ui } updatedField) =>
8985tupleType.GetMembers(NamedTypeSymbol.ValueTupleRestFieldName).FirstOrDefault() is FieldSymbol restField)
8992void trackState(BoundExpression value, FieldSymbol field, TypeWithState valueType)
9050void trackConvertedValue(FieldSymbol targetField, Conversion conversion, FieldSymbol valueField)
10579private static FlowAnalysisAnnotations GetFieldAnnotations(FieldSymbol field)
10595var annotations = memberSymbol switch { PropertySymbol prop => prop.GetFlowAnalysisAnnotations(), FieldSymbol field => GetFieldAnnotations(field), _ => FlowAnalysisAnnotations.None };
Generated\BoundNodes.xml.Generated.cs (39)
290public BoundFieldEqualsValue(SyntaxNode syntax, FieldSymbol field, ImmutableArray<LocalSymbol> locals, BoundExpression value, bool hasErrors = false)
301public FieldSymbol Field { get; }
306public BoundFieldEqualsValue Update(FieldSymbol field, ImmutableArray<LocalSymbol> locals, BoundExpression value)
2327public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2338public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2351public FieldSymbol? HoistedField { get; }
2356public BoundLocalId Update(LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2370public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2381public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2394public FieldSymbol? HoistedField { get; }
2399public BoundParameterId Update(ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2744public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type, bool hasErrors)
2755public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
2767public FieldSymbol Field { get; }
2773public BoundFieldInfo Update(FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
5434public BoundDagFieldEvaluation(SyntaxNode syntax, FieldSymbol field, BoundDagTemp input, bool hasErrors = false)
5444public FieldSymbol Field { get; }
5449public BoundDagFieldEvaluation Update(FieldSymbol field, BoundDagTemp input)
7249public BoundFieldAccess(SyntaxNode syntax, BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type, bool hasErrors = false)
7266public FieldSymbol FieldSymbol { get; }
7275public BoundFieldAccess Update(BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type)
7289public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type, bool hasErrors)
7299public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type)
7310public FieldSymbol FieldSymbol { get; }
7315public BoundHoistedFieldAccess Update(FieldSymbol fieldSymbol, TypeSymbol type)
10829FieldSymbol field = this.VisitFieldSymbol(node.Field);
11207FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11214FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11267FieldSymbol field = this.VisitFieldSymbol(node.Field);
11739FieldSymbol field = this.VisitFieldSymbol(node.Field);
12082FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12089FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12407FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13178FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13196FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13327FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13843FieldSymbol field = GetUpdatedSymbol(node, node.Field);
14575FieldSymbol fieldSymbol = GetUpdatedSymbol(node, node.FieldSymbol);
14593FieldSymbol fieldSymbol = GetUpdatedSymbol(node, node.FieldSymbol);
Symbols\Compilation_WellKnownMembers.cs (13)
247internal static Symbol? GetRuntimeMember(NamedTypeSymbol declaringType, in MemberDescriptor descriptor, SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol> comparer, AssemblySymbol? accessWithinOpt)
253internal static Symbol? GetRuntimeMember(ImmutableArray<Symbol> members, in MemberDescriptor descriptor, SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol> comparer, AssemblySymbol? accessWithinOpt)
347if (!comparer.MatchFieldSignature((FieldSymbol)member, descriptor.Signature))
722var ignoreSymbolStoreDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__IgnoreSymbolStoreSequencePoints);
738var defaultDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__Default);
744var disableOptimizationsDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__DisableOptimizations);
756var enableEncDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__EnableEditAndContinue);
1063internal class SpecialMembersSignatureComparer : SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol>
1087protected override TypeSymbol GetFieldType(FieldSymbol field)