Binder\Binder_Expressions.cs (11)
442FieldSymbol field,
2043FieldSymbol possibleField = null;
2057possibleField = lookupResult.SingleSymbolOrDefault as FieldSymbol;
2137(this.ContainingMember() is FieldSymbol || (object)primaryCtor == this.ContainingMember()) ||
2225return BindFieldAccess(node, receiver, (FieldSymbol)symbol, diagnostics, resultKind, indexed, hasErrors: isError);
5923var fieldSymbol = ((BoundFieldAccess)boundMember).FieldSymbol;
8328resultType = ((FieldSymbol)symbolOpt).GetFieldType(this.FieldsBeingBound).Type;
8491result = BindFieldAccess(node, left, (FieldSymbol)symbol, diagnostics, lookupResult.Kind, indexed, hasErrors: wasError);
8893FieldSymbol fieldSymbol,
9400expr.Type.HasInlineArrayAttribute(out int length) && expr.Type.TryGetPossiblyUnsupportedByLanguageInlineArrayElementField() is FieldSymbol elementField)
9469BoundExpression bindInlineArrayElementAccess(ExpressionSyntax node, BoundExpression expr, int length, AnalyzedArguments analyzedArguments, BoundExpression convertedIndex, WellKnownType indexOrRangeWellknownType, FieldSymbol elementField, BindingDiagnosticBag diagnostics)
FlowAnalysis\NullableWalker.cs (18)
735FieldSymbol? field;
739case FieldSymbol f:
829case FieldSymbol { OriginalDefinition: SynthesizedPrimaryConstructorParameterBackingFieldSymbol }:
832case FieldSymbol { IsConst: true }:
834case FieldSymbol { AssociatedSymbol: SourcePropertySymbolBase { UsesFieldKeyword: false } prop }:
939var prop = symbolToInitialize as PropertySymbol ?? (symbolToInitialize as FieldSymbol)?.AssociatedSymbol as PropertySymbol;
995if (requiredMember is FieldSymbol)
2047var fieldSymbol = fieldAccess.FieldSymbol;
2224primaryConstructor.GetCapturedParameters().TryGetValue(parameter, out FieldSymbol? field))
2700foreach (var field in _emptyStructTypeCache.GetStructInstanceFields(targetType))
3761(FieldSymbol { ContainingType: { IsTupleType: true }, TupleElementIndex: var oi } originalField, FieldSymbol { ContainingType: { IsTupleType: true }, TupleElementIndex: var ui } updatedField) =>
8886tupleType.GetMembers(NamedTypeSymbol.ValueTupleRestFieldName).FirstOrDefault() is FieldSymbol restField)
8893void trackState(BoundExpression value, FieldSymbol field, TypeWithState valueType)
8951void trackConvertedValue(FieldSymbol targetField, Conversion conversion, FieldSymbol valueField)
10472private static FlowAnalysisAnnotations GetFieldAnnotations(FieldSymbol field)
10488var 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)
2319public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2330public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2343public FieldSymbol? HoistedField { get; }
2348public BoundLocalId Update(LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2362public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2373public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2386public FieldSymbol? HoistedField { get; }
2391public BoundParameterId Update(ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2736public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type, bool hasErrors)
2747public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
2759public FieldSymbol Field { get; }
2765public BoundFieldInfo Update(FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
5426public BoundDagFieldEvaluation(SyntaxNode syntax, FieldSymbol field, BoundDagTemp input, bool hasErrors = false)
5436public FieldSymbol Field { get; }
5441public BoundDagFieldEvaluation Update(FieldSymbol field, BoundDagTemp input)
7241public BoundFieldAccess(SyntaxNode syntax, BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type, bool hasErrors = false)
7258public FieldSymbol FieldSymbol { get; }
7267public BoundFieldAccess Update(BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type)
7281public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type, bool hasErrors)
7291public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type)
7302public FieldSymbol FieldSymbol { get; }
7307public BoundHoistedFieldAccess Update(FieldSymbol fieldSymbol, TypeSymbol type)
10821FieldSymbol field = this.VisitFieldSymbol(node.Field);
11198FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11205FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11258FieldSymbol field = this.VisitFieldSymbol(node.Field);
11730FieldSymbol field = this.VisitFieldSymbol(node.Field);
12073FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12080FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12398FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13184FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13202FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13333FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13849FieldSymbol field = GetUpdatedSymbol(node, node.Field);
14581FieldSymbol fieldSymbol = GetUpdatedSymbol(node, node.FieldSymbol);
14599FieldSymbol fieldSymbol = GetUpdatedSymbol(node, node.FieldSymbol);
Symbols\Compilation_WellKnownMembers.cs (13)
245internal static Symbol? GetRuntimeMember(NamedTypeSymbol declaringType, in MemberDescriptor descriptor, SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol> comparer, AssemblySymbol? accessWithinOpt)
251internal static Symbol? GetRuntimeMember(ImmutableArray<Symbol> members, in MemberDescriptor descriptor, SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol> comparer, AssemblySymbol? accessWithinOpt)
345if (!comparer.MatchFieldSignature((FieldSymbol)member, descriptor.Signature))
720var ignoreSymbolStoreDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__IgnoreSymbolStoreSequencePoints);
736var defaultDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__Default);
742var disableOptimizationsDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__DisableOptimizations);
754var enableEncDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__EnableEditAndContinue);
1061internal class SpecialMembersSignatureComparer : SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol>
1085protected override TypeSymbol GetFieldType(FieldSymbol field)