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);
5932var fieldSymbol = ((BoundFieldAccess)boundMember).FieldSymbol;
8334resultType = ((FieldSymbol)symbolOpt).GetFieldType(this.FieldsBeingBound).Type;
8507result = BindFieldAccess(node, left, (FieldSymbol)symbol, diagnostics, lookupResult.Kind, indexed, hasErrors: wasError);
8855FieldSymbol fieldSymbol,
9362expr.Type.HasInlineArrayAttribute(out int length) && expr.Type.TryGetPossiblyUnsupportedByLanguageInlineArrayElementField() is FieldSymbol elementField)
9431BoundExpression bindInlineArrayElementAccess(ExpressionSyntax node, BoundExpression expr, int length, AnalyzedArguments analyzedArguments, BoundExpression convertedIndex, WellKnownType indexOrRangeWellknownType, FieldSymbol elementField, BindingDiagnosticBag diagnostics)
FlowAnalysis\NullableWalker.cs (18)
760FieldSymbol? field;
764case FieldSymbol f:
854case FieldSymbol { OriginalDefinition: SynthesizedPrimaryConstructorParameterBackingFieldSymbol }:
857case FieldSymbol { IsConst: true }:
859case FieldSymbol { AssociatedSymbol: SourcePropertySymbolBase { UsesFieldKeyword: false } prop }:
964var prop = symbolToInitialize as PropertySymbol ?? (symbolToInitialize as FieldSymbol)?.AssociatedSymbol as PropertySymbol;
1020if (requiredMember is FieldSymbol)
2073var fieldSymbol = fieldAccess.FieldSymbol;
2250primaryConstructor.GetCapturedParameters().TryGetValue(parameter, out FieldSymbol? field))
2726foreach (var field in _emptyStructTypeCache.GetStructInstanceFields(targetType))
3785(FieldSymbol { ContainingType: { IsTupleType: true }, TupleElementIndex: var oi } originalField, FieldSymbol { ContainingType: { IsTupleType: true }, TupleElementIndex: var ui } updatedField) =>
9127tupleType.GetMembers(NamedTypeSymbol.ValueTupleRestFieldName).FirstOrDefault() is FieldSymbol restField)
9134void trackState(BoundExpression value, FieldSymbol field, TypeWithState valueType)
9192void trackConvertedValue(FieldSymbol targetField, Conversion conversion, FieldSymbol valueField)
10721private static FlowAnalysisAnnotations GetFieldAnnotations(FieldSymbol field)
10737var 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)
2335public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2346public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2359public FieldSymbol? HoistedField { get; }
2364public BoundLocalId Update(LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2378public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2389public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2402public FieldSymbol? HoistedField { get; }
2407public BoundParameterId Update(ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2752public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type, bool hasErrors)
2763public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
2775public FieldSymbol Field { get; }
2781public BoundFieldInfo Update(FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
5442public BoundDagFieldEvaluation(SyntaxNode syntax, FieldSymbol field, BoundDagTemp input, bool hasErrors = false)
5452public FieldSymbol Field { get; }
5457public BoundDagFieldEvaluation Update(FieldSymbol field, BoundDagTemp input)
7261public BoundFieldAccess(SyntaxNode syntax, BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type, bool hasErrors = false)
7278public FieldSymbol FieldSymbol { get; }
7287public BoundFieldAccess Update(BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type)
7301public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type, bool hasErrors)
7311public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type)
7322public FieldSymbol FieldSymbol { get; }
7327public BoundHoistedFieldAccess Update(FieldSymbol fieldSymbol, TypeSymbol type)
10843FieldSymbol field = this.VisitFieldSymbol(node.Field);
11223FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11230FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11283FieldSymbol field = this.VisitFieldSymbol(node.Field);
11755FieldSymbol field = this.VisitFieldSymbol(node.Field);
12098FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12105FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12423FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13196FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13214FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13345FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13861FieldSymbol field = GetUpdatedSymbol(node, node.Field);
14593FieldSymbol fieldSymbol = GetUpdatedSymbol(node, node.FieldSymbol);
14611FieldSymbol 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))
734var ignoreSymbolStoreDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__IgnoreSymbolStoreSequencePoints);
750var defaultDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__Default);
756var disableOptimizationsDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__DisableOptimizations);
768var enableEncDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__EnableEditAndContinue);
1075internal class SpecialMembersSignatureComparer : SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol>
1099protected override TypeSymbol GetFieldType(FieldSymbol field)