125 references to _writer
Microsoft.Extensions.Configuration.Binder.SourceGeneration (125)
ConfigurationBindingGenerator.Emitter.cs (7)
41
_writer
.WriteLine("""
56
_writer
.WriteLine();
69
context.AddSource($"{Identifier.BindingExtensions}.g.cs",
_writer
.ToSourceText());
74
_writer
.WriteLine();
80
_writer
.WriteLine($$"""
97
_writer
.WriteLine();
104
_writer
.WriteLine($"using {@namespace};");
Emitter\ConfigurationBinder.cs (12)
35
_writer
.WriteLine($"public static T? {Identifier.Get}<T>(this {Identifier.IConfiguration} {Identifier.configuration}) => " +
42
_writer
.WriteLine($"public static T? {Identifier.Get}<T>(this {Identifier.IConfiguration} {Identifier.configuration}, {TypeDisplayString.NullableActionOfBinderOptions} {Identifier.configureOptions}) => " +
49
_writer
.WriteLine($"public static object? {Identifier.Get}(this {Identifier.IConfiguration} {Identifier.configuration}, Type {Identifier.type}) => " +
56
_writer
.WriteLine($"public static object? {Identifier.Get}(this {Identifier.IConfiguration} {Identifier.configuration}, Type {Identifier.type}, {TypeDisplayString.NullableActionOfBinderOptions} {Identifier.configureOptions}) => " +
69
_writer
.WriteLine($"public static T? {Identifier.GetValue}<T>(this {Identifier.IConfiguration} {Identifier.configuration}, string {Identifier.key}) => " +
77
_writer
.WriteLine($"public static T? {Identifier.GetValue}<T>(this {Identifier.IConfiguration} {Identifier.configuration}, string {Identifier.key}, T {Identifier.defaultValue}) => " +
84
_writer
.WriteLine($"public static object? {Identifier.GetValue}(this {Identifier.IConfiguration} {Identifier.configuration}, Type {Identifier.type}, string {Identifier.key}) => " +
92
_writer
.WriteLine($"public static object? {Identifier.GetValue}(this {Identifier.IConfiguration} {Identifier.configuration}, Type {Identifier.type}, string {Identifier.key}, object? {Identifier.defaultValue}) => " +
101
_writer
.WriteLine($"[return: global::System.Diagnostics.CodeAnalysis.NotNullIfNotNull(nameof({parameterName}))]");
148
_writer
.WriteLine($"/// <summary>Attempts to bind the given object instance to configuration values by matching property names against configuration keys recursively.</summary>");
159
_writer
.WriteLine($$"""
173
_writer
.WriteLine($"/// <summary>{documentation}</summary>");
Emitter\CoreBindingHelpers.cs (80)
82
_writer
.WriteLine($@"private readonly static Lazy<{TypeDisplayString.HashSetOfString}> {fieldName} = new(() => new {TypeDisplayString.HashSetOfString}(StringComparer.OrdinalIgnoreCase) {{ {configKeysSource} }});");
98
_writer
.WriteLine($"{Identifier.BinderOptions}? {Identifier.binderOptions} = {Identifier.GetBinderOptions}({Identifier.configureOptions});");
99
_writer
.WriteLine();
125
writeOnSuccess: parsedValueExpr =>
_writer
.WriteLine($"return {parsedValueExpr};"),
133
_writer
.WriteLine($"return {Identifier.section};");
141
_writer
.WriteLine($"return {Identifier.instance};");
145
_writer
.WriteLine($@"throw new {Identifier.InvalidOperationException}(""{exMsg}"");");
160
_writer
.WriteLine();
166
_writer
.WriteLine($$"""
185
_writer
.WriteLine($@"{Identifier.IConfigurationSection} {Identifier.section} = {GetSectionFromConfigurationExpression(Identifier.key, addQuotes: false)};");
186
_writer
.WriteLine();
200
writeOnSuccess: (parsedValueExpr) =>
_writer
.WriteLine($"return {parsedValueExpr};"),
207
_writer
.WriteLine();
208
_writer
.WriteLine("return null;");
224
_writer
.WriteLine($"{Identifier.BinderOptions}? {Identifier.binderOptions} = {Identifier.GetBinderOptions}({Identifier.configureOptions});");
225
_writer
.WriteLine();
235
_writer
.WriteLine($"var {Identifier.temp} = ({effectiveType.TypeRef.FullyQualifiedName}){Identifier.instance};");
237
_writer
.WriteLine($"return;");
241
_writer
.WriteLine();
363
_writer
.WriteLine($"{returnExpression};");
373
_writer
.WriteLine($@"{EscapeIdentifier(property.Name)} = {valueExpr},");
396
_writer
.WriteLine($"{parsedMemberDeclarationLhs} = {Identifier.configuration}[{SymbolDisplay.FormatLiteral(configKeyName, quote: true)}];");
397
_writer
.WriteLine();
404
_writer
.WriteLine($"{parsedMemberDeclarationLhs} = {GetSectionFromConfigurationExpression(configKeyName)};");
410
_writer
.WriteLine($"{parsedMemberDeclarationLhs} = {member.DefaultValueExpr}{bangExpr};");
428
_writer
.WriteLine($$"""
436
_writer
.WriteLine();
478
_writer
.WriteLine();
499
_writer
.WriteLine($$"""
520
_writer
.WriteLine($$"""
547
_writer
.WriteLine($$"""
561
_writer
.WriteLine($$"""
575
_writer
.WriteLine($$"""
601
_writer
.WriteLine($$"""
690
_writer
.WriteLine($"var {tempIdentifier} = new List<{elementTypeFQN}>();");
691
_writer
.WriteLine();
695
_writer
.WriteLine();
698
_writer
.WriteLine($$"""
726
(parsedValueExpr) =>
_writer
.WriteLine($"{addExpr}({parsedValueExpr});"),
733
_writer
.WriteLine($"{addExpr}({Identifier.section});");
744
_writer
.WriteLine($"{addExpr}({Identifier.value});");
761
_writer
.WriteLine($@"continue;");
793
writeOnSuccess: parsedValueExpr =>
_writer
.WriteLine($"{instanceIdentifier}[{parsedKeyExpr}] = {parsedValueExpr};"),
800
_writer
.WriteLine($"{instanceIdentifier}[{parsedKeyExpr}] = {Identifier.section};");
808
_writer
.WriteLine($"{keyType.TypeRef.FullyQualifiedName} {Identifier.key} = {parsedKeyExpr};");
836
_writer
.WriteLine($"bool {constructedExpr} = false;");
843
_writer
.WriteLine($"{constructedExpr} = true;");
866
_writer
.WriteLine($"{instanceIdentifier}[{parsedKeyExpr}] = {Identifier.element};");
882
_writer
.WriteLine(validateMethodCallExpr);
1033
_writer
.WriteLine($"{memberAccessExpr} = {nullValueExpr};");
1042
writeOnSuccess: parsedValueExpr =>
_writer
.WriteLine($"{memberAccessExpr} = {parsedValueExpr};"),
1057
_writer
.WriteLine($"{memberAccessExpr} = {memberAccessExpr};");
1061
_writer
.WriteLine($"var currentValue = {memberAccessExpr};");
1063
_writer
.WriteLine($"{memberAccessExpr} = currentValue;");
1077
_writer
.WriteLine($"{memberAccessExpr} = {sectionParseExpr};");
1095
_writer
.WriteLine($"var {configSection} = {sectionParseExpr};");
1112
_writer
.WriteLine($"{memberAccessExpr} = global::System.{Identifier.Array}.Empty<{((CollectionSpec)complexType).ElementTypeRef.FullyQualifiedName}>();");
1153
_writer
.WriteLine($"{memberType.TypeRef.FullyQualifiedName} {nullableTempIdentifier} = {memberAccessExpr};");
1155
_writer
.WriteLine(
1160
_writer
.WriteLine($"{effectiveMemberTypeFQN} {tempIdentifier} = {memberAccessExpr};");
1169
_writer
.WriteLine($"{effectiveMemberType.TypeRef.FullyQualifiedName}? {tempIdentifier} = {memberAccessExpr};");
1196
_writer
.WriteLine($"{memberAccessExpr} = {bindedValueIdentifier};");
1200
_writer
.WriteLine($"{tempIdentifierStoringExpr}");
1210
_writer
.WriteLine($"{memberAccessExpr} = {memberAccessExpr};");
1215
_writer
.WriteLine($"{tempIdentifierStoringExpr}");
1248
_writer
.WriteLine($@"throw new {Identifier.InvalidOperationException}(""{exMsg}"");");
1259
_writer
.WriteLine($"{type.TypeRef.FullyQualifiedName}? {tempIdentifier} = {memberAccessExpr};");
1301
_writer
.WriteLine($"bool {wasNullIdentifier} = {instanceToBindExpr} is null;");
1332
_writer
.WriteLine($@"throw new {Identifier.InvalidOperationException}(""{exMsg}"");");
1340
_writer
.WriteLine(bindCoreCall);
1447
_writer
.WriteLine($"{declarationType} {memberAccessExpr} = {initExpr};");
1465
_writer
.WriteLine($"{memberAccessExpr} = {memberAccessExpr} is null ? {initExpr} : {assignmentValueIfMemberNull};");
1469
_writer
.WriteLine($"{memberAccessExpr} ??= {initExpr};");
1475
_writer
.WriteLine($"{memberAccessExpr} = {initExpr};");
1491
_writer
.WriteLine($$"""
1497
_writer
.WriteLine();
1513
_writer
.WriteLine($$"""
1522
_writer
.WriteLine($$"""
1527
_writer
.WriteLine();
1535
_writer
.WriteLine(@$"throw new NotSupportedException($""{string.Format(ExceptionMessages.TypeNotDetectedAsInput, "{type}")}"");");
Emitter\Helpers.cs (13)
170
_writer
.WriteLine($@"[{Identifier.InterceptsLocation}(@""{info.FilePath}"", {info.LineNumber}, {info.CharacterNumber})]");
177
_writer
.WriteLine($@"[{Identifier.InterceptsLocation}({info.InterceptableLocationVersion}, ""{info.InterceptableLocationData}"")] // {info.InterceptableLocationGetDisplayLocation()}");
204
_writer
.WriteLine($"#{endSource}region {_emittedExtsTargetType} extensions.");
215
_writer
.WriteLine(source);
218
_writer
.WriteLine("{");
219
_writer
.Indentation++;
231
_writer
.WriteLine(source);
235
_writer
.Indentation--;
236
_writer
.WriteLine(endBlockSource);
243
_writer
.WriteLine();
253
_writer
.WriteLine($$"""
271
_writer
.WriteLine(throwIfNullExpr);
274
_writer
.WriteLine();
Emitter\OptionsBuilderConfigurationExtensions.cs (8)
36
_writer
.WriteLine($"return Bind({Identifier.optionsBuilder}, {Identifier.config}, {Identifier.configureBinder}: null);");
48
_writer
.WriteLine($$"""
73
_writer
.WriteLine($$"""
80
_writer
.WriteLine();
84
_writer
.WriteLine($"return new {Identifier.ConfigurationChangeTokenSource}<{Identifier.TOptions}>({Identifier.optionsBuilder}.{Identifier.Name}, {Identifier.sp}.GetRequiredService<{Identifier.IConfiguration}>());");
88
_writer
.WriteLine();
90
_writer
.WriteLine($"return {Identifier.optionsBuilder};");
99
_writer
.WriteLine(documentation);
Emitter\OptionsConfigurationServiceCollectionExtensions.cs (5)
30
_writer
.WriteLine($"return {Identifier.Configure}<{Identifier.TOptions}>({Identifier.services}, {defaultNameExpr}, {Identifier.config}, {Identifier.configureOptions}: null);");
39
_writer
.WriteLine($"return {Identifier.Configure}<{Identifier.TOptions}>({Identifier.services}, {Identifier.name}, {Identifier.config}, {Identifier.configureOptions}: null);");
48
_writer
.WriteLine($"return {Identifier.Configure}<{Identifier.TOptions}>({Identifier.services}, {defaultNameExpr}, {Identifier.config}, {Identifier.configureOptions});");
58
_writer
.WriteLine($$"""
71
_writer
.WriteLine("/// <summary>Registers a configuration instance which TOptions will bind against.</summary>");