127 references to _writer
Microsoft.Extensions.Configuration.Binder.SourceGeneration (127)
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 (14)
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}))]");
151
_writer
.WriteLine($"/// <summary>Attempts to bind the given object instance to configuration values by matching property names against configuration keys recursively.</summary>");
162
_writer
.WriteLine($$"""
178
_writer
.WriteLine($"{Identifier.GetBinderOptions}({Identifier.configureOptions});");
188
_writer
.WriteLine($"_ = {configExpression};");
201
_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();
234
_writer
.WriteLine($"var {Identifier.temp} = ({effectiveType.TypeRef.FullyQualifiedName}){Identifier.instance};");
240
_writer
.WriteLine($"return;");
244
_writer
.WriteLine();
366
_writer
.WriteLine($"{returnExpression};");
376
_writer
.WriteLine($@"{EscapeIdentifier(property.Name)} = {valueExpr},");
399
_writer
.WriteLine($"{parsedMemberDeclarationLhs} = {Identifier.configuration}[{SymbolDisplay.FormatLiteral(configKeyName, quote: true)}];");
400
_writer
.WriteLine();
407
_writer
.WriteLine($"{parsedMemberDeclarationLhs} = {GetSectionFromConfigurationExpression(configKeyName)};");
413
_writer
.WriteLine($"{parsedMemberDeclarationLhs} = {member.DefaultValueExpr}{bangExpr};");
431
_writer
.WriteLine($$"""
439
_writer
.WriteLine();
481
_writer
.WriteLine();
502
_writer
.WriteLine($$"""
523
_writer
.WriteLine($$"""
550
_writer
.WriteLine($$"""
564
_writer
.WriteLine($$"""
578
_writer
.WriteLine($$"""
604
_writer
.WriteLine($$"""
693
_writer
.WriteLine($"var {tempIdentifier} = new List<{elementTypeFQN}>();");
694
_writer
.WriteLine();
698
_writer
.WriteLine();
701
_writer
.WriteLine($$"""
729
(parsedValueExpr) =>
_writer
.WriteLine($"{addExpr}({parsedValueExpr});"),
736
_writer
.WriteLine($"{addExpr}({Identifier.section});");
747
_writer
.WriteLine($"{addExpr}({Identifier.value});");
764
_writer
.WriteLine($@"continue;");
796
writeOnSuccess: parsedValueExpr =>
_writer
.WriteLine($"{instanceIdentifier}[{parsedKeyExpr}] = {parsedValueExpr};"),
803
_writer
.WriteLine($"{instanceIdentifier}[{parsedKeyExpr}] = {Identifier.section};");
811
_writer
.WriteLine($"{keyType.TypeRef.FullyQualifiedName} {Identifier.key} = {parsedKeyExpr};");
839
_writer
.WriteLine($"bool {constructedExpr} = false;");
846
_writer
.WriteLine($"{constructedExpr} = true;");
869
_writer
.WriteLine($"{instanceIdentifier}[{parsedKeyExpr}] = {Identifier.element};");
885
_writer
.WriteLine(validateMethodCallExpr);
1037
_writer
.WriteLine($"{memberAccessExpr} = {nullValueExpr};");
1046
writeOnSuccess: parsedValueExpr =>
_writer
.WriteLine($"{memberAccessExpr} = {parsedValueExpr};"),
1061
_writer
.WriteLine($"{memberAccessExpr} = {memberAccessExpr};");
1065
_writer
.WriteLine($"var currentValue = {memberAccessExpr};");
1067
_writer
.WriteLine($"{memberAccessExpr} = currentValue;");
1081
_writer
.WriteLine($"{memberAccessExpr} = {sectionParseExpr};");
1096
_writer
.WriteLine($"var {configSection} = {sectionParseExpr};");
1113
_writer
.WriteLine($"{memberAccessExpr} = global::System.{Identifier.Array}.Empty<{((CollectionSpec)complexType).ElementTypeRef.FullyQualifiedName}>();");
1161
_writer
.WriteLine($"{memberType.TypeRef.FullyQualifiedName} {nullableTempIdentifier} = {memberAccessExpr};");
1163
_writer
.WriteLine(
1168
_writer
.WriteLine($"{effectiveMemberTypeFQN} {tempIdentifier} = {memberAccessExpr};");
1177
_writer
.WriteLine($"{effectiveMemberType.TypeRef.FullyQualifiedName}? {tempIdentifier} = {memberAccessExpr};");
1204
_writer
.WriteLine($"{memberAccessExpr} = {bindedValueIdentifier};");
1208
_writer
.WriteLine($"{tempIdentifierStoringExpr}");
1218
_writer
.WriteLine($"{memberAccessExpr} = {memberAccessExpr};");
1223
_writer
.WriteLine($"{tempIdentifierStoringExpr}");
1262
_writer
.WriteLine($@"throw new {Identifier.InvalidOperationException}(""{exMsg}"");");
1273
_writer
.WriteLine($"{type.TypeRef.FullyQualifiedName}? {tempIdentifier} = {memberAccessExpr};");
1315
_writer
.WriteLine($"bool {wasNullIdentifier} = {instanceToBindExpr} is null;");
1346
_writer
.WriteLine($@"throw new {Identifier.InvalidOperationException}(""{exMsg}"");");
1356
_writer
.WriteLine(bindCoreCall);
1465
_writer
.WriteLine($"{declarationType} {memberAccessExpr} = {initExpr};");
1483
_writer
.WriteLine($"{memberAccessExpr} = {memberAccessExpr} is null ? {initExpr} : {assignmentValueIfMemberNull};");
1487
_writer
.WriteLine($"{memberAccessExpr} ??= {initExpr};");
1493
_writer
.WriteLine($"{memberAccessExpr} = {initExpr};");
1509
_writer
.WriteLine($$"""
1515
_writer
.WriteLine();
1531
_writer
.WriteLine($$"""
1540
_writer
.WriteLine($$"""
1545
_writer
.WriteLine();
1553
_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();
252
_writer
.WriteLine();
259
_writer
.WriteLine($$"""
277
_writer
.WriteLine(throwIfNullExpr);
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>");