28 references to InitializationKind
Microsoft.Extensions.Configuration.Binder.SourceGeneration (28)
Emitter\CoreBindingHelpers.cs (28)
140EmitBindingLogic(complexType, Identifier.instance, Identifier.configuration, InitializationKind.Declaration, ValueDefaulting.CallSetter);
239EmitBindingLogic(type, Identifier.temp, Identifier.configuration, InitializationKind.None, ValueDefaulting.None);
423InitializationKind.None,
746EmitBindingLogic(complexType, Identifier.value, Identifier.section, InitializationKind.Declaration, ValueDefaulting.None);
843EmitObjectInit(complexElementType, Identifier.element, InitializationKind.SimpleAssignment, Identifier.section);
865InitializationKind.None,
931InitializationKind.Declaration);
990InitializationKind initializationKind,
1056if (initializationKind == InitializationKind.Declaration)
1136InitializationKind initKind;
1150EmitObjectInit(effectiveMemberType, memberAccessExpr, InitializationKind.SimpleAssignment, configArgExpr);
1155initKind = InitializationKind.None;
1183InitializationKind.None,
1190initKind = InitializationKind.AssignmentWithNullCheck;
1195initKind = InitializationKind.SimpleAssignment;
1241InitializationKind initKind,
1254if (initKind is not InitializationKind.None)
1270if (initKind is InitializationKind.AssignmentWithNullCheck)
1274EmitBindingLogic(tempIdentifier, InitializationKind.AssignmentWithNullCheck);
1276else if (initKind is InitializationKind.None && type.IsValueType)
1278EmitBindingLogic(tempIdentifier, InitializationKind.Declaration, $"{memberAccessExpr} = {tempIdentifier};");
1298void EmitBindingLogic(string instanceToBindExpr, InitializationKind initKind, string? tempIdentifierStoringExpr = null)
1304if (initKind is not InitializationKind.None)
1312if (initKind is InitializationKind.AssignmentWithNullCheck)
1408private bool EmitObjectInit(ComplexTypeSpec type, string memberAccessExpr, InitializationKind initKind, string configArgExpr)
1458case InitializationKind.Declaration:
1468case InitializationKind.AssignmentWithNullCheck:
1491case InitializationKind.SimpleAssignment: