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);
5925var fieldSymbol = ((BoundFieldAccess)boundMember).FieldSymbol;
8327resultType = ((FieldSymbol)symbolOpt).GetFieldType(this.FieldsBeingBound).Type;
8500result = BindFieldAccess(node, left, (FieldSymbol)symbol, diagnostics, lookupResult.Kind, indexed, hasErrors: wasError);
8902FieldSymbol fieldSymbol,
9409expr.Type.HasInlineArrayAttribute(out int length) && expr.Type.TryGetPossiblyUnsupportedByLanguageInlineArrayElementField() is FieldSymbol elementField)
9478BoundExpression 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) =>
8981tupleType.GetMembers(NamedTypeSymbol.ValueTupleRestFieldName).FirstOrDefault() is FieldSymbol restField)
8988void trackState(BoundExpression value, FieldSymbol field, TypeWithState valueType)
9046void trackConvertedValue(FieldSymbol targetField, Conversion conversion, FieldSymbol valueField)
10567private static FlowAnalysisAnnotations GetFieldAnnotations(FieldSymbol field)
10583var 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)
2327public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2338public BoundLocalId(SyntaxNode syntax, LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2351public FieldSymbol? HoistedField { get; }
2356public BoundLocalId Update(LocalSymbol local, FieldSymbol? hoistedField, TypeSymbol type)
2370public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type, bool hasErrors)
2381public BoundParameterId(SyntaxNode syntax, ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2394public FieldSymbol? HoistedField { get; }
2399public BoundParameterId Update(ParameterSymbol parameter, FieldSymbol? hoistedField, TypeSymbol type)
2744public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type, bool hasErrors)
2755public BoundFieldInfo(SyntaxNode syntax, FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
2767public FieldSymbol Field { get; }
2773public BoundFieldInfo Update(FieldSymbol field, MethodSymbol? getFieldFromHandle, TypeSymbol type)
5434public BoundDagFieldEvaluation(SyntaxNode syntax, FieldSymbol field, BoundDagTemp input, bool hasErrors = false)
5444public FieldSymbol Field { get; }
5449public BoundDagFieldEvaluation Update(FieldSymbol field, BoundDagTemp input)
7249public BoundFieldAccess(SyntaxNode syntax, BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type, bool hasErrors = false)
7266public FieldSymbol FieldSymbol { get; }
7275public BoundFieldAccess Update(BoundExpression? receiverOpt, FieldSymbol fieldSymbol, ConstantValue? constantValueOpt, LookupResultKind resultKind, bool isByValue, bool isDeclaration, TypeSymbol type)
7289public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type, bool hasErrors)
7299public BoundHoistedFieldAccess(SyntaxNode syntax, FieldSymbol fieldSymbol, TypeSymbol type)
7310public FieldSymbol FieldSymbol { get; }
7315public BoundHoistedFieldAccess Update(FieldSymbol fieldSymbol, TypeSymbol type)
10829FieldSymbol field = this.VisitFieldSymbol(node.Field);
11206FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11213FieldSymbol? hoistedField = this.VisitFieldSymbol(node.HoistedField);
11266FieldSymbol field = this.VisitFieldSymbol(node.Field);
11738FieldSymbol field = this.VisitFieldSymbol(node.Field);
12081FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12088FieldSymbol fieldSymbol = this.VisitFieldSymbol(node.FieldSymbol);
12406FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13169FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13187FieldSymbol? hoistedField = GetUpdatedSymbol(node, node.HoistedField);
13318FieldSymbol field = GetUpdatedSymbol(node, node.Field);
13834FieldSymbol field = GetUpdatedSymbol(node, node.Field);
14566FieldSymbol fieldSymbol = GetUpdatedSymbol(node, node.FieldSymbol);
14584FieldSymbol 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))
722var ignoreSymbolStoreDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__IgnoreSymbolStoreSequencePoints);
738var defaultDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__Default);
744var disableOptimizationsDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__DisableOptimizations);
756var enableEncDebuggingMode = (FieldSymbol?)GetWellKnownTypeMember(WellKnownMember.System_Diagnostics_DebuggableAttribute_DebuggingModes__EnableEditAndContinue);
1063internal class SpecialMembersSignatureComparer : SignatureComparer<MethodSymbol, FieldSymbol, PropertySymbol, TypeSymbol, ParameterSymbol>
1087protected override TypeSymbol GetFieldType(FieldSymbol field)