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] &&
2114(this.ContainingMember() is FieldSymbol || (object)primaryCtor == this.ContainingMember()) ||
2203return BindFieldAccess(node, receiver, (FieldSymbol)symbol, diagnostics, resultKind, indexed, hasErrors: isError);
2274FieldSymbol possibleField = null;
2288possibleField = lookupResult.SingleSymbolOrDefault as FieldSymbol;
6091var fieldSymbol = ((BoundFieldAccess)boundMember).FieldSymbol;
7727var fieldSymbol = (FieldSymbol)leftSymbol;
8561resultType = ((FieldSymbol)symbolOpt).GetFieldType(this.FieldsBeingBound).Type;
8734result = BindFieldAccess(node, left, (FieldSymbol)symbol, diagnostics, lookupResult.Kind, indexed, hasErrors: wasError);
9117FieldSymbol fieldSymbol,
9243private TypeSymbol GetAdjustedTypeForEnumMemberReference(FieldSymbol fieldSymbol, TypeSymbol fieldType)
9644expr.Type.HasInlineArrayAttribute(out int length) && expr.Type.TryGetPossiblyUnsupportedByLanguageInlineArrayElementField() is FieldSymbol elementField)
9713BoundExpression bindInlineArrayElementAccess(ExpressionSyntax node, BoundExpression expr, int length, AnalyzedArguments analyzedArguments, BoundExpression convertedIndex, WellKnownType indexOrRangeWellknownType, FieldSymbol elementField, BindingDiagnosticBag diagnostics)
FlowAnalysis\NullableWalker.cs (18)
758FieldSymbol? field;
762case FieldSymbol f:
853case FieldSymbol { OriginalDefinition: SynthesizedPrimaryConstructorParameterBackingFieldSymbol }:
856case FieldSymbol { IsConst: true }:
858case FieldSymbol { AssociatedSymbol: SourcePropertySymbolBase { UsesFieldKeyword: false } prop }:
963var prop = symbolToInitialize as PropertySymbol ?? (symbolToInitialize as FieldSymbol)?.AssociatedSymbol as PropertySymbol;
1019if (requiredMember is FieldSymbol)
2072var fieldSymbol = fieldAccess.FieldSymbol;
2249primaryConstructor.GetCapturedParameters().TryGetValue(parameter, out FieldSymbol? field))
2725foreach (var field in _emptyStructTypeCache.GetStructInstanceFields(targetType))
3783(FieldSymbol { ContainingType: { IsTupleType: true }, TupleElementIndex: var oi } originalField, FieldSymbol { ContainingType: { IsTupleType: true }, TupleElementIndex: var ui } updatedField) =>
9291tupleType.GetMembers(NamedTypeSymbol.ValueTupleRestFieldName).FirstOrDefault() is FieldSymbol restField)
9298void trackState(BoundExpression value, FieldSymbol field, TypeWithState valueType)
9356void trackConvertedValue(FieldSymbol targetField, Conversion conversion, FieldSymbol valueField)
10884private static FlowAnalysisAnnotations GetFieldAnnotations(FieldSymbol field)
10900var annotations = memberSymbol switch { PropertySymbol prop => prop.GetFlowAnalysisAnnotations(), FieldSymbol field => GetFieldAnnotations(field), _ => FlowAnalysisAnnotations.None };
Generated\BoundNodes.xml.Generated.cs (39)
292public BoundFieldEqualsValue(SyntaxNode syntax, FieldSymbol field, ImmutableArray<LocalSymbol> locals, BoundExpression value, bool hasErrors = false)
303public FieldSymbol Field { get; }
308public BoundFieldEqualsValue Update(FieldSymbol field, ImmutableArray<LocalSymbol> locals, BoundExpression value)
2382public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2393public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2406public FieldSymbol? HoistedField { get; }
2411public BoundLocalId Update(LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2425public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2436public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2449public FieldSymbol? HoistedField { get; }
2454public BoundParameterId Update(ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2799public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type, bool hasErrors)
2810public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
2822public FieldSymbol Field { get; }
2828public BoundFieldInfo Update(FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
5499public BoundDagFieldEvaluation(SyntaxNode syntax, FieldSymbol field, BoundDagTemp input, bool hasErrors = false)
5509public FieldSymbol Field { get; }
5514public BoundDagFieldEvaluation Update(FieldSymbol field, BoundDagTemp input)
7360public BoundFieldAccess(SyntaxNode syntax, BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type, bool hasErrors = false)
7377public FieldSymbol FieldSymbol { get; }
7386public BoundFieldAccess Update(BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type)
7400public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type, bool hasErrors)
7410public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type)
7421public FieldSymbol FieldSymbol { get; }
7426public BoundHoistedFieldAccess Update(FieldSymbol fieldSymbol, TypeSymbol type)
10961FieldSymbol field = this.VisitFieldSymbol(node.Field);
11347FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11354FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11407FieldSymbol field = this.VisitFieldSymbol(node.Field);
11878FieldSymbol field = this.VisitFieldSymbol(node.Field);
12226FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12233FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12551FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13341FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13359FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13490FieldSymbol field = GetUpdatedSymbol(node, node.Field);
14005FieldSymbol field = GetUpdatedSymbol(node, node.Field);
14737FieldSymbol fieldSymbol = GetUpdatedSymbol(node, node.FieldSymbol);
14755FieldSymbol 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))
738var ignoreSymbolStoreDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__IgnoreSymbolStoreSequencePoints);
754var defaultDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__Default);
760var disableOptimizationsDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__DisableOptimizations);
772var enableEncDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__EnableEditAndContinue);
1079internal class SpecialMembersSignatureComparer : SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol>
1103protected 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