|
// <auto-generated/>
#nullable enable annotations
#nullable disable warnings
// Suppress warnings about [Obsolete] member usage in generated code.
#pragma warning disable CS0612, CS0618
namespace Microsoft.TemplateEngine.Edge.Settings
{
internal partial class TemplateCacheJsonSerializerContext
{
private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.TemplateEngine.Abstractions.Parameters.IParameterDefinitionSet>? _IParameterDefinitionSet;
/// <summary>
/// Defines the source generated JSON serialization contract metadata for a given type.
/// </summary>
#nullable disable annotations // Marking the property type as nullable-oblivious.
public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.TemplateEngine.Abstractions.Parameters.IParameterDefinitionSet> IParameterDefinitionSet
#nullable enable annotations
{
get => _IParameterDefinitionSet ??= (global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.TemplateEngine.Abstractions.Parameters.IParameterDefinitionSet>)Options.GetTypeInfo(typeof(global::Microsoft.TemplateEngine.Abstractions.Parameters.IParameterDefinitionSet));
}
private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.TemplateEngine.Abstractions.Parameters.IParameterDefinitionSet> Create_IParameterDefinitionSet(global::System.Text.Json.JsonSerializerOptions options)
{
if (!TryGetTypeInfoForRuntimeCustomConverter<global::Microsoft.TemplateEngine.Abstractions.Parameters.IParameterDefinitionSet>(options, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.TemplateEngine.Abstractions.Parameters.IParameterDefinitionSet> jsonTypeInfo))
{
var info = new global::System.Text.Json.Serialization.Metadata.JsonCollectionInfoValues<global::Microsoft.TemplateEngine.Abstractions.Parameters.IParameterDefinitionSet>
{
ObjectCreator = null,
SerializeHandler = IParameterDefinitionSetSerializeHandler
};
jsonTypeInfo = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreateIEnumerableInfo<global::Microsoft.TemplateEngine.Abstractions.Parameters.IParameterDefinitionSet, global::Microsoft.TemplateEngine.Abstractions.ITemplateParameter>(options, info);
jsonTypeInfo.NumberHandling = null;
}
jsonTypeInfo.OriginatingResolver = this;
return jsonTypeInfo;
}
// Intentionally not a static method because we create a delegate to it. Invoking delegates to instance
// methods is almost as fast as virtual calls. Static methods need to go through a shuffle thunk.
private void IParameterDefinitionSetSerializeHandler(global::System.Text.Json.Utf8JsonWriter writer, global::Microsoft.TemplateEngine.Abstractions.Parameters.IParameterDefinitionSet? value)
{
if (value is null)
{
writer.WriteNullValue();
return;
}
writer.WriteStartArray();
foreach (global::Microsoft.TemplateEngine.Abstractions.ITemplateParameter element in value)
{
ITemplateParameterSerializeHandler(writer, element);
}
writer.WriteEndArray();
}
}
}
|