Binder\Binder_Expressions.cs (18)
474FieldSymbol field,
1480FieldSymbol? field = null;
1497IsPropertyWithBackingField(property, out FieldSymbol? backingField):
1536internal static bool IsPropertyWithBackingField(PEPropertySymbol property, [NotNullWhen(true)] out FieldSymbol? backingField)
1539property.ContainingType.GetMembers(GeneratedNames.MakeBackingFieldName(property.Name)) is [FieldSymbol candidateField] &&
2115(this.ContainingMember() is FieldSymbol || (object)primaryCtor == this.ContainingMember()) ||
2204return BindFieldAccess(node, receiver, (FieldSymbol)symbol, diagnostics, resultKind, indexed, hasErrors: isError);
2275FieldSymbol possibleField = null;
2289possibleField = lookupResult.SingleSymbolOrDefault as FieldSymbol;
6073var fieldSymbol = ((BoundFieldAccess)boundMember).FieldSymbol;
7719var fieldSymbol = (FieldSymbol)leftSymbol;
8554resultType = ((FieldSymbol)symbolOpt).GetFieldType(this.FieldsBeingBound).Type;
8728result = BindFieldAccess(node, left, (FieldSymbol)symbol, diagnostics, lookupResult.Kind, indexed, hasErrors: wasError);
9121FieldSymbol fieldSymbol,
9247private TypeSymbol GetAdjustedTypeForEnumMemberReference(FieldSymbol fieldSymbol, TypeSymbol fieldType)
9671expr.Type.HasInlineArrayAttribute(out int length) && expr.Type.TryGetPossiblyUnsupportedByLanguageInlineArrayElementField() is FieldSymbol elementField)
9740BoundExpression bindInlineArrayElementAccess(ExpressionSyntax node, BoundExpression expr, int length, AnalyzedArguments analyzedArguments, BoundExpression convertedIndex, WellKnownType indexOrRangeWellknownType, FieldSymbol elementField, BindingDiagnosticBag diagnostics)
FlowAnalysis\NullableWalker.cs (19)
776FieldSymbol? field;
780case FieldSymbol f:
871case FieldSymbol { OriginalDefinition: SynthesizedPrimaryConstructorParameterBackingFieldSymbol }:
874case FieldSymbol { IsConst: true }:
876case FieldSymbol { AssociatedSymbol: SourcePropertySymbolBase { UsesFieldKeyword: false } prop }:
981var prop = symbolToInitialize as PropertySymbol ?? (symbolToInitialize as FieldSymbol)?.AssociatedSymbol as PropertySymbol;
1037if (requiredMember is FieldSymbol)
2087case FieldSymbol:
2108var fieldSymbol = fieldAccess.FieldSymbol;
2285primaryConstructor.GetCapturedParameters().TryGetValue(parameter, out FieldSymbol? field))
2761foreach (var field in _emptyStructTypeCache.GetStructInstanceFields(targetType))
3847(FieldSymbol { ContainingType: { IsTupleType: true }, TupleElementIndex: var oi } originalField, FieldSymbol { ContainingType: { IsTupleType: true }, TupleElementIndex: var ui } updatedField) =>
9452tupleType.GetMembers(NamedTypeSymbol.ValueTupleRestFieldName).FirstOrDefault() is FieldSymbol restField)
9459void trackState(BoundExpression value, FieldSymbol field, TypeWithState valueType)
9518void trackConvertedValue(FieldSymbol targetField, Conversion conversion, FieldSymbol valueField)
11333private static FlowAnalysisAnnotations GetFieldAnnotations(FieldSymbol field)
11349var annotations = memberSymbol switch { PropertySymbol prop => prop.GetFlowAnalysisAnnotations(), FieldSymbol field => GetFieldAnnotations(field), _ => FlowAnalysisAnnotations.None };
Generated\BoundNodes.xml.Generated.cs (39)
295public BoundFieldEqualsValue(SyntaxNode syntax, FieldSymbol field, ImmutableArray<LocalSymbol> locals, BoundExpression value, bool hasErrors = false)
306public FieldSymbol Field { get; }
311public BoundFieldEqualsValue Update(FieldSymbol field, ImmutableArray<LocalSymbol> locals, BoundExpression value)
2385public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2396public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2409public FieldSymbol? HoistedField { get; }
2414public BoundLocalId Update(LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2428public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2439public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2452public FieldSymbol? HoistedField { get; }
2457public BoundParameterId Update(ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2802public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type, bool hasErrors)
2813public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
2825public FieldSymbol Field { get; }
2831public BoundFieldInfo Update(FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
5504public BoundDagFieldEvaluation(SyntaxNode syntax, FieldSymbol field, BoundDagTemp input, bool hasErrors = false)
5514public FieldSymbol Field { get; }
5519public BoundDagFieldEvaluation Update(FieldSymbol field, BoundDagTemp input)
7393public BoundFieldAccess(SyntaxNode syntax, BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type, bool hasErrors = false)
7410public FieldSymbol FieldSymbol { get; }
7419public BoundFieldAccess Update(BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type)
7433public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type, bool hasErrors)
7443public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type)
7454public FieldSymbol FieldSymbol { get; }
7459public BoundHoistedFieldAccess Update(FieldSymbol fieldSymbol, TypeSymbol type)
11112FieldSymbol field = this.VisitFieldSymbol(node.Field);
11498FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11505FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11558FieldSymbol field = this.VisitFieldSymbol(node.Field);
12029FieldSymbol field = this.VisitFieldSymbol(node.Field);
12382FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12389FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12723FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13513FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13531FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13662FieldSymbol field = GetUpdatedSymbol(node, node.Field);
14177FieldSymbol field = GetUpdatedSymbol(node, node.Field);
14909FieldSymbol fieldSymbol = GetUpdatedSymbol(node, node.FieldSymbol);
14927FieldSymbol fieldSymbol = GetUpdatedSymbol(node, node.FieldSymbol);
Symbols\Compilation_WellKnownMembers.cs (13)
251internal static Symbol? GetRuntimeMember(NamedTypeSymbol declaringType, in MemberDescriptor descriptor, SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol> comparer, AssemblySymbol? accessWithinOpt)
257internal static Symbol? GetRuntimeMember(ImmutableArray<Symbol> members, in MemberDescriptor descriptor, SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol> comparer, AssemblySymbol? accessWithinOpt)
351if (!comparer.MatchFieldSignature((FieldSymbol)member, descriptor.Signature))
762var ignoreSymbolStoreDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__IgnoreSymbolStoreSequencePoints);
778var defaultDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__Default);
784var disableOptimizationsDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__DisableOptimizations);
796var enableEncDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__EnableEditAndContinue);
1103internal class SpecialMembersSignatureComparer : SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol>
1127protected override TypeSymbol GetFieldType(FieldSymbol field)
Symbols\NamedTypeSymbol.cs (4)
407internal void GetAllExtensionMembers(ArrayBuilder<Symbol> members, string? name, string? alternativeName, int arity, LookupOptions options, ConsList<FieldSymbol> fieldsBeingBound)
438void doGetExtensionMembers(ArrayBuilder<Symbol> members, string? name, string? alternativeName, int arity, LookupOptions options, ref PooledHashSet<MethodSymbol>? implementationsToShadow, ConsList<FieldSymbol> fieldsBeingBound)
475static bool extensionMemberMatches(Symbol member, string? name, string? alternativeName, int arity, LookupOptions options, ConsList<FieldSymbol> fieldsBeingBound)
1779internal virtual FieldSymbol FixedElementField