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;
8327resultType = ((FieldSymbol)symbolOpt).GetFieldType(this.FieldsBeingBound).Type;
8490result = BindFieldAccess(node, left, (FieldSymbol)symbol, diagnostics, lookupResult.Kind, indexed, hasErrors: wasError);
8892FieldSymbol fieldSymbol,
9399expr.Type.HasInlineArrayAttribute(out int length) && expr.Type.TryGetPossiblyUnsupportedByLanguageInlineArrayElementField() is FieldSymbol elementField)
9468BoundExpression 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) =>
8832tupleType.GetMembers(NamedTypeSymbol.ValueTupleRestFieldName).FirstOrDefault() is FieldSymbol restField)
8839void trackState(BoundExpression value, FieldSymbol field, TypeWithState valueType)
8897void trackConvertedValue(FieldSymbol targetField, Conversion conversion, FieldSymbol valueField)
10418private static FlowAnalysisAnnotations GetFieldAnnotations(FieldSymbol field)
10434var annotations = memberSymbol switch { PropertySymbol prop => prop.GetFlowAnalysisAnnotations(), FieldSymbol field => GetFieldAnnotations(field), _ => FlowAnalysisAnnotations.None };
Generated\BoundNodes.xml.Generated.cs (39)
309public BoundFieldEqualsValue(SyntaxNode syntax, FieldSymbol field, ImmutableArray<LocalSymbol> locals, BoundExpression value, bool hasErrors = false)
320public FieldSymbol Field { get; }
325public BoundFieldEqualsValue Update(FieldSymbol field, ImmutableArray<LocalSymbol> locals, BoundExpression value)
2338public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2349public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2362public FieldSymbol? HoistedField { get; }
2367public BoundLocalId Update(LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2381public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2392public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2405public FieldSymbol? HoistedField { get; }
2410public BoundParameterId Update(ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2755public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type, bool hasErrors)
2766public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
2778public FieldSymbol Field { get; }
2784public BoundFieldInfo Update(FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
5445public BoundDagFieldEvaluation(SyntaxNode syntax, FieldSymbol field, BoundDagTemp input, bool hasErrors = false)
5455public FieldSymbol Field { get; }
5460public BoundDagFieldEvaluation Update(FieldSymbol field, BoundDagTemp input)
7260public BoundFieldAccess(SyntaxNode syntax, BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type, bool hasErrors = false)
7277public FieldSymbol FieldSymbol { get; }
7286public BoundFieldAccess Update(BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type)
7300public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type, bool hasErrors)
7310public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type)
7321public FieldSymbol FieldSymbol { get; }
7326public BoundHoistedFieldAccess Update(FieldSymbol fieldSymbol, TypeSymbol type)
10840FieldSymbol field = this.VisitFieldSymbol(node.Field);
11217FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11224FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11277FieldSymbol field = this.VisitFieldSymbol(node.Field);
11749FieldSymbol field = this.VisitFieldSymbol(node.Field);
12092FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12099FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12417FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13203FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13221FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13352FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13868FieldSymbol field = GetUpdatedSymbol(node, node.Field);
14600FieldSymbol fieldSymbol = GetUpdatedSymbol(node, node.FieldSymbol);
14618FieldSymbol 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)