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)
741FieldSymbol? field;
745case FieldSymbol f:
835case FieldSymbol { OriginalDefinition: SynthesizedPrimaryConstructorParameterBackingFieldSymbol }:
838case FieldSymbol { IsConst: true }:
840case FieldSymbol { AssociatedSymbol: SourcePropertySymbolBase { UsesFieldKeyword: false } prop }:
945var prop = symbolToInitialize as PropertySymbol ?? (symbolToInitialize as FieldSymbol)?.AssociatedSymbol as PropertySymbol;
1001if (requiredMember is FieldSymbol)
2053var fieldSymbol = fieldAccess.FieldSymbol;
2230primaryConstructor.GetCapturedParameters().TryGetValue(parameter, out FieldSymbol? field))
2706foreach (var field in _emptyStructTypeCache.GetStructInstanceFields(targetType))
3767(FieldSymbol { ContainingType: { IsTupleType: true }, TupleElementIndex: var oi } originalField, FieldSymbol { ContainingType: { IsTupleType: true }, TupleElementIndex: var ui } updatedField) =>
8985tupleType.GetMembers(NamedTypeSymbol.ValueTupleRestFieldName).FirstOrDefault() is FieldSymbol restField)
8992void trackState(BoundExpression value, FieldSymbol field, TypeWithState valueType)
9050void trackConvertedValue(FieldSymbol targetField, Conversion conversion, FieldSymbol valueField)
10579private static FlowAnalysisAnnotations GetFieldAnnotations(FieldSymbol field)
10595var 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)
7257public BoundFieldAccess(SyntaxNode syntax, BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type, bool hasErrors = false)
7274public FieldSymbol FieldSymbol { get; }
7283public BoundFieldAccess Update(BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type)
7297public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type, bool hasErrors)
7307public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type)
7318public FieldSymbol FieldSymbol { get; }
7323public BoundHoistedFieldAccess Update(FieldSymbol fieldSymbol, TypeSymbol type)
10839FieldSymbol field = this.VisitFieldSymbol(node.Field);
11219FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11226FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11279FieldSymbol field = this.VisitFieldSymbol(node.Field);
11751FieldSymbol field = this.VisitFieldSymbol(node.Field);
12094FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12101FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12419FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13192FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13210FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13341FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13857FieldSymbol field = GetUpdatedSymbol(node, node.Field);
14589FieldSymbol fieldSymbol = GetUpdatedSymbol(node, node.FieldSymbol);
14607FieldSymbol 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)