Files
Seasoned/.nuget/packages/jsonschema.net.generation/5.0.4/lib/netstandard2.0/JsonSchema.Net.Generation.xml

3870 lines
194 KiB
XML
Executable File

<?xml version="1.0"?>
<doc>
<assembly>
<name>JsonSchema.Net.Generation</name>
</assembly>
<members>
<member name="T:Json.Schema.Generation.AttributeHandler">
<summary>
Adds attribute-related schema elements.
</summary>
</member>
<member name="M:Json.Schema.Generation.AttributeHandler.AddHandler``1">
<summary>
Adds a handler for a custom attribute that cannot be made to implement <see cref="T:Json.Schema.Generation.IAttributeHandler"/>.
</summary>
<typeparam name="T">The handler type.</typeparam>
</member>
<member name="M:Json.Schema.Generation.AttributeHandler.AddHandler(Json.Schema.Generation.IAttributeHandler)">
<summary>
Adds a handler for a custom attribute that cannot be made to implement <see cref="T:Json.Schema.Generation.IAttributeHandler"/>.
</summary>
<param name="handler">The handler.</param>
</member>
<member name="M:Json.Schema.Generation.AttributeHandler.RemoveHandler``1">
<summary>
Removes a handler type.
</summary>
<typeparam name="T">The handler type.</typeparam>
</member>
<member name="T:Json.Schema.Generation.AdditionalItemsAttribute">
<summary>
Applies an `additionalProperties` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.AdditionalItemsAttribute.BoolValue">
<summary>
If the attribute value represents a boolean schema, gets the boolean value.
</summary>
</member>
<member name="P:Json.Schema.Generation.AdditionalItemsAttribute.TypeValue">
<summary>
If the attribute value represents a type schema, gets the type.
</summary>
</member>
<member name="P:Json.Schema.Generation.AdditionalItemsAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.AdditionalItemsAttribute.#ctor(System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.AdditionalPropertiesAttribute"/> instance.
</summary>
<param name="boolSchema">A boolean schema.</param>
</member>
<member name="M:Json.Schema.Generation.AdditionalItemsAttribute.#ctor(System.Type)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.AdditionalPropertiesAttribute"/> instance.
</summary>
<param name="typeSchema">A type to generate a schema for the keyword.</param>
</member>
<member name="T:Json.Schema.Generation.AdditionalPropertiesAttribute">
<summary>
Applies an `additionalProperties` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.AdditionalPropertiesAttribute.BoolValue">
<summary>
If the attribute value represents a boolean schema, gets the boolean value.
</summary>
</member>
<member name="P:Json.Schema.Generation.AdditionalPropertiesAttribute.TypeValue">
<summary>
If the attribute value represents a type schema, gets the type.
</summary>
</member>
<member name="P:Json.Schema.Generation.AdditionalPropertiesAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.AdditionalPropertiesAttribute.#ctor(System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.AdditionalPropertiesAttribute"/> instance.
</summary>
<param name="boolSchema">A boolean schema.</param>
</member>
<member name="M:Json.Schema.Generation.AdditionalPropertiesAttribute.#ctor(System.Type)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.AdditionalPropertiesAttribute"/> instance.
</summary>
<param name="typeSchema">A type to generate the a schema for the keyword.</param>
</member>
<member name="T:Json.Schema.Generation.ConditionalAttribute">
<summary>
Serves as a base class for attributes which support conditional schema generation.
</summary>
</member>
<member name="P:Json.Schema.Generation.ConditionalAttribute.ConditionGroup">
<summary>
Identifies the condition group under which this attribute applies.
</summary>
</member>
<member name="T:Json.Schema.Generation.ConstAttribute">
<summary>
Applies a `const` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.ConstAttribute.Value">
<summary>
The value.
</summary>
</member>
<member name="P:Json.Schema.Generation.ConstAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.ConstAttribute.#ctor(System.Int32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.ConstAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.ConstAttribute.#ctor(System.UInt32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.ConstAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.ConstAttribute.#ctor(System.Int64)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.ConstAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.ConstAttribute.#ctor(System.UInt64)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.ConstAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.ConstAttribute.#ctor(System.Single)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.ConstAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.ConstAttribute.#ctor(System.Double)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.ConstAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.ConstAttribute.#ctor(System.String)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.ConstAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.ConstAttribute.#ctor(System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.ConstAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="T:Json.Schema.Generation.DefaultAttribute">
<summary>
Applies a `default` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.DefaultAttribute.Value">
<summary>
The value.
</summary>
</member>
<member name="P:Json.Schema.Generation.DefaultAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.DefaultAttribute.#ctor(System.Int32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.DefaultAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.DefaultAttribute.#ctor(System.UInt32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.DefaultAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.DefaultAttribute.#ctor(System.Int64)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.DefaultAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.DefaultAttribute.#ctor(System.UInt64)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.DefaultAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.DefaultAttribute.#ctor(System.Single)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.DefaultAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.DefaultAttribute.#ctor(System.Double)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.DefaultAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.DefaultAttribute.#ctor(System.String)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.DefaultAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.DefaultAttribute.#ctor(System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.DefaultAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="T:Json.Schema.Generation.DescriptionAttribute">
<summary>
Applies a `description` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.DescriptionAttribute.Description">
<summary>
The description.
</summary>
</member>
<member name="P:Json.Schema.Generation.DescriptionAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.DescriptionAttribute.#ctor(System.String)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.DescriptionAttribute"/> instance.
</summary>
<param name="description">The value.</param>
</member>
<member name="T:Json.Schema.Generation.ExclusiveMaximumAttribute">
<summary>
Applies an `exclusiveMaximum` keyword.
</summary>
<remarks>
The `value` parameter is provided in the constructor as a `double` but stored as a `decimal`
because `decimal` is not a valid attribute parameter type.
As such, to prevent overflows, the value is clamped to the `decimal` range prior to being converted.
</remarks>
</member>
<member name="P:Json.Schema.Generation.ExclusiveMaximumAttribute.Value">
<summary>
The exclusive maximum.
</summary>
</member>
<member name="P:Json.Schema.Generation.ExclusiveMaximumAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.ExclusiveMaximumAttribute.#ctor(System.Double)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.ExclusiveMaximumAttribute"/> instance.
</summary>
<param name="value">The value.</param>
<remarks>
The <paramref name="value"/> parameter is provided as a `double` but stored as a `decimal`
because `decimal` is not a valid attribute parameter type.
As such, to prevent overflows, the value is clamped to the `decimal` range prior to being converted.
</remarks>
</member>
<member name="T:Json.Schema.Generation.ExclusiveMinimumAttribute">
<summary>
Applies an `exclusiveMinimum` keyword.
</summary>
<remarks>
The `value` parameter is provided in the constructor as a `double` but stored as a `decimal`
because `decimal` is not a valid attribute parameter type.
As such, to prevent overflows, the value is clamped to the `decimal` range prior to being converted.
</remarks>
</member>
<member name="P:Json.Schema.Generation.ExclusiveMinimumAttribute.Value">
<summary>
The exclusive minimum.
</summary>
</member>
<member name="P:Json.Schema.Generation.ExclusiveMinimumAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.ExclusiveMinimumAttribute.#ctor(System.Double)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.ExclusiveMinimumAttribute"/> instance.
</summary>
<param name="value">The value.</param>
<remarks>
The <paramref name="value"/> parameter is provided as a `double` but stored as a `decimal`
because `decimal` is not a valid attribute parameter type.
As such, to prevent overflows, the value is clamped to the `decimal` range prior to being converted.
</remarks>
</member>
<member name="T:Json.Schema.Generation.IdAttribute">
<summary>
Applies an `$id` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.IdAttribute.Uri">
<summary>
The regular expression pattern.
</summary>
</member>
<member name="M:Json.Schema.Generation.IdAttribute.#ctor(System.String)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.IdAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="T:Json.Schema.Generation.IfAttribute">
<summary>
Creates or amends a condition group by expecting a value in a property.
</summary>
</member>
<member name="P:Json.Schema.Generation.IfAttribute.PropertyName">
<summary>
The property name.
</summary>
</member>
<member name="P:Json.Schema.Generation.IfAttribute.Value">
<summary>
The expected property value.
</summary>
<remarks>
The compiler will allow any compile-time constant, however only JSON-compatible
values will work.
</remarks>
</member>
<member name="P:Json.Schema.Generation.IfAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.IfAttribute.#ctor(System.String,System.Int32,System.Object)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.IfAttribute"/> instance.
</summary>
<param name="propertyName">The name of the property.</param>
<param name="value">The expected value for the property.</param>
<param name="group">The condition group.</param>
</member>
<member name="M:Json.Schema.Generation.IfAttribute.#ctor(System.String,System.UInt32,System.Object)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.IfAttribute"/> instance.
</summary>
<param name="propertyName">The name of the property.</param>
<param name="value">The expected value for the property.</param>
<param name="group">The condition group.</param>
</member>
<member name="M:Json.Schema.Generation.IfAttribute.#ctor(System.String,System.Int64,System.Object)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.IfAttribute"/> instance.
</summary>
<param name="propertyName">The name of the property.</param>
<param name="value">The expected value for the property.</param>
<param name="group">The condition group.</param>
</member>
<member name="M:Json.Schema.Generation.IfAttribute.#ctor(System.String,System.UInt64,System.Object)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.IfAttribute"/> instance.
</summary>
<param name="propertyName">The name of the property.</param>
<param name="value">The expected value for the property.</param>
<param name="group">The condition group.</param>
</member>
<member name="M:Json.Schema.Generation.IfAttribute.#ctor(System.String,System.Single,System.Object)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.IfAttribute"/> instance.
</summary>
<param name="propertyName">The name of the property.</param>
<param name="value">The expected value for the property.</param>
<param name="group">The condition group.</param>
</member>
<member name="M:Json.Schema.Generation.IfAttribute.#ctor(System.String,System.Double,System.Object)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.IfAttribute"/> instance.
</summary>
<param name="propertyName">The name of the property.</param>
<param name="value">The expected value for the property.</param>
<param name="group">The condition group.</param>
</member>
<member name="M:Json.Schema.Generation.IfAttribute.#ctor(System.String,System.Boolean,System.Object)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.IfAttribute"/> instance.
</summary>
<param name="propertyName">The name of the property.</param>
<param name="value">The expected value for the property.</param>
<param name="group">The condition group.</param>
</member>
<member name="M:Json.Schema.Generation.IfAttribute.#ctor(System.String,System.String,System.Object)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.IfAttribute"/> instance.
</summary>
<param name="propertyName">The name of the property.</param>
<param name="value">The expected value for the property.</param>
<param name="group">The condition group.</param>
</member>
<member name="T:Json.Schema.Generation.IfEnumAttribute">
<summary>
Creates multiple condition groups based on the value of an enum property, one group for each defined enum value.
</summary>
<remarks>
The enum type is inferred from the property.
</remarks>
</member>
<member name="P:Json.Schema.Generation.IfEnumAttribute.PropertyName">
<summary>
The property name.
</summary>
</member>
<member name="P:Json.Schema.Generation.IfEnumAttribute.UseNumbers">
<summary>
Gets or sets whether to use numbers or names in the condition. Default is to use names.
</summary>
</member>
<member name="P:Json.Schema.Generation.IfEnumAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.IfEnumAttribute.#ctor(System.String,System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.IfEnumAttribute"/> instance.
</summary>
<param name="propertyName">The property name.</param>
<param name="useNumbers">(optional) Whether to use numbers or names in the condition. Default is to use names.</param>
</member>
<member name="T:Json.Schema.Generation.IfMaxAttribute">
<summary>
Creates or amends a condition group by defining an expected maximum value in a property.
</summary>
<remarks>
The specific keywords which are added depend on the type of the targeted property.
</remarks>
</member>
<member name="P:Json.Schema.Generation.IfMaxAttribute.PropertyName">
<summary>
The property name.
</summary>
</member>
<member name="P:Json.Schema.Generation.IfMaxAttribute.Value">
<summary>
The expected maximum value.
</summary>
</member>
<member name="P:Json.Schema.Generation.IfMaxAttribute.IsExclusive">
<summary>
Gets or sets whether the value should be exclusive.
</summary>
</member>
<member name="P:Json.Schema.Generation.IfMaxAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.IfMaxAttribute.#ctor(System.String,System.Double,System.Object)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.IfAttribute"/> instance.
</summary>
<param name="propertyName">The name of the property.</param>
<param name="value">The expected maximum value for the property.</param>
<param name="group">The condition group.</param>
<remarks>
The <paramref name="value"/> parameter is provided as a `double` but stored as a `decimal`
because `decimal` is not a valid attribute parameter type.
As such, to prevent overflows, the value is clamped to the `decimal` range prior to being converted
when applied as the `maximum` or `exclusiveMaximum` keywords.
</remarks>
</member>
<member name="T:Json.Schema.Generation.IfMinAttribute">
<summary>
Creates or amends a condition group by defining an expected minimum value in a property.
</summary>
<remarks>
The specific keywords which are added depend on the type of the targeted property.
</remarks>
</member>
<member name="P:Json.Schema.Generation.IfMinAttribute.PropertyName">
<summary>
The property name.
</summary>
</member>
<member name="P:Json.Schema.Generation.IfMinAttribute.Value">
<summary>
The expected minimum value.
</summary>
</member>
<member name="P:Json.Schema.Generation.IfMinAttribute.IsExclusive">
<summary>
Gets or sets whether the value should be exclusive.
</summary>
</member>
<member name="P:Json.Schema.Generation.IfMinAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.IfMinAttribute.#ctor(System.String,System.Double,System.Object)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.IfAttribute"/> instance.
</summary>
<param name="propertyName">The name of the property.</param>
<param name="value">The expected minimum value for the property.</param>
<param name="group">The condition group.</param>
<remarks>
The <paramref name="value"/> parameter is provided as a `double` but stored as a `decimal`
because `decimal` is not a valid attribute parameter type.
As such, to prevent overflows, the value is clamped to the `decimal` range prior to being converted
when applied as the `minimum` or `exclusiveMinimum` keywords.
</remarks>
</member>
<member name="T:Json.Schema.Generation.INestableAttribute">
<summary>
Indicates an attribute can support being applied to generic parameters.
</summary>
</member>
<member name="P:Json.Schema.Generation.INestableAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
Default MUST be -1, which indicates the root type.
For example, `Person` in `Dictionary&lt;string, Person&gt;` would have a parameter of 1.
</summary>
</member>
<member name="T:Json.Schema.Generation.JsonExcludeAttribute">
<summary>
Indicates that the property should be excluded from generation.
</summary>
<remarks>
This attribute functions exactly the same as the <see cref="T:System.Text.Json.Serialization.JsonIgnoreAttribute"/>. It
is included separately to support the case where the model should be serialized with
a property or enum member but schema generation should ignore it.
</remarks>
</member>
<member name="M:Json.Schema.Generation.JsonExcludeAttribute.#ctor">
<summary>
Initializes a new instance of <see cref="T:Json.Schema.Generation.JsonExcludeAttribute"/>.
</summary>
</member>
<member name="T:Json.Schema.Generation.JsonNumberHandlingAttributeHandler">
<summary>
Handler for the <see cref="T:System.Text.Json.Serialization.JsonNumberHandlingAttribute"/>.
</summary>
</member>
<member name="M:Json.Schema.Generation.JsonNumberHandlingAttributeHandler.AddConstraints(Json.Schema.Generation.SchemaGenerationContextBase,System.Attribute)">
<summary>
Processes the type and any attributes (present on the context), and adds
intents to the context.
</summary>
<param name="context">The generation context.</param>
<param name="attribute"></param>
</member>
<member name="T:Json.Schema.Generation.MaximumAttribute">
<summary>
Applies a `maximum` keyword.
</summary>
<remarks>
The `value` parameter is provided in the constructor as a `double` but stored as a `decimal`
because `decimal` is not a valid attribute parameter type.
As such, to prevent overflows, the value is clamped to the `decimal` range prior to being converted.
</remarks>
</member>
<member name="P:Json.Schema.Generation.MaximumAttribute.Value">
<summary>
The maximum.
</summary>
</member>
<member name="P:Json.Schema.Generation.MaximumAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.MaximumAttribute.#ctor(System.Double)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.MaximumAttribute"/> instance.
</summary>
<param name="value">The value.</param>
<remarks>
The <paramref name="value"/> parameter is provided as a `double` but stored as a `decimal`
because `decimal` is not a valid attribute parameter type.
As such, to prevent overflows, the value is clamped to the `decimal` range prior to being converted.
</remarks>
</member>
<member name="T:Json.Schema.Generation.MaxItemsAttribute">
<summary>
Applies an `maxItems` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.MaxItemsAttribute.Value">
<summary>
The maximum number of items.
</summary>
</member>
<member name="P:Json.Schema.Generation.MaxItemsAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.MaxItemsAttribute.#ctor(System.UInt32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.MaxItemsAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="T:Json.Schema.Generation.MaxLengthAttribute">
<summary>
Applies a `maxLength` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.MaxLengthAttribute.Length">
<summary>
The maximum length.
</summary>
</member>
<member name="P:Json.Schema.Generation.MaxLengthAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.MaxLengthAttribute.#ctor(System.UInt32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.MaxLengthAttribute"/> instance.
</summary>
<param name="length">The value.</param>
</member>
<member name="T:Json.Schema.Generation.MinimumAttribute">
<summary>
Applies a `minimum` keyword.
</summary>
<remarks>
The `value` parameter is provided in the constructor as a `double` but stored as a `decimal`
because `decimal` is not a valid attribute parameter type.
As such, to prevent overflows, the value is clamped to the `decimal` range prior to being converted.
</remarks>
</member>
<member name="P:Json.Schema.Generation.MinimumAttribute.Value">
<summary>
The minimum.
</summary>
</member>
<member name="P:Json.Schema.Generation.MinimumAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.MinimumAttribute.#ctor(System.Double)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.MinimumAttribute"/> instance.
</summary>
<param name="value">The value.</param>
<remarks>
The <paramref name="value"/> parameter is provided as a `double` but stored as a `decimal`
because `decimal` is not a valid attribute parameter type.
As such, to prevent overflows, the value is clamped to the `decimal` range prior to being converted.
</remarks>
</member>
<member name="T:Json.Schema.Generation.MinItemsAttribute">
<summary>
Applies a `minItems` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.MinItemsAttribute.Value">
<summary>
The minimum number of items.
</summary>
</member>
<member name="P:Json.Schema.Generation.MinItemsAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.MinItemsAttribute.#ctor(System.UInt32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.MinItemsAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="T:Json.Schema.Generation.MinLengthAttribute">
<summary>
Applies a `minimum` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.MinLengthAttribute.Length">
<summary>
The minimum length.
</summary>
</member>
<member name="P:Json.Schema.Generation.MinLengthAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.MinLengthAttribute.#ctor(System.UInt32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.MinLengthAttribute"/> instance.
</summary>
<param name="length">The value.</param>
</member>
<member name="T:Json.Schema.Generation.MultipleOfAttribute">
<summary>
Applies a `multipleOf` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.MultipleOfAttribute.Value">
<summary>
The divisor.
</summary>
</member>
<member name="P:Json.Schema.Generation.MultipleOfAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.MultipleOfAttribute.#ctor(System.Double)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.MultipleOfAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="T:Json.Schema.Generation.NullableAttribute">
<summary>
Overrides the nullability declared in code and either adds or removes `null` in the `type` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.NullableAttribute.IsNullable">
<summary>
Gets whether `null` should be included in the `type` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.NullableAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.NullableAttribute.#ctor(System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.NullableAttribute"/> instance.
</summary>
<param name="isNullable">Whether `null` should be included in the `type` keyword.</param>
</member>
<member name="T:Json.Schema.Generation.PatternAttribute">
<summary>
Applies a `pattern` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.PatternAttribute.Value">
<summary>
The regular expression pattern.
</summary>
</member>
<member name="P:Json.Schema.Generation.PatternAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.PatternAttribute.#ctor(System.String)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.PatternAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="T:Json.Schema.Generation.ReadOnlyAttribute">
<summary>
Applies a `readOnly` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.ReadOnlyAttribute.Value">
<summary>
Whether the property should be read-only.
</summary>
</member>
<member name="P:Json.Schema.Generation.ReadOnlyAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.ReadOnlyAttribute.#ctor">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.ReadOnlyAttribute"/> instance with a value of `true`.
</summary>
</member>
<member name="M:Json.Schema.Generation.ReadOnlyAttribute.#ctor(System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.ReadOnlyAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="T:Json.Schema.Generation.RequiredAttribute">
<summary>
Indicates a property is required and should be listed in the
`required` keyword.
</summary>
</member>
<member name="T:Json.Schema.Generation.TitleAttribute">
<summary>
Applies a `title` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.TitleAttribute.Title">
<summary>
The title.
</summary>
</member>
<member name="P:Json.Schema.Generation.TitleAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.TitleAttribute.#ctor(System.String)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.TitleAttribute"/> instance.
</summary>
<param name="title">The value.</param>
</member>
<member name="T:Json.Schema.Generation.UniqueItemsAttribute">
<summary>
Applies a `uniqueItems` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.UniqueItemsAttribute.Value">
<summary>
Whether the items should be unique.
</summary>
</member>
<member name="P:Json.Schema.Generation.UniqueItemsAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.UniqueItemsAttribute.#ctor(System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.UniqueItemsAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="T:Json.Schema.Generation.WriteOnlyAttribute">
<summary>
Applies a `writeOnly` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.WriteOnlyAttribute.Value">
<summary>
Whether the property should be write-only.
</summary>
</member>
<member name="P:Json.Schema.Generation.WriteOnlyAttribute.GenericParameter">
<summary>
The index of the parameter to which the attribute should apply. Default is -1 to indicate the root.
</summary>
</member>
<member name="M:Json.Schema.Generation.WriteOnlyAttribute.#ctor">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.WriteOnlyAttribute"/> instance with a value of `true`.
</summary>
</member>
<member name="M:Json.Schema.Generation.WriteOnlyAttribute.#ctor(System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.WriteOnlyAttribute"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="T:Json.Schema.Generation.ContextExtensions">
<summary>
Extension methods for context objects.
</summary>
</member>
<member name="M:Json.Schema.Generation.ContextExtensions.GetAttributes(Json.Schema.Generation.SchemaGenerationContextBase)">
<summary>
Gets the attribute set. Type contexts get type attributes; member context
get member attributes.
</summary>
<param name="context">The context.</param>
<returns>The attribute set.</returns>
<exception cref="T:System.InvalidOperationException">Thrown for other context types.</exception>
</member>
<member name="T:Json.Schema.Generation.GeneratorRegistry">
<summary>
Tracks the available generators.
</summary>
</member>
<member name="M:Json.Schema.Generation.GeneratorRegistry.Register(Json.Schema.Generation.Generators.ISchemaGenerator)">
<summary>
Registers a new generator.
</summary>
<param name="generator">The generator.</param>
<remarks>
Registration is order dependent: last one wins. If you have multiple generators which
can handle a given type, the last one registered will be used.
</remarks>
</member>
<member name="T:Json.Schema.Generation.Generators.ISchemaGenerator">
<summary>
Defines a generator.
</summary>
<remarks>
Generators are the first stage of schema generation. These will add keyword intents
to the context, which then are translated into keywords after optimization.
Implementations MUST also override <see cref="M:System.Object.GetHashCode"/>
</remarks>
</member>
<member name="M:Json.Schema.Generation.Generators.ISchemaGenerator.Handles(System.Type)">
<summary>
Determines whether the generator can be used to generate a schema for this type.
</summary>
<param name="type">The type.</param>
<returns>`true` if the generator can be used; `false` otherwise.</returns>
</member>
<member name="M:Json.Schema.Generation.Generators.ISchemaGenerator.AddConstraints(Json.Schema.Generation.SchemaGenerationContextBase)">
<summary>
Processes the type and any attributes (present on the context), and adds
intents to the context.
</summary>
<param name="context">The generation context.</param>
</member>
<member name="T:Json.Schema.Generation.IAttributeHandler">
<summary>
Defines requirements to handle converting an attribute to a keyword intent.
</summary>
</member>
<member name="M:Json.Schema.Generation.IAttributeHandler.AddConstraints(Json.Schema.Generation.SchemaGenerationContextBase,System.Attribute)">
<summary>
Processes the type and any attributes (present on the context), and adds
intents to the context.
</summary>
<param name="context">The generation context.</param>
<param name="attribute">The attribute.</param>
<remarks>
A common pattern is to implement <see cref="T:Json.Schema.Generation.IAttributeHandler"/> on the
attribute itself. In this case, the <paramref name="attribute"/> parameter
will be the same instance as the handler and can likely be ignored.
</remarks>
</member>
<member name="T:Json.Schema.Generation.IAttributeHandler`1">
<summary>
Processes attributes of type <typeparamref name="T"/> that are present on a
type or member and adds intents to the context.
</summary>
<typeparam name="T">The type of the attribute that is handled.</typeparam>
</member>
<member name="T:Json.Schema.Generation.Intents.AdditionalItemsIntent">
<summary>
Provides intent to create an `additionalItems` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.AdditionalItemsIntent.Context">
<summary>
The context that represents the inner requirements.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.AdditionalItemsIntent.#ctor(Json.Schema.Generation.SchemaGenerationContextBase)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.AdditionalItemsIntent"/> instance.
</summary>
<param name="context">The context.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.AdditionalItemsIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.AdditionalPropertiesIntent">
<summary>
Provides intent to create an `additionalProperties` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.AdditionalPropertiesIntent.Context">
<summary>
The context that represents the inner requirements.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.AdditionalPropertiesIntent.#ctor(Json.Schema.Generation.SchemaGenerationContextBase)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.AdditionalPropertiesIntent"/> instance.
</summary>
<param name="context">The context.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.AdditionalPropertiesIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.AllOfIntent">
<summary>
Provides intent to create a `allOf` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.AllOfIntent.Subschemas">
<summary>
Gets the subschemas to include.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.AllOfIntent.#ctor(System.Collections.Generic.IEnumerable{System.Collections.Generic.IEnumerable{Json.Schema.Generation.ISchemaKeywordIntent}})">
<summary>
Creates a new instance of the <see cref="T:Json.Schema.Generation.Intents.AllOfIntent"/> class.
</summary>
<param name="subschemas">The subschemas to include.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.AllOfIntent.#ctor(System.Collections.Generic.IEnumerable{Json.Schema.Generation.ISchemaKeywordIntent}[])">
<summary>
Creates a new instance of the <see cref="T:Json.Schema.Generation.Intents.AllOfIntent"/> class.
</summary>
<param name="subschemas">The subschemas to include.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.AllOfIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.AnyOfIntent">
<summary>
Provides intent to create a `anyOf` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.AnyOfIntent.Subschemas">
<summary>
Gets the subschemas to include.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.AnyOfIntent.#ctor(System.Collections.Generic.IEnumerable{System.Collections.Generic.IEnumerable{Json.Schema.Generation.ISchemaKeywordIntent}})">
<summary>
Creates a new instance of the <see cref="T:Json.Schema.Generation.Intents.AnyOfIntent"/> class.
</summary>
<param name="subschemas">The subschemas to include.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.AnyOfIntent.#ctor(System.Collections.Generic.IEnumerable{Json.Schema.Generation.ISchemaKeywordIntent}[])">
<summary>
Creates a new instance of the <see cref="T:Json.Schema.Generation.Intents.AnyOfIntent"/> class.
</summary>
<param name="subschemas">The subschemas to include.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.AnyOfIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.ConstIntent">
<summary>
Provides intent to create a `const` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.ConstIntent.Value">
<summary>
The expected value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.ConstIntent.#ctor(System.Text.Json.Nodes.JsonNode)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.ConstIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.ConstIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.DefaultIntent">
<summary>
Provides intent to create a `default` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.DefaultIntent.Value">
<summary>
The expected value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.DefaultIntent.#ctor(System.Text.Json.Nodes.JsonNode)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.DefaultIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.DefaultIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.DefsIntent">
<summary>
Provides intent to create a `$defs` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.DefsIntent.Definitions">
<summary>
The contexts that represent the definitions.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.DefsIntent.#ctor(System.Collections.Generic.Dictionary{System.String,Json.Schema.Generation.SchemaGenerationContextBase})">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.DefsIntent"/> instance.
</summary>
<param name="definitions">The contexts.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.DefsIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.DeprecatedIntent">
<summary>
Provides intent to create a `deprecated` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.DeprecatedIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.DeprecatedIntent.#ctor(System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.DeprecatedIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.DeprecatedIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.DescriptionIntent">
<summary>
Provides intent to create a `description` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.DescriptionIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.DescriptionIntent.#ctor(System.String)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.DescriptionIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.DescriptionIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.ElseIntent">
<summary>
Provides intent to create an `else` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.ElseIntent.Subschema">
<summary>
A set of intents used to define the subschema.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.ElseIntent.#ctor(System.Collections.Generic.IEnumerable{Json.Schema.Generation.ISchemaKeywordIntent})">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.ElseIntent"/> instance.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.ElseIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.EnumIntent">
<summary>
Provides intent to create an `enum` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.EnumIntent.Names">
<summary>
The names defined by the enumeration.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.EnumIntent.#ctor(System.Collections.Generic.IEnumerable{System.String})">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.EnumIntent"/> instance.
</summary>
<param name="names">The names defined by the enumeration.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.EnumIntent.#ctor(System.String[])">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.EnumIntent"/> instance.
</summary>
<param name="names">The names defined by the enumeration.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.EnumIntent.#ctor(System.Collections.Generic.IEnumerable{System.Text.Json.Nodes.JsonNode})">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.EnumIntent"/> instance.
</summary>
<param name="values">The values defined by the enumeration.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.EnumIntent.#ctor(System.Text.Json.Nodes.JsonNode[])">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.EnumIntent"/> instance.
</summary>
<param name="values">The values defined by the enumeration.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.EnumIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.ExclusiveMaximumIntent">
<summary>
Provides intent to create an `exclusiveMaximum` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.ExclusiveMaximumIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.ExclusiveMaximumIntent.#ctor(System.Decimal)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.ExclusiveMaximumIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.ExclusiveMaximumIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.ExclusiveMinimumIntent">
<summary>
Provides intent to create an `exclusiveMinimum` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.ExclusiveMinimumIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.ExclusiveMinimumIntent.#ctor(System.Decimal)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.ExclusiveMinimumIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.ExclusiveMinimumIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.FormatIntent">
<summary>
Provides intent to create a `format` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.FormatIntent.Format">
<summary>
The format.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.FormatIntent.#ctor(Json.Schema.Format)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.FormatIntent"/> instance.
</summary>
<param name="format">The format.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.FormatIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.IdIntent">
<summary>
Provides intent to create an `$id` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.IdIntent.Id">
<summary>
The URI to use as the schema's ID.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.IdIntent.#ctor(System.Uri)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.IdIntent"/> instance.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.IdIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.IfIntent">
<summary>
Provides intent to create an `if` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.IfIntent.Subschema">
<summary>
A set of intents used to define the subschema.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.IfIntent.#ctor(System.Collections.Generic.IEnumerable{Json.Schema.Generation.ISchemaKeywordIntent})">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.IfIntent"/> instance.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.IfIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.ItemsIntent">
<summary>
Provides intent to create an `items` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.ItemsIntent.Context">
<summary>
The context that represents the inner requirements.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.ItemsIntent.#ctor(Json.Schema.Generation.SchemaGenerationContextBase)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.ItemsIntent"/> instance.
</summary>
<param name="context">The context.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.ItemsIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.MaximumIntent">
<summary>
Provides intent to create a `maximum` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.MaximumIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.MaximumIntent.#ctor(System.Decimal)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.MaximumIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.MaximumIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.MaxItemsIntent">
<summary>
Provides intent to create a `maxItems` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.MaxItemsIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.MaxItemsIntent.#ctor(System.UInt32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.MaxItemsIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.MaxItemsIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.MaxLengthIntent">
<summary>
Provides intent to create a `maxLength` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.MaxLengthIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.MaxLengthIntent.#ctor(System.UInt32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.MaxLengthIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.MaxLengthIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.MaxPropertiesIntent">
<summary>
Provides intent to create a `maxProperties` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.MaxPropertiesIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.MaxPropertiesIntent.#ctor(System.UInt32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.MaxPropertiesIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.MaxPropertiesIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.MinimumIntent">
<summary>
Provides intent to create a `minimum` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.MinimumIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.MinimumIntent.#ctor(System.Decimal)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.MinimumIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.MinimumIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.MinItemsIntent">
<summary>
Provides intent to create a `minItems` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.MinItemsIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.MinItemsIntent.#ctor(System.UInt32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.MinItemsIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.MinItemsIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.MinLengthIntent">
<summary>
Provides intent to create a `minLength` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.MinLengthIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.MinLengthIntent.#ctor(System.UInt32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.MinLengthIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.MinLengthIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.MinPropertiesIntent">
<summary>
Provides intent to create a `minProperties` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.MinPropertiesIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.MinPropertiesIntent.#ctor(System.UInt32)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.MinPropertiesIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.MinPropertiesIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.MultipleOfIntent">
<summary>
Provides intent to create a `multipleOf` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.MultipleOfIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.MultipleOfIntent.#ctor(System.Decimal)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.MultipleOfIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.MultipleOfIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.NotIntent">
<summary>
Provides intent to create an `if` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.NotIntent.Subschema">
<summary>
A set of intents used to define the subschema.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.NotIntent.#ctor(System.Collections.Generic.IEnumerable{Json.Schema.Generation.ISchemaKeywordIntent})">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.IfIntent"/> instance.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.NotIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.PatternIntent">
<summary>
Provides intent to create a `pattern` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.PatternIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.PatternIntent.#ctor(System.String)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.PatternIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.PatternIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.PropertiesIntent">
<summary>
Provides intent to create an `additionalProperties` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.PropertiesIntent.Properties">
<summary>
The contexts that represent the properties.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.PropertiesIntent.#ctor(System.Collections.Generic.Dictionary{System.String,Json.Schema.Generation.SchemaGenerationContextBase})">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.PropertiesIntent"/> instance.
</summary>
<param name="properties">The contexts.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.PropertiesIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.PropertyNamesIntent">
<summary>
Provides intent to create a `propertyNames` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.PropertyNamesIntent.Context">
<summary>
The context that represents the inner requirements.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.PropertyNamesIntent.#ctor(Json.Schema.Generation.SchemaGenerationContextBase)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.PropertyNamesIntent"/> instance.
</summary>
<param name="context">The context.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.PropertyNamesIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.ReadOnlyIntent">
<summary>
Provides intent to create a `readOnly` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.ReadOnlyIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.ReadOnlyIntent.#ctor(System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.ReadOnlyIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.ReadOnlyIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.RefIntent">
<summary>
Provides intent to create a `$ref` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.RefIntent.Reference">
<summary>
The reference.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.RefIntent.#ctor(System.Uri)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.RefIntent"/> instance.
</summary>
<param name="reference">The reference.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.RefIntent.#ctor(Json.Schema.Generation.MemberGenerationContext,System.Uri)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.RefIntent"/> instance.
</summary>
<param name="context">The context that holds this reference.</param>
<param name="reference">The reference.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.RefIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.RequiredIntent">
<summary>
Provides intent to create a `required` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.RequiredIntent.RequiredProperties">
<summary>
The required property names.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.RequiredIntent.#ctor(System.Collections.Generic.List{System.String})">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.RequiredIntent"/> instance.
</summary>
<param name="requiredProperties">The required property names.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.RequiredIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.ThenIntent">
<summary>
Provides intent to create a `then` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.ThenIntent.Subschema">
<summary>
A set of intents used to define the subschema.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.ThenIntent.#ctor(System.Collections.Generic.IEnumerable{Json.Schema.Generation.ISchemaKeywordIntent})">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.ThenIntent"/> instance.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.ThenIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.TitleIntent">
<summary>
Provides intent to create a `title` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.TitleIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.TitleIntent.#ctor(System.String)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.TitleIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.TitleIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.TypeIntent">
<summary>
Provides intent to create a `type` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.TypeIntent.Type">
<summary>
The type.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.TypeIntent.#ctor(Json.Schema.SchemaValueType)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.TypeIntent"/> instance.
</summary>
<param name="type">The type.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.TypeIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.UnevaluatedPropertiesIntent">
<summary>
Provides intent to create an `unevaluatedProperties` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.UnevaluatedPropertiesIntent.Context">
<summary>
The context that represents the inner requirements.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.UnevaluatedPropertiesIntent.#ctor(Json.Schema.Generation.SchemaGenerationContextBase)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.UnevaluatedPropertiesIntent"/> instance.
</summary>
<param name="context">The context, or null to apply the false schema.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.UnevaluatedPropertiesIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.UniqueItemsIntent">
<summary>
Provides intent to create a `uniqueItems` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.UniqueItemsIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.UniqueItemsIntent.#ctor(System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.UniqueItemsIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.UniqueItemsIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.Intents.WriteOnlyIntent">
<summary>
Provides intent to create a `writeOnly` keyword.
</summary>
</member>
<member name="P:Json.Schema.Generation.Intents.WriteOnlyIntent.Value">
<summary>
The value.
</summary>
</member>
<member name="M:Json.Schema.Generation.Intents.WriteOnlyIntent.#ctor(System.Boolean)">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.Intents.WriteOnlyIntent"/> instance.
</summary>
<param name="value">The value.</param>
</member>
<member name="M:Json.Schema.Generation.Intents.WriteOnlyIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.ISchemaKeywordIntent">
<summary>
Describes the intent to create a keyword.
</summary>
<remarks>
Because <see cref="T:Json.Schema.JsonSchema"/> is immutable, the system cannot
generate the schema directly as it needs to do some optimization
first. Keyword intents allow this. They record all of the data
needed by the keyword. Application involves translating the
intent into an actual keyword on the <see cref="T:Json.Schema.JsonSchemaBuilder"/>
using one of the fluent extension methods provided by
<see cref="T:Json.Schema.JsonSchemaBuilderExtensions"/>. Custom intents
will need to be applied from within custom <see cref="T:Json.Schema.Generation.Generators.ISchemaGenerator"/>
implementations.
Implementations MUST also override <see cref="M:System.Object.GetHashCode"/>
</remarks>
</member>
<member name="M:Json.Schema.Generation.ISchemaKeywordIntent.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The builder.</param>
</member>
<member name="T:Json.Schema.Generation.ISchemaRefiner">
<summary>
Describes a schema generation refiner.
</summary>
<remarks>
Refiners run after attributes have been processed, before the
schema itself is created. This is used to add customization
logic.
</remarks>
</member>
<member name="M:Json.Schema.Generation.ISchemaRefiner.ShouldRun(Json.Schema.Generation.SchemaGenerationContextBase)">
<summary>
Determines if the refiner should run.
</summary>
<param name="context"></param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.ISchemaRefiner.Run(Json.Schema.Generation.SchemaGenerationContextBase)">
<summary>
Runs the refiner.
</summary>
<param name="context"></param>
</member>
<member name="T:Json.Schema.Generation.ITypeNameGenerator">
<summary>
Allows custom `$defs` key naming functionality.
</summary>
</member>
<member name="M:Json.Schema.Generation.ITypeNameGenerator.GenerateName(System.Type)">
<summary>
Generates a `$defs` key for a type.
</summary>
<param name="type">The type.</param>
<returns>A string to use for the type; null to use the library-provided behavior.</returns>
</member>
<member name="T:Json.Schema.Generation.JsonSchemaBuilderExtensions">
<summary>
Provides extension methods for schema generation.
</summary>
</member>
<member name="M:Json.Schema.Generation.JsonSchemaBuilderExtensions.FromType``1(Json.Schema.JsonSchemaBuilder,Json.Schema.Generation.SchemaGeneratorConfiguration)">
<summary>
Generates a schema from a CLR type.
</summary>
<typeparam name="T">The type to generate.</typeparam>
<param name="builder">The schema builder.</param>
<param name="configuration">The generator configuration.</param>
<returns>The schema builder (for fluent syntax support).</returns>
</member>
<member name="M:Json.Schema.Generation.JsonSchemaBuilderExtensions.FromType(Json.Schema.JsonSchemaBuilder,System.Type,Json.Schema.Generation.SchemaGeneratorConfiguration)">
<summary>
Generates a schema from a CLR type.
</summary>
<param name="builder">The schema builder.</param>
<param name="type">The type to generate.</param>
<param name="configuration">The generator configuration.</param>
<returns>The schema builder (for fluent syntax support).</returns>
</member>
<member name="T:Json.Schema.Generation.MemberGenerationContext">
<summary>
Provides context for object members to include those attributes.
</summary>
</member>
<member name="P:Json.Schema.Generation.MemberGenerationContext.Type">
<summary>
The type.
</summary>
</member>
<member name="P:Json.Schema.Generation.MemberGenerationContext.BasedOn">
<summary>
Gets the context this is based on.
</summary>
</member>
<member name="P:Json.Schema.Generation.MemberGenerationContext.Attributes">
<summary>
Gets the set of member attributes.
</summary>
</member>
<member name="P:Json.Schema.Generation.MemberGenerationContext.NullableRef">
<summary>
Indicates whether the member is marked as a nullable reference type.
</summary>
</member>
<member name="P:Json.Schema.Generation.MemberGenerationContext.Parameter">
<summary>
Gets or sets the generic parameter that this context represents.
A null value (default) represents the root type.
</summary>
</member>
<member name="T:Json.Schema.Generation.PropertyNameResolver">
<summary>
Declares a property name resolution which is used to provide a property name.
</summary>
<param name="input">The property.</param>
<returns>The property name</returns>
</member>
<member name="T:Json.Schema.Generation.PropertyNameResolvers">
<summary>
Defines a set of predefined property name resolution methods.
</summary>
</member>
<member name="F:Json.Schema.Generation.PropertyNameResolvers.AsDeclared">
<summary>
Makes no changes. Properties are generated with the name of the property in code.
</summary>
</member>
<member name="F:Json.Schema.Generation.PropertyNameResolvers.CamelCase">
<summary>
Property names to camel case (e.g. `camelCase`).
</summary>
</member>
<member name="F:Json.Schema.Generation.PropertyNameResolvers.PascalCase">
<summary>
Property names to pascal case (e.g. `PascalCase`).
</summary>
</member>
<member name="F:Json.Schema.Generation.PropertyNameResolvers.SnakeCase">
<summary>
Property names to snake case (e.g. `Snake_Case`).
</summary>
</member>
<member name="F:Json.Schema.Generation.PropertyNameResolvers.LowerSnakeCase">
<summary>
Property names to lower snake case (e.g. `lower_snake_case`).
</summary>
</member>
<member name="F:Json.Schema.Generation.PropertyNameResolvers.UpperSnakeCase">
<summary>
Property names to upper snake case (e.g. `UPPER_SNAKE_CASE`).
</summary>
</member>
<member name="F:Json.Schema.Generation.PropertyNameResolvers.KebabCase">
<summary>
Property names to kebab case (e.g. `Kebab-Case`).
</summary>
</member>
<member name="F:Json.Schema.Generation.PropertyNameResolvers.UpperKebabCase">
<summary>
Property names to upper kebab case (e.g. `UPPER-KEBAB-CASE`).
</summary>
</member>
<member name="T:Json.Schema.Generation.PropertyOrder">
<summary>
Indicates the sequence in which properties will be listed in the schema.
</summary>
</member>
<member name="F:Json.Schema.Generation.PropertyOrder.AsDeclared">
<summary>
Properties will be listed in the order they're declared in code.
</summary>
</member>
<member name="F:Json.Schema.Generation.PropertyOrder.ByName">
<summary>
Properties will be sorted by name, case-insensitive.
</summary>
</member>
<member name="T:Json.Schema.Generation.SchemaGenerationContextBase">
<summary>
Provides base functionality and data for generation contexts.
</summary>
</member>
<member name="F:Json.Schema.Generation.SchemaGenerationContextBase.True">
<summary>
Represents a true schema.
</summary>
</member>
<member name="F:Json.Schema.Generation.SchemaGenerationContextBase.False">
<summary>
Represents a false schema.
</summary>
</member>
<member name="P:Json.Schema.Generation.SchemaGenerationContextBase.Type">
<summary>
The type.
</summary>
</member>
<member name="P:Json.Schema.Generation.SchemaGenerationContextBase.Intents">
<summary>
The keyword intents required for this type.
</summary>
</member>
<member name="M:Json.Schema.Generation.SchemaGenerationContextBase.Apply(Json.Schema.JsonSchemaBuilder)">
<summary>
Applies the keyword to the <see cref="T:Json.Schema.JsonSchemaBuilder"/>.
</summary>
<param name="builder">The schema builder.</param>
<returns>The schema builder (for fluent syntax support).</returns>
</member>
<member name="T:Json.Schema.Generation.SchemaGenerationContextCache">
<summary>
Gets the contexts for the current run.
</summary>
</member>
<member name="M:Json.Schema.Generation.SchemaGenerationContextCache.Get(System.Type)">
<summary>
Gets or creates a <see cref="T:Json.Schema.Generation.TypeGenerationContext"/> based on the given
type and attribute set.
</summary>
<param name="type">The type to generate.</param>
<returns>
A generation context, from the cache if one exists with the specified
type and attribute set; otherwise a new one. New contexts are automatically
cached.
</returns>
<remarks>
Use this in your generator if it needs to create keywords with subschemas.
</remarks>
</member>
<member name="T:Json.Schema.Generation.SchemaGeneratorConfiguration">
<summary>
Provides additional configuration for the generator.
</summary>
</member>
<member name="P:Json.Schema.Generation.SchemaGeneratorConfiguration.Current">
<summary>
Thread-static storage of the current configuration. Only to be used for reading
the configuration. Setting values on this object will be overwritten when starting
generation.
</summary>
</member>
<member name="P:Json.Schema.Generation.SchemaGeneratorConfiguration.Refiners">
<summary>
A collection of refiners.
</summary>
</member>
<member name="P:Json.Schema.Generation.SchemaGeneratorConfiguration.Generators">
<summary>
A collection of generators in addition to the global set.
</summary>
</member>
<member name="P:Json.Schema.Generation.SchemaGeneratorConfiguration.PropertyOrder">
<summary>
Gets or sets the order in which properties will be listed in the schema.
</summary>
</member>
<member name="P:Json.Schema.Generation.SchemaGeneratorConfiguration.PropertyNameResolver">
<summary>
Gets or sets the property name resolving method. Default is <see cref="F:Json.Schema.Generation.PropertyNameResolvers.AsDeclared"/>.
</summary>
<remarks>
This can be replaced with any `Func&lt;MemberInfo, string&gt;`.
</remarks>
</member>
<member name="P:Json.Schema.Generation.SchemaGeneratorConfiguration.StrictConditionals">
<summary>
Gets or sets whether properties that are affected by conditionals are defined
globally or only within their respective `then` subschemas. True restricts
those property definitions to `then` subschemas and adds a top-level
`unevaluatedProperties: false`; false (default) defines them globally.
</summary>
</member>
<member name="P:Json.Schema.Generation.SchemaGeneratorConfiguration.ExternalReferences">
<summary>
Allows mapping of types to external schema `$id`s. When encountering one
of these types, a `$ref` keyword will be generated instead of a full schema.
</summary>
</member>
<member name="P:Json.Schema.Generation.SchemaGeneratorConfiguration.TypeNameGenerator">
<summary>
Provides custom naming functionality.
</summary>
</member>
<member name="M:Json.Schema.Generation.SchemaGeneratorConfiguration.#ctor">
<summary>
Creates a new <see cref="T:Json.Schema.Generation.SchemaGeneratorConfiguration"/>.
</summary>
</member>
<member name="M:Json.Schema.Generation.SchemaGeneratorConfiguration.RegisterXmlCommentFile``1(System.String)">
<summary>
Registers an assembly's XML comment file.
</summary>
<typeparam name="T">Any type in the assembly.</typeparam>
<param name="filename">The file name of the XML file.</param>
</member>
<member name="T:Json.Schema.Generation.TypeExtensions">
<summary>
Provides informative methods for types.
</summary>
</member>
<member name="M:Json.Schema.Generation.TypeExtensions.IsArray(System.Type)">
<summary>
Determines whether the type is a simple, one-dimensional, non-keyed collection.
</summary>
<param name="type">The type.</param>
<returns>true if the type represents an array; false otherwise.</returns>
</member>
<member name="M:Json.Schema.Generation.TypeExtensions.IsNullableValueType(System.Type)">
<summary>
Determines if the type is a nullable value type, i.e. <see cref="T:System.Nullable`1"/>.
</summary>
<param name="type">The type</param>
<returns>True if the type is <see cref="T:System.Nullable`1"/>; false otherwise.</returns>
</member>
<member name="M:Json.Schema.Generation.TypeExtensions.IsNullableNumber(System.Type)">
<summary>
Determines if the type is a nullable value type, i.e. <see cref="T:System.Nullable`1"/>.
</summary>
<param name="type">The type</param>
<returns>True if the type is <see cref="T:System.Nullable`1"/>; false otherwise.</returns>
</member>
<member name="T:Json.Schema.Generation.TypeGenerationContext">
<summary>
Provides a context for generating schemas for types.
</summary>
</member>
<member name="P:Json.Schema.Generation.TypeGenerationContext.Type">
<summary>
The type.
</summary>
</member>
<member name="P:Json.Schema.Generation.TypeGenerationContext.References">
<summary>
The number of times this context has been referenced.
</summary>
</member>
<member name="T:Json.Schema.Generation.XmlComments.CommonComments">
<summary>
Base class for comments classes
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.CommonComments.Summary">
<summary>
"summary" comment
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.CommonComments.Remarks">
<summary>
"remarks" comment
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.CommonComments.Example">
<summary>
"example" comment
</summary>
</member>
<member name="T:Json.Schema.Generation.XmlComments.DocXmlReader">
<summary>
Helper class that reads XML documentation generated by C# compiler from code comments.
</summary>
</member>
<member name="F:Json.Schema.Generation.XmlComments.DocXmlReader._assemblyNavigators">
<summary>
Dictionary of XML navigators for multiple assemblies.
</summary>
</member>
<member name="F:Json.Schema.Generation.XmlComments.DocXmlReader._assemblyXmlPathFunction">
<summary>
Function that returns path to XML documentation file for specified assembly.
</summary>
</member>
<member name="F:Json.Schema.Generation.XmlComments.DocXmlReader._unIndentText">
<summary>
Default value is true.
When it is set to true DocXmlReader removes leading spaces and an empty
lines at the end of the comment.
By default XML comments are indented for human readability but it adds
leading spaces that are not present in source code.
For example here is compiler generated XML documentation with '-'
showing spaces for readability.
----
<summary>
----Text
----
</summary>
With UnIndentText set to true returned summary text is just "Text"
With UnIndentText set to false returned summary text contains leading spaces
and the trailing empty line "\n----Text\n----"
</summary>
</member>
<member name="M:Json.Schema.Generation.XmlComments.DocXmlReader.#ctor(System.Func{System.Reflection.Assembly,System.String})">
<summary>
Open XML documentation files based on assemblies of types. Comment file names
are generated based on assembly names by replacing assembly location with .xml.
</summary>
<param name="assemblyXmlPathFunction">
Function that returns path to the assembly XML comment file.
If function is null then comments file is assumed to have the same file name as assembly.
If function returns null or if comments file does not exist then all comments for types from that
assembly would remain empty.
</param>
</member>
<member name="M:Json.Schema.Generation.XmlComments.DocXmlReader.ExplicitlyAddAssemblyXml(System.Reflection.Assembly,System.String)">
<summary>
</summary>
</member>
<member name="M:Json.Schema.Generation.XmlComments.DocXmlReader.ExplictlyRemoveAssemblyXml(System.Reflection.Assembly)">
<summary>
</summary>
</member>
<member name="M:Json.Schema.Generation.XmlComments.DocXmlReader.GetMethodComments(System.Reflection.MethodBase,System.Boolean)">
<summary>
Returns comments for the class method. May return null object is comments for method
are missing in XML documentation file.
Returned comments tags:
Summary, Remarks, Parameters (if present), Responses (if present), Returns
</summary>
<param name="methodInfo"></param>
<param name="nullIfNoComment">Return null if comment for method is not available</param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.DocXmlReader.GetTypeComments(System.Type)">
<summary>
Return Summary comments for specified type.
For Delegate types Parameters field may be returned as well.
</summary>
<param name="type"></param>
<returns>TypeComment</returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.DocXmlReader.GetMemberComments(System.Reflection.MemberInfo)">
<summary>
Returns comments for specified class member.
</summary>
<param name="memberInfo"></param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.DocXmlReader.GetEnumComments(System.Type,System.Boolean)">
<summary>
Get enum type description and comments for enum values. If <paramref name="fillValues" />
is false and no comments exist for any value then ValueComments list is empty.
</summary>
<param name="enumType">
Enum type to get comments for. If this is not an enum type then functions throws an
ArgumentException
</param>
<param name="fillValues">
True if ValueComments list should be filled even if
none of the enum values have any summary comments
</param>
<returns>EnumComment</returns>
</member>
<member name="T:Json.Schema.Generation.XmlComments.EnumComments">
<summary>
Enum type comments
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.EnumComments.ValueComments">
<summary>
"summary" comments of enum values. List contains names, values and
comments for each enum value.
If none of values have any summary comments then this list may be empty.
If at least one value has summary comment then this list contains
all enum values with empty comments for values without comments.
</summary>
</member>
<member name="T:Json.Schema.Generation.XmlComments.EnumValueComment">
<summary>
Comment of one enum value
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.EnumValueComment.Name">
<summary>
The name of the enum value
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.EnumValueComment.Value">
<summary>
Integer value of the enum
</summary>
</member>
<member name="M:Json.Schema.Generation.XmlComments.EnumValueComment.ToString">
<summary>
Debugging-friendly text.
</summary>
<returns></returns>
</member>
<member name="T:Json.Schema.Generation.XmlComments.InheritdocTag">
<summary>
Inheritdoc tag with optional cref attribute.
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.InheritdocTag.Cref">
<summary>
Cref attribute value. This value is optional.
</summary>
</member>
<member name="T:Json.Schema.Generation.XmlComments.MethodComments">
<summary>
Method, operator and constructor comments
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.MethodComments.Parameters">
<summary>
"param" comments of the method. Each item in the list is the tuple
where Item1 is the "name" of the parameter in XML file and
Item2 is the body of the comment.
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.MethodComments.Returns">
<summary>
"returns" comment of the method.
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.MethodComments.Responses">
<summary>
"response" comments of the method. The list contains tuples where
Item1 is the "code" of the response and
Item1 is the body of the comment.
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.MethodComments.TypeParameters">
<summary>
"typeparam" comments of the method. Each item in the list is the tuple
where Item1 is the "name" of the parameter in XML file and
Item2 is the body of the comment.
</summary>
</member>
<member name="T:Json.Schema.Generation.XmlComments.TypeComments">
<summary>
Class, Struct or delegate comments
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.TypeComments.Parameters">
<summary>
This list contains descriptions of delegate type parameters.
For non-delegate types this list is empty.
For delegate types this list contains tuples where
Item1 is the "param" item "name" attribute and
Item2 is the body of the comment
</summary>
</member>
<member name="P:Json.Schema.Generation.XmlComments.TypeComments.Returns">
<summary>
"returns" comment of the method.
</summary>
</member>
<member name="T:Json.Schema.Generation.XmlComments.XmlDocId">
<summary>
Class that constructs IDs for XML documentation comments.
IDs uniquely identify comments in the XML documentation file.
</summary>
</member>
<member name="F:Json.Schema.Generation.XmlComments.XmlDocId._memberPrefix">
<summary>
Type member XML ID prefix.
</summary>
</member>
<member name="F:Json.Schema.Generation.XmlComments.XmlDocId._fieldPrefix">
<summary>
Field name XML ID prefix.
</summary>
</member>
<member name="F:Json.Schema.Generation.XmlComments.XmlDocId._propertyPrefix">
<summary>
Property name XML ID prefix.
</summary>
</member>
<member name="F:Json.Schema.Generation.XmlComments.XmlDocId._eventPrefix">
<summary>
Event XML ID prefix.
</summary>
</member>
<member name="F:Json.Schema.Generation.XmlComments.XmlDocId._typePrefix">
<summary>
Type name XML ID prefix.
</summary>
</member>
<member name="F:Json.Schema.Generation.XmlComments.XmlDocId._constructorNameId">
<summary>
Part of the constructor XML tag in XML document.
</summary>
</member>
<member name="M:Json.Schema.Generation.XmlComments.XmlDocId.TypeId(System.Type)">
<summary>
Get XML Id of the type definition.
</summary>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.XmlDocId.MethodId(System.Reflection.MethodBase)">
<summary>
Get XML Id of a class method
</summary>
<param name="methodInfo"></param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.XmlDocId.MemberId(System.Reflection.MemberInfo)">
<summary>
Get XML Id of any member of the type.
</summary>
<param name="memberInfo"></param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.XmlDocId.PropertyId(System.Reflection.MemberInfo)">
<summary>
Get XML Id of property
</summary>
<param name="propertyInfo"></param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.XmlDocId.FieldId(System.Reflection.MemberInfo)">
<summary>
Get XML Id of field
</summary>
<param name="fieldInfo"></param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.XmlDocId.EventId(System.Reflection.MemberInfo)">
<summary>
Get XML Id of event field
</summary>
<param name="eventInfo"></param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.XmlDocId.EnumValueId(System.Type,System.String)">
<summary>
Get XML Id of specified value of the enum type.
</summary>
<param name="enumType">Enum type</param>
<param name="enumName">The name of the value without type and namespace</param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.XmlDocId.GetTypeXmlId(System.Type,System.Boolean,System.Boolean,System.String[])">
<summary>
Gets the type's full name prepared for xml documentation format.
</summary>
<param name="type">The type.</param>
<param name="isOut">Whether the declaring member for this type is an out directional parameter.</param>
<param name="isMethodParameter">If the type is being used has a method parameter.</param>
<param name="genericClassParams">The names of the generic class parameters from the parent type.</param>
<returns>The full name.</returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.XmlDocId.GetMethodXmlId(System.Reflection.MethodBase)">
<summary>
Get method element Id in XML document
</summary>
<param name="methodInfo"></param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.XmlDocId.IsIndexerProperty(System.Reflection.MethodBase)">
<summary>
Return true if this method is actually an indexer property.
</summary>
<param name="methodInfo"></param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.XmlDocId.ExplicitImplicitPostfix(System.Reflection.MethodBase)">
<summary>
Explicit/implicit operator may have return value appended to the name.
</summary>
<param name="methodInfo"></param>
<returns></returns>
</member>
<member name="M:Json.Schema.Generation.XmlComments.XmlDocId.ShortMethodName(System.Reflection.MethodBase)">
<summary>
Get method name. Some methods have special names or like generic methods some extra information.
</summary>
<param name="methodInfo"></param>
<returns></returns>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.AllowNullAttribute">
<summary>
Specifies that null is allowed as an input even if the corresponding type disallows it.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.ConstantExpectedAttribute">
<summary>
Indicates that the specified method parameter expects a constant.
</summary>
<remarks>
This can be used to inform tooling that a constant should be used as an argument for the annotated parameter.
</remarks>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.ConstantExpectedAttribute.Min">
<summary>
Indicates the minimum bound of the expected constant, inclusive.
</summary>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.ConstantExpectedAttribute.Max">
<summary>
Indicates the maximum bound of the expected constant, inclusive.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.DisallowNullAttribute">
<summary>
Specifies that null is disallowed as an input even if the corresponding type allows it.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute">
<summary>
Applied to a method that will never return under any circumstance.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute">
<summary>
Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
</summary>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.#ctor(System.Boolean)">
<summary>
Initializes the attribute with the specified parameter value.
</summary>
<param name="parameterValue">
The condition parameter value. Code after the method will be considered unreachable
by diagnostics if the argument to the associated parameter matches this value.
</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.ParameterValue">
<summary>
Gets the condition parameter value.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.ExperimentalAttribute">
<summary>
Indicates that an API is experimental and it may change in the future.
</summary>
<remarks>
This attribute allows call sites to be flagged with a diagnostic that indicates that an experimental
feature is used. Authors can use this attribute to ship preview features in their assemblies.
</remarks>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.ExperimentalAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.ExperimentalAttribute"/> class,
specifying the ID that the compiler will use when reporting a use of the API the attribute applies to.
</summary>
<param name="diagnosticId">The ID that the compiler will use when reporting a use of the API the attribute applies to.</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.ExperimentalAttribute.DiagnosticId">
<summary>
Gets the ID that the compiler will use when reporting a use of the API the attribute applies to.
</summary>
<value>The unique diagnostic ID.</value>
<remarks>
The diagnostic ID is shown in build output for warnings and errors.
<para>This property represents the unique ID that can be used to suppress the warnings or errors, if needed.</para>
</remarks>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.ExperimentalAttribute.UrlFormat">
<summary>
Gets or sets the URL for corresponding documentation.
The API accepts a format string instead of an actual URL, creating a generic URL that includes the diagnostic ID.
</summary>
<value>The format string that represents a URL to corresponding documentation.</value>
<remarks>An example format string is <c>https://contoso.com/obsoletion-warnings/{0}</c>.</remarks>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.MaybeNullAttribute">
<summary>
Specifies that an output may be null even if the corresponding type disallows it.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute">
<summary>
Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue"/>, the parameter may be null even if the corresponding type disallows it.
</summary>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.#ctor(System.Boolean)">
<summary>
Initializes the attribute with the specified return value condition.
</summary>
<param name="returnValue">The return value condition. If the method returns this value, the associated parameter may be null.</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue">
<summary>
Gets the return value condition.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute">
<summary>
Specifies that the method or property will ensure that the listed field and property members have not-null values.
</summary>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String)">
<summary>
Initializes the attribute with a field or property member.
</summary>
<param name="member">The field or property member that is promised to be not-null.</param>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String[])">
<summary>
Initializes the attribute with the list of field and property members.
</summary>
<param name="members">The list of field and property members that are promised to be not-null.</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.Members">
<summary>
Gets field or property member names.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute">
<summary>
Specifies that the method or property will ensure that the listed field and property
members have not-null values when returning with the specified return value condition.
</summary>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String)">
<summary>
Initializes the attribute with the specified return value condition and a field or property member.
</summary>
<param name="returnValue">The return value condition. If the method returns this value, the associated parameter will not be null.</param>
<param name="member">The field or property member that is promised to be not-null.</param>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String[])">
<summary>
Initializes the attribute with the specified return value condition and list of field and property members.
</summary>
<param name="returnValue">The return value condition. If the method returns this value, the associated parameter will not be null.</param>
<param name="members">The list of field and property members that are promised to be not-null.</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.ReturnValue">
<summary>
Gets the return value condition.
</summary>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.Members">
<summary>
Gets field or property member names.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.NotNullAttribute">
<summary>
Specifies that an output will not be null even if the corresponding type allows it.
Specifies that an input argument was not null when the call returns.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute">
<summary>
Specifies that the output will be non-null if the named parameter is non-null.
</summary>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.#ctor(System.String)">
<summary>
Initializes the attribute with the associated parameter name.
</summary>
<param name="parameterName">The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.ParameterName">
<summary>
Gets the associated parameter name.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute">
<summary>
Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue"/>, the parameter will not be null even if the corresponding type allows it.
</summary>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.#ctor(System.Boolean)">
<summary>
Initializes the attribute with the specified return value condition.
</summary>
<param name="returnValue">The return value condition. If the method returns this value, the associated parameter will not be null.</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue">
<summary>Gets the return value condition.</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.SetsRequiredMembersAttribute">
<summary>
Specifies that this constructor sets all required members for the current type,
and callers do not need to set any required members themselves.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute">
<summary>
Specifies the syntax used in a string.
</summary>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.#ctor(System.String)">
<summary>
Initializes the <see cref="T:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute"/> with the identifier of the syntax used.
</summary>
<param name="syntax">The syntax identifier.</param>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.#ctor(System.String,System.Object[])">
<summary>Initializes the <see cref="T:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute"/> with the identifier of the syntax used.</summary>
<param name="syntax">The syntax identifier.</param>
<param name="arguments">Optional arguments associated with the specific syntax employed.</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Syntax">
<summary>Gets the identifier of the syntax used.</summary>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Arguments">
<summary>Optional arguments associated with the specific syntax employed.</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.CompositeFormat">
<summary>The syntax identifier for strings containing composite formats for string formatting.</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.DateOnlyFormat">
<summary>The syntax identifier for strings containing date format specifiers.</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.DateTimeFormat">
<summary>The syntax identifier for strings containing date and time format specifiers.</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.EnumFormat">
<summary>The syntax identifier for strings containing <see cref="T:System.Enum"/> format specifiers.</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.GuidFormat">
<summary>The syntax identifier for strings containing <see cref="T:System.Guid"/> format specifiers.</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Json">
<summary>The syntax identifier for strings containing JavaScript Object Notation (JSON).</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.NumericFormat">
<summary>The syntax identifier for strings containing numeric format specifiers.</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Regex">
<summary>The syntax identifier for strings containing regular expressions.</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.TimeOnlyFormat">
<summary>The syntax identifier for strings containing time format specifiers.</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.TimeSpanFormat">
<summary>The syntax identifier for strings containing <see cref="T:System.TimeSpan"/> format specifiers.</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Uri">
<summary>The syntax identifier for strings containing URIs.</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Xml">
<summary>The syntax identifier for strings containing XML.</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.UnscopedRefAttribute">
<summary>
Used to indicate a byref escapes and is not scoped.
</summary>
<remarks>
<para>
There are several cases where the C# compiler treats a <see langword="ref"/> as implicitly
<see langword="scoped"/> - where the compiler does not allow the <see langword="ref"/> to escape the method.
</para>
<para>
For example:
<list type="number">
<item><see langword="this"/> for <see langword="struct"/> instance methods.</item>
<item><see langword="ref"/> parameters that refer to <see langword="ref"/> <see langword="struct"/> types.</item>
<item><see langword="out"/> parameters.</item>
</list>
</para>
<para>
This attribute is used in those instances where the <see langword="ref"/> should be allowed to escape.
</para>
<para>
Applying this attribute, in any form, has impact on consumers of the applicable API. It is necessary for
API authors to understand the lifetime implications of applying this attribute and how it may impact their users.
</para>
</remarks>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembersAttribute">
<summary>
Indicates that certain members on a specified <see cref="T:System.Type"/> are accessed dynamically,
for example through <see cref="N:System.Reflection"/>.
</summary>
<remarks>
This allows tools to understand which members are being accessed during the execution
of a program.
This attribute is valid on members whose type is <see cref="T:System.Type"/> or <see cref="T:System.String"/>.
When this attribute is applied to a location of type <see cref="T:System.String"/>, the assumption is
that the string represents a fully qualified type name.
When this attribute is applied to a class, interface, or struct, the members specified
can be accessed dynamically on <see cref="T:System.Type"/> instances returned from calling
<see cref="M:System.Object.GetType"/> on instances of that class, interface, or struct.
If the attribute is applied to a method it's treated as a special case and it implies
the attribute should be applied to the "this" parameter of the method. As such the attribute
should only be used on instance methods of types assignable to System.Type (or string, but no methods
will use it there).
</remarks>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembersAttribute.#ctor(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes)">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembersAttribute"/> class
with the specified member types.
</summary>
<param name="memberTypes">The types of members dynamically accessed.</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMembersAttribute.MemberTypes">
<summary>
Gets the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes"/> which specifies the type
of members dynamically accessed.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes">
<summary>
Specifies the types of members that are dynamically accessed.
This enumeration has a <see cref="T:System.FlagsAttribute"/> attribute that allows a
bitwise combination of its member values.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.None">
<summary>
Specifies no members.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicParameterlessConstructor">
<summary>
Specifies the default, parameterless public constructor.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicConstructors">
<summary>
Specifies all public constructors.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicConstructors">
<summary>
Specifies all non-public constructors.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicMethods">
<summary>
Specifies all public methods.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicMethods">
<summary>
Specifies all non-public methods.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicFields">
<summary>
Specifies all public fields.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicFields">
<summary>
Specifies all non-public fields.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicNestedTypes">
<summary>
Specifies all public nested types.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicNestedTypes">
<summary>
Specifies all non-public nested types.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicProperties">
<summary>
Specifies all public properties.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicProperties">
<summary>
Specifies all non-public properties.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.PublicEvents">
<summary>
Specifies all public events.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.NonPublicEvents">
<summary>
Specifies all non-public events.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.Interfaces">
<summary>
Specifies all interfaces implemented by the type.
</summary>
</member>
<member name="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.All">
<summary>
Specifies all members.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute">
<summary>
States a dependency that one member has on another.
</summary>
<remarks>
This can be used to inform tooling of a dependency that is otherwise not evident purely from
metadata and IL, for example a member relied on via reflection.
</remarks>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute"/> class
with the specified signature of a member on the same type as the consumer.
</summary>
<param name="memberSignature">The signature of the member depended on.</param>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.#ctor(System.String,System.Type)">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute"/> class
with the specified signature of a member on a <see cref="T:System.Type"/>.
</summary>
<param name="memberSignature">The signature of the member depended on.</param>
<param name="type">The <see cref="T:System.Type"/> containing <paramref name="memberSignature"/>.</param>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.#ctor(System.String,System.String,System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute"/> class
with the specified signature of a member on a type in an assembly.
</summary>
<param name="memberSignature">The signature of the member depended on.</param>
<param name="typeName">The full name of the type containing the specified member.</param>
<param name="assemblyName">The assembly name of the type containing the specified member.</param>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.#ctor(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes,System.Type)">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute"/> class
with the specified types of members on a <see cref="T:System.Type"/>.
</summary>
<param name="memberTypes">The types of members depended on.</param>
<param name="type">The <see cref="T:System.Type"/> containing the specified members.</param>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.#ctor(System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes,System.String,System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute"/> class
with the specified types of members on a type in an assembly.
</summary>
<param name="memberTypes">The types of members depended on.</param>
<param name="typeName">The full name of the type containing the specified members.</param>
<param name="assemblyName">The assembly name of the type containing the specified members.</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.MemberSignature">
<summary>
Gets the signature of the member depended on.
</summary>
<remarks>
Either <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.MemberSignature"/> must be a valid string or <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.MemberTypes"/>
must not equal <see cref="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.None"/>, but not both.
</remarks>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.MemberTypes">
<summary>
Gets the <see cref="T:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes"/> which specifies the type
of members depended on.
</summary>
<remarks>
Either <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.MemberSignature"/> must be a valid string or <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.MemberTypes"/>
must not equal <see cref="F:System.Diagnostics.CodeAnalysis.DynamicallyAccessedMemberTypes.None"/>, but not both.
</remarks>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.Type">
<summary>
Gets the <see cref="T:System.Type"/> containing the specified member.
</summary>
<remarks>
If neither <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.Type"/> nor <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.TypeName"/> are specified,
the type of the consumer is assumed.
</remarks>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.TypeName">
<summary>
Gets the full name of the type containing the specified member.
</summary>
<remarks>
If neither <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.Type"/> nor <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.TypeName"/> are specified,
the type of the consumer is assumed.
</remarks>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.AssemblyName">
<summary>
Gets the assembly name of the specified type.
</summary>
<remarks>
<see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.AssemblyName"/> is only valid when <see cref="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.TypeName"/> is specified.
</remarks>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.DynamicDependencyAttribute.Condition">
<summary>
Gets or sets the condition in which the dependency is applicable, e.g. "DEBUG".
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.FeatureGuardAttribute">
<summary>
Indicates that the specified public static boolean get-only property
guards access to the specified feature.
</summary>
<remarks>
Analyzers can use this to prevent warnings on calls to code that is
annotated as requiring that feature, when the callsite is guarded by a
call to the property.
</remarks>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.FeatureGuardAttribute.#ctor(System.Type)">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.FeatureGuardAttribute"/> class
with the specified feature type.
</summary>
<param name="featureType">
The type that represents the feature guarded by the property.
</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.FeatureGuardAttribute.FeatureType">
<summary>
The type that represents the feature guarded by the property.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.FeatureSwitchDefinitionAttribute">
<summary>
Indicates that the specified public static boolean get-only property
corresponds to the feature switch specified by name.
</summary>
<remarks>
IL rewriters and compilers can use this to substitute the return value
of the specified property with the value of the feature switch.
</remarks>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.FeatureSwitchDefinitionAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.FeatureSwitchDefinitionAttribute"/> class
with the specified feature switch name.
</summary>
<param name="switchName">
The name of the feature switch that provides the value for the specified property.
</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.FeatureSwitchDefinitionAttribute.SwitchName">
<summary>
The name of the feature switch that provides the value for the specified property.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.RequiresAssemblyFilesAttribute">
<summary>
Indicates that the specified member requires assembly files to be on disk.
</summary>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.RequiresAssemblyFilesAttribute.#ctor">
<summary>
Initializes a new instance of the <see cref="!:global::System.RequiresAssemblyFilesAttribute"/> class.
</summary>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.RequiresAssemblyFilesAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="!:global::System.RequiresAssemblyFilesAttribute"/> class.
</summary>
<param name="message">
A message that contains information about the need for assembly files to be on disk.
</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.RequiresAssemblyFilesAttribute.Message">
<summary>
Gets an optional message that contains information about the need for
assembly files to be on disk.
</summary>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.RequiresAssemblyFilesAttribute.Url">
<summary>
Gets or sets an optional URL that contains more information about the member,
why it requires assembly files to be on disk, and what options a consumer has
to deal with it.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.RequiresDynamicCodeAttribute">
<summary>
Indicates that the specified method requires the ability to generate new code at runtime,
for example through <see cref="N:System.Reflection"/>.
</summary>
<remarks>
This allows tools to understand which methods are unsafe to call when compiling ahead of time.
</remarks>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.RequiresDynamicCodeAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.RequiresDynamicCodeAttribute"/> class
with the specified message.
</summary>
<param name="message">
A message that contains information about the usage of dynamic code.
</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.RequiresDynamicCodeAttribute.Message">
<summary>
Gets a message that contains information about the usage of dynamic code.
</summary>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.RequiresDynamicCodeAttribute.Url">
<summary>
Gets or sets an optional URL that contains more information about the method,
why it requires dynamic code, and what options a consumer has to deal with it.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute">
<summary>
Indicates that the specified method requires dynamic access to code that is not referenced
statically, for example through <see cref="N:System.Reflection"/>.
</summary>
<remarks>
This allows tools to understand which methods are unsafe to call when removing unreferenced
code from an application.
</remarks>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute"/> class
with the specified message.
</summary>
<param name="message">
A message that contains information about the usage of unreferenced code.
</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute.Message">
<summary>
Gets a message that contains information about the usage of unreferenced code.
</summary>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.RequiresUnreferencedCodeAttribute.Url">
<summary>
Gets or sets an optional URL that contains more information about the method,
why it requires unreferenced code, and what options a consumer has to deal with it.
</summary>
</member>
<member name="T:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute">
<summary>
Suppresses reporting of a specific rule violation, allowing multiple suppressions on a
single code artifact.
</summary>
<remarks>
<see cref="T:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute"/> is different than
<see cref="T:System.Diagnostics.CodeAnalysis.SuppressMessageAttribute"/> in that it doesn't have a
<see cref="T:System.Diagnostics.ConditionalAttribute"/>. So it is always preserved in the compiled assembly.
</remarks>
</member>
<member name="M:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.#ctor(System.String,System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute"/>
class, specifying the category of the tool and the identifier for an analysis rule.
</summary>
<param name="category">The category for the attribute.</param>
<param name="checkId">The identifier of the analysis rule the attribute applies to.</param>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Category">
<summary>
Gets the category identifying the classification of the attribute.
</summary>
<remarks>
The <see cref="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Category"/> property describes the tool or tool analysis category
for which a message suppression attribute applies.
</remarks>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.CheckId">
<summary>
Gets the identifier of the analysis tool rule to be suppressed.
</summary>
<remarks>
Concatenated together, the <see cref="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Category"/> and <see cref="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.CheckId"/>
properties form a unique check identifier.
</remarks>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Scope">
<summary>
Gets or sets the scope of the code that is relevant for the attribute.
</summary>
<remarks>
The Scope property is an optional argument that specifies the metadata scope for which
the attribute is relevant.
</remarks>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Target">
<summary>
Gets or sets a fully qualified path that represents the target of the attribute.
</summary>
<remarks>
The <see cref="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Target"/> property is an optional argument identifying the analysis target
of the attribute. An example value is "System.IO.Stream.ctor():System.Void".
Because it is fully qualified, it can be long, particularly for targets such as parameters.
The analysis tool user interface should be capable of automatically formatting the parameter.
</remarks>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.MessageId">
<summary>
Gets or sets an optional argument expanding on exclusion criteria.
</summary>
<remarks>
The <see cref="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.MessageId"/> property is an optional argument that specifies additional
exclusion where the literal metadata target is not sufficiently precise. For example,
the <see cref="T:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute"/> cannot be applied within a method,
and it may be desirable to suppress a violation against a statement in the method that will
give a rule violation, but not against all statements in the method.
</remarks>
</member>
<member name="P:System.Diagnostics.CodeAnalysis.UnconditionalSuppressMessageAttribute.Justification">
<summary>
Gets or sets the justification for suppressing the code analysis message.
</summary>
</member>
<member name="T:System.Diagnostics.DebuggerDisableUserUnhandledExceptionsAttribute">
<summary>
If a .NET Debugger is attached which supports the Debugger.BreakForUserUnhandledException(Exception) API,
this attribute will prevent the debugger from breaking on user-unhandled exceptions when the
exception is caught by a method with this attribute, unless BreakForUserUnhandledException is called.
</summary>
</member>
<member name="T:System.Diagnostics.StackTraceHiddenAttribute">
<summary>
Types and Methods attributed with StackTraceHidden will be omitted from the stack trace text shown in StackTrace.ToString()
and Exception.StackTrace
</summary>
</member>
<member name="M:System.Diagnostics.StackTraceHiddenAttribute.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.Diagnostics.StackTraceHiddenAttribute"/> class.
</summary>
</member>
<member name="T:System.Index">
<summary>Represent a type can be used to index a collection either from the start or the end.</summary>
<remarks>
Index is used by the C# compiler to support the new index syntax
<code>
int[] someArray = new int[5] { 1, 2, 3, 4, 5 } ;
int lastElement = someArray[^1]; // lastElement = 5
</code>
</remarks>
</member>
<member name="M:System.Index.#ctor(System.Int32,System.Boolean)">
<summary>Construct an Index using a value and indicating if the index is from the start or from the end.</summary>
<param name="value">The index value. it has to be zero or positive number.</param>
<param name="fromEnd">Indicating if the index is from the start or from the end.</param>
<remarks>
If the Index constructed from the end, index value 1 means pointing at the last element and index value 0 means pointing at beyond last element.
</remarks>
</member>
<member name="P:System.Index.Start">
<summary>Create an Index pointing at first element.</summary>
</member>
<member name="P:System.Index.End">
<summary>Create an Index pointing at beyond last element.</summary>
</member>
<member name="M:System.Index.FromStart(System.Int32)">
<summary>Create an Index from the start at the position indicated by the value.</summary>
<param name="value">The index value from the start.</param>
</member>
<member name="M:System.Index.FromEnd(System.Int32)">
<summary>Create an Index from the end at the position indicated by the value.</summary>
<param name="value">The index value from the end.</param>
</member>
<member name="P:System.Index.Value">
<summary>Returns the index value.</summary>
</member>
<member name="P:System.Index.IsFromEnd">
<summary>Indicates whether the index is from the start or the end.</summary>
</member>
<member name="M:System.Index.GetOffset(System.Int32)">
<summary>Calculate the offset from the start using the giving collection length.</summary>
<param name="length">The length of the collection that the Index will be used with. length has to be a positive value</param>
<remarks>
For performance reason, we don't validate the input length parameter and the returned offset value against negative values.
we don't validate either the returned offset is greater than the input length.
It is expected Index will be used with collections which always have non negative length/count. If the returned offset is negative and
then used to index a collection will get out of range exception which will be same affect as the validation.
</remarks>
</member>
<member name="M:System.Index.Equals(System.Object)">
<summary>Indicates whether the current Index object is equal to another object of the same type.</summary>
<param name="value">An object to compare with this object</param>
</member>
<member name="M:System.Index.Equals(System.Index)">
<summary>Indicates whether the current Index object is equal to another Index object.</summary>
<param name="other">An object to compare with this object</param>
</member>
<member name="M:System.Index.GetHashCode">
<summary>Returns the hash code for this instance.</summary>
</member>
<member name="M:System.Index.op_Implicit(System.Int32)~System.Index">
<summary>Converts integer number to an Index.</summary>
</member>
<member name="M:System.Index.ToString">
<summary>Converts the value of the current Index object to its equivalent string representation.</summary>
</member>
<member name="T:System.Range">
<summary>Represent a range has start and end indexes.</summary>
<remarks>
Range is used by the C# compiler to support the range syntax.
<code>
int[] someArray = new int[5] { 1, 2, 3, 4, 5 };
int[] subArray1 = someArray[0..2]; // { 1, 2 }
int[] subArray2 = someArray[1..^0]; // { 2, 3, 4, 5 }
</code>
</remarks>
</member>
<member name="P:System.Range.Start">
<summary>Represent the inclusive start index of the Range.</summary>
</member>
<member name="P:System.Range.End">
<summary>Represent the exclusive end index of the Range.</summary>
</member>
<member name="M:System.Range.#ctor(System.Index,System.Index)">
<summary>Construct a Range object using the start and end indexes.</summary>
<param name="start">Represent the inclusive start index of the range.</param>
<param name="end">Represent the exclusive end index of the range.</param>
</member>
<member name="M:System.Range.Equals(System.Object)">
<summary>Indicates whether the current Range object is equal to another object of the same type.</summary>
<param name="value">An object to compare with this object</param>
</member>
<member name="M:System.Range.Equals(System.Range)">
<summary>Indicates whether the current Range object is equal to another Range object.</summary>
<param name="other">An object to compare with this object</param>
</member>
<member name="M:System.Range.GetHashCode">
<summary>Returns the hash code for this instance.</summary>
</member>
<member name="M:System.Range.ToString">
<summary>Converts the value of the current Range object to its equivalent string representation.</summary>
</member>
<member name="M:System.Range.StartAt(System.Index)">
<summary>Create a Range object starting from start index to the end of the collection.</summary>
</member>
<member name="M:System.Range.EndAt(System.Index)">
<summary>Create a Range object starting from first element in the collection to the end Index.</summary>
</member>
<member name="P:System.Range.All">
<summary>Create a Range object starting from first element to the end.</summary>
</member>
<member name="M:System.Range.GetOffsetAndLength(System.Int32)">
<summary>Calculate the start offset and length of range object using a collection length.</summary>
<param name="length">The length of the collection that the range will be used with. length has to be a positive value.</param>
<remarks>
For performance reason, we don't validate the input length parameter against negative values.
It is expected Range will be used with collections which always have non negative length/count.
We validate the range is inside the length scope though.
</remarks>
</member>
<member name="T:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute">
<summary>
An attribute that allows parameters to receive the expression of other parameters.
</summary>
</member>
<member name="M:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute"/> class.
</summary>
<param name="parameterName">The condition parameter value.</param>
</member>
<member name="P:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute.ParameterName">
<summary>
Gets the parameter name the expression is retrieved from.
</summary>
</member>
<member name="M:System.Runtime.CompilerServices.CollectionBuilderAttribute.#ctor(System.Type,System.String)">
<summary>
Initialize the attribute to refer to the <paramref name="methodName"/> method on the <paramref name="builderType"/> type.
</summary>
<param name="builderType">The type of the builder to use to construct the collection.</param>
<param name="methodName">The name of the method on the builder to use to construct the collection.</param>
<remarks>
<paramref name="methodName"/> must refer to a static method that accepts a single parameter of
type <see cref="T:System.ReadOnlySpan`1"/> and returns an instance of the collection being built containing
a copy of the data from that span. In future releases of .NET, additional patterns may be supported.
</remarks>
</member>
<member name="P:System.Runtime.CompilerServices.CollectionBuilderAttribute.BuilderType">
<summary>
Gets the type of the builder to use to construct the collection.
</summary>
</member>
<member name="P:System.Runtime.CompilerServices.CollectionBuilderAttribute.MethodName">
<summary>
Gets the name of the method on the builder to use to construct the collection.
</summary>
<remarks>
This should match the metadata name of the target method.
For example, this might be ".ctor" if targeting the type's constructor.
</remarks>
</member>
<member name="T:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute">
<summary>
Indicates that compiler support for a particular feature is required for the location where this attribute is applied.
</summary>
</member>
<member name="M:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.#ctor(System.String)">
<summary>
Creates a new instance of the <see cref="T:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute"/> type.
</summary>
<param name="featureName">The name of the feature to indicate.</param>
</member>
<member name="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.FeatureName">
<summary>
The name of the compiler feature.
</summary>
</member>
<member name="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.IsOptional">
<summary>
If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand <see cref="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.FeatureName"/>.
</summary>
</member>
<member name="F:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.RefStructs">
<summary>
The <see cref="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.FeatureName"/> used for the ref structs C# feature.
</summary>
</member>
<member name="F:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.RequiredMembers">
<summary>
The <see cref="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.FeatureName"/> used for the required members C# feature.
</summary>
</member>
<member name="T:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute">
<summary>
Indicates which arguments to a method involving an interpolated string handler should be passed to that handler.
</summary>
</member>
<member name="M:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute"/> class.
</summary>
<param name="argument">The name of the argument that should be passed to the handler.</param>
<remarks><see langword="null"/> may be used as the name of the receiver in an instance method.</remarks>
</member>
<member name="M:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute.#ctor(System.String[])">
<summary>
Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute"/> class.
</summary>
<param name="arguments">The names of the arguments that should be passed to the handler.</param>
<remarks><see langword="null"/> may be used as the name of the receiver in an instance method.</remarks>
</member>
<member name="P:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute.Arguments">
<summary>
Gets the names of the arguments that should be passed to the handler.
</summary>
<remarks><see langword="null"/> may be used as the name of the receiver in an instance method.</remarks>
</member>
<member name="T:System.Runtime.CompilerServices.InterpolatedStringHandlerAttribute">
<summary>
Indicates the attributed type is to be used as an interpolated string handler.
</summary>
</member>
<member name="T:System.Runtime.CompilerServices.IsExternalInit">
<summary>
Reserved to be used by the compiler for tracking metadata.
This class should not be used by developers in source code.
</summary>
</member>
<member name="T:System.Runtime.CompilerServices.ModuleInitializerAttribute">
<summary>
Used to indicate to the compiler that a method should be called
in its containing module's initializer.
</summary>
<remarks>
When one or more valid methods
with this attribute are found in a compilation, the compiler will
emit a module initializer which calls each of the attributed methods.
Certain requirements are imposed on any method targeted with this attribute:
- The method must be `static`.
- The method must be an ordinary member method, as opposed to a property accessor, constructor, local function, etc.
- The method must be parameterless.
- The method must return `void`.
- The method must not be generic or be contained in a generic type.
- The method's effective accessibility must be `internal` or `public`.
The specification for module initializers in the .NET runtime can be found here:
https://github.com/dotnet/runtime/blob/main/docs/design/specs/Ecma-335-Augments.md#module-initializer
</remarks>
</member>
<member name="T:System.Runtime.CompilerServices.OverloadResolutionPriorityAttribute">
<summary>
Specifies the priority of a member in overload resolution. When unspecified, the default priority is 0.
</summary>
</member>
<member name="M:System.Runtime.CompilerServices.OverloadResolutionPriorityAttribute.#ctor(System.Int32)">
<summary>
Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.OverloadResolutionPriorityAttribute"/> class.
</summary>
<param name="priority">The priority of the attributed member. Higher numbers are prioritized, lower numbers are deprioritized. 0 is the default if no attribute is present.</param>
</member>
<member name="P:System.Runtime.CompilerServices.OverloadResolutionPriorityAttribute.Priority">
<summary>
The priority of the member.
</summary>
</member>
<member name="T:System.Runtime.CompilerServices.ParamCollectionAttribute">
<summary>
Indicates that a method will allow a variable number of arguments in its invocation.
</summary>
</member>
<member name="T:System.Runtime.CompilerServices.RequiredMemberAttribute">
<summary>
Specifies that a type has required members or that a member is required.
</summary>
</member>
<member name="T:System.Runtime.CompilerServices.RequiresLocationAttribute">
<summary>
Reserved for use by a compiler for tracking metadata.
This attribute should not be used by developers in source code.
</summary>
</member>
<member name="T:System.Runtime.CompilerServices.SkipLocalsInitAttribute">
<summary>
Used to indicate to the compiler that the <c>.locals init</c> flag should not be set in method headers.
</summary>
</member>
<member name="T:System.Runtime.CompilerServices.DisableRuntimeMarshallingAttribute">
<summary>
Disables the built-in runtime managed/unmanaged marshalling subsystem for
P/Invokes, Delegate types, and unmanaged function pointer invocations.
</summary>
<remarks>
The built-in marshalling subsystem has some behaviors that cannot be changed due to
backward-compatibility requirements. This attribute allows disabling the built-in
subsystem and instead uses the following rules for P/Invokes, Delegates,
and unmanaged function pointer invocations:
- All value types that do not contain reference type fields recursively (<c>unmanaged</c> in C#) are blittable
- Value types that recursively have any fields that have <c>[StructLayout(LayoutKind.Auto)]</c> are disallowed from interop.
- All reference types are disallowed from usage in interop scenarios.
- SetLastError support in P/Invokes is disabled.
- varargs support is disabled.
- LCIDConversionAttribute support is disabled.
</remarks>
</member>
<member name="T:System.Runtime.CompilerServices.UnsafeAccessorAttribute">
<summary>
Provides access to an inaccessible member of a specific type.
</summary>
<remarks>
This attribute may be applied to an <code>extern static</code> method.
The implementation of the <code>extern static</code> method annotated with
this attribute will be provided by the runtime based on the information in
the attribute and the signature of the method that the attribute is applied to.
The runtime will try to find the matching method or field and forward the call
to it. If the matching method or field is not found, the body of the <code>extern</code>
method will throw <see cref="T:System.MissingFieldException" /> or <see cref="T:System.MissingMethodException" />.
Only the specific type defined will be examined for inaccessible members. The type hierarchy
is not walked looking for a match.
For <see cref="F:System.Runtime.CompilerServices.UnsafeAccessorKind.Method"/>,
<see cref="F:System.Runtime.CompilerServices.UnsafeAccessorKind.StaticMethod"/>,
<see cref="F:System.Runtime.CompilerServices.UnsafeAccessorKind.Field"/>,
and <see cref="F:System.Runtime.CompilerServices.UnsafeAccessorKind.StaticField"/>, the type of
the first argument of the annotated <code>extern</code> method identifies the owning type.
The value of the first argument is treated as <code>this</code> pointer for instance fields and methods.
The first argument must be passed as <code>ref</code> for instance fields and methods on structs.
The value of the first argument is not used by the implementation for <code>static</code> fields and methods.
Return type is considered for the signature match. modreqs and modopts are initially not considered for
the signature match. However, if an ambiguity exists ignoring modreqs and modopts, a precise match
is attempted. If an ambiguity still exists <see cref="T:System.Reflection.AmbiguousMatchException" /> is thrown.
By default, the attributed method's name dictates the name of the method/field. This can cause confusion
in some cases since language abstractions, like C# local functions, generate mangled IL names. The
solution to this is to use the <code>nameof</code> mechanism and define the <see cref="P:System.Runtime.CompilerServices.UnsafeAccessorAttribute.Name"/> property.
<code>
public void Method(Class c)
{
PrivateMethod(c);
[UnsafeAccessor(UnsafeAccessorKind.Method, Name = nameof(PrivateMethod))]
extern static void PrivateMethod(Class c);
}
</code>
</remarks>
</member>
<member name="M:System.Runtime.CompilerServices.UnsafeAccessorAttribute.#ctor(System.Runtime.CompilerServices.UnsafeAccessorKind)">
<summary>
Instantiates an <see cref="T:System.Runtime.CompilerServices.UnsafeAccessorAttribute"/>
providing access to a member of kind <see cref="T:System.Runtime.CompilerServices.UnsafeAccessorKind"/>.
</summary>
<param name="kind">The kind of the target to which access is provided.</param>
</member>
<member name="P:System.Runtime.CompilerServices.UnsafeAccessorAttribute.Kind">
<summary>
Gets the kind of member to which access is provided.
</summary>
</member>
<member name="P:System.Runtime.CompilerServices.UnsafeAccessorAttribute.Name">
<summary>
Gets or sets the name of the member to which access is provided.
</summary>
<remarks>
The name defaults to the annotated method name if not specified.
The name must be unset/<code>null</code> for <see cref="F:System.Runtime.CompilerServices.UnsafeAccessorKind.Constructor"/>.
</remarks>
</member>
<member name="T:System.Runtime.CompilerServices.UnsafeAccessorKind">
<summary>
Specifies the kind of target to which an <see cref="T:System.Runtime.CompilerServices.UnsafeAccessorAttribute" /> is providing access.
</summary>
</member>
<member name="F:System.Runtime.CompilerServices.UnsafeAccessorKind.Constructor">
<summary>
Provide access to a constructor.
</summary>
</member>
<member name="F:System.Runtime.CompilerServices.UnsafeAccessorKind.Method">
<summary>
Provide access to a method.
</summary>
</member>
<member name="F:System.Runtime.CompilerServices.UnsafeAccessorKind.StaticMethod">
<summary>
Provide access to a static method.
</summary>
</member>
<member name="F:System.Runtime.CompilerServices.UnsafeAccessorKind.Field">
<summary>
Provide access to a field.
</summary>
</member>
<member name="F:System.Runtime.CompilerServices.UnsafeAccessorKind.StaticField">
<summary>
Provide access to a static field.
</summary>
</member>
<member name="M:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute"/> class.
</summary>
</member>
<member name="M:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute"/> class with the specified message.
</summary>
<param name="message">An optional message associated with this attribute instance.</param>
</member>
<member name="P:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute.Message">
<summary>
Returns the optional message associated with this attribute instance.
</summary>
</member>
<member name="P:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute.Url">
<summary>
Returns the optional URL associated with this attribute instance.
</summary>
</member>
<member name="T:System.Runtime.Versioning.ObsoletedOSPlatformAttribute">
<summary>
Marks APIs that were obsoleted in a given operating system version.
</summary>
<remarks>
Primarily used by OS bindings to indicate APIs that should not be used anymore.
</remarks>
</member>
<member name="T:System.Runtime.Versioning.SupportedOSPlatformAttribute">
<summary>
Records the operating system (and minimum version) that supports an API. Multiple attributes can be
applied to indicate support on multiple operating systems.
</summary>
<remarks>
Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformAttribute" />
or use guards to prevent calls to APIs on unsupported operating systems.
A given platform should only be specified once.
</remarks>
</member>
<member name="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute">
<summary>
Annotates a custom guard field, property or method with a supported platform name and optional version.
Multiple attributes can be applied to indicate guard for multiple supported platforms.
</summary>
<remarks>
Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute" /> to a field, property or method
and use that field, property or method in a conditional or assert statements in order to safely call platform specific APIs.
The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
</remarks>
</member>
<member name="T:System.Runtime.Versioning.TargetPlatformAttribute">
<summary>
Records the platform that the project targeted.
</summary>
</member>
<member name="T:System.Runtime.Versioning.UnsupportedOSPlatformAttribute">
<summary>
Marks APIs that were removed in a given operating system version.
</summary>
<remarks>
Primarily used by OS bindings to indicate APIs that are only available in
earlier versions.
</remarks>
</member>
<member name="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute">
<summary>
Annotates the custom guard field, property or method with an unsupported platform name and optional version.
Multiple attributes can be applied to indicate guard for multiple unsupported platforms.
</summary>
<remarks>
Callers can apply a <see cref="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute" /> to a field, property or method
and use that field, property or method in a conditional or assert statements as a guard to safely call APIs unsupported on those platforms.
The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
</remarks>
</member>
<member name="T:System.Runtime.CompilerServices2.InlineArrayAttribute">
<summary>
Indicates that the instance's storage is sequentially replicated "length" times.
</summary>
<remarks>
<para>
This attribute can be used to annotate a <see langword="struct"/> type with a single field.
The runtime will replicate that field in the actual type layout as many times as is specified.
</para>
<para>
Here's an example of how an inline array type with 8 <see cref="T:System.Single"/> values can be declared:
<code lang="csharp">
[InlineArray(8)]
struct Float8InlineArray
{
private float _value;
}
</code>
</para>
</remarks>
</member>
<member name="M:System.Runtime.CompilerServices2.InlineArrayAttribute.#ctor(System.Int32)">
<summary>Creates a new <see cref="T:System.Runtime.CompilerServices2.InlineArrayAttribute"/> instance with the specified length.</summary>
<param name="length">The number of sequential fields to replicate in the inline array type.</param>
</member>
<member name="P:System.Runtime.CompilerServices2.InlineArrayAttribute.Length">
<summary>Gets the number of sequential fields to replicate in the inline array type.</summary>
</member>
<member name="T:System.Runtime.InteropServices.SuppressGCTransitionAttribute">
<summary>
An attribute used to indicate a GC transition should be skipped when making an unmanaged function call.
</summary>
<example>
Example of a valid use case. The Win32 `GetTickCount()` function is a small performance related function
that reads some global memory and returns the value. In this case, the GC transition overhead is significantly
more than the memory read.
<code>
using System;
using System.Runtime.InteropServices;
class Program
{
[DllImport("Kernel32")]
[SuppressGCTransition]
static extern int GetTickCount();
static void Main()
{
Console.WriteLine($"{GetTickCount()}");
}
}
</code>
</example>
<remarks>
This attribute is ignored if applied to a method without the <see cref="T:System.Runtime.InteropServices.DllImportAttribute"/>.
Forgoing this transition can yield benefits when the cost of the transition is more than the execution time
of the unmanaged function. However, avoiding this transition removes some of the guarantees the runtime
provides through a normal P/Invoke. When exiting the managed runtime to enter an unmanaged function the
GC must transition from Cooperative mode into Preemptive mode. Full details on these modes can be found at
https://github.com/dotnet/runtime/blob/main/docs/coding-guidelines/clr-code-guide.md#2.1.8.
Suppressing the GC transition is an advanced scenario and should not be done without fully understanding
potential consequences.
One of these consequences is an impact to Mixed-mode debugging (https://docs.microsoft.com/visualstudio/debugger/how-to-debug-in-mixed-mode).
During Mixed-mode debugging, it is not possible to step into or set breakpoints in a P/Invoke that
has been marked with this attribute. A workaround is to switch to native debugging and set a breakpoint in the native function.
In general, usage of this attribute is not recommended if debugging the P/Invoke is important, for example
stepping through the native code or diagnosing an exception thrown from the native code.
The runtime may load the native library for method marked with this attribute in advance before the method is called for the first time.
Usage of this attribute is not recommended for platform neutral libraries with conditional platform specific code.
The P/Invoke method that this attribute is applied to must have all of the following properties:
* Native function always executes for a trivial amount of time (less than 1 microsecond).
* Native function does not perform a blocking syscall (e.g. any type of I/O).
* Native function does not call back into the runtime (e.g. Reverse P/Invoke).
* Native function does not throw exceptions.
* Native function does not manipulate locks or other concurrency primitives.
Consequences of invalid uses of this attribute:
* GC starvation.
* Immediate runtime termination.
* Data corruption.
</remarks>
</member>
<member name="T:System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute">
<summary>
Any method marked with <see cref="T:System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute" /> can be directly called from
native code. The function token can be loaded to a local variable using the <see href="https://docs.microsoft.com/dotnet/csharp/language-reference/operators/pointer-related-operators#address-of-operator-">address-of</see> operator
in C# and passed as a callback to a native method.
</summary>
<remarks>
Methods marked with this attribute have the following restrictions:
* Method must be marked "static".
* Must not be called from managed code.
* Must only have <see href="https://docs.microsoft.com/dotnet/framework/interop/blittable-and-non-blittable-types">blittable</see> arguments.
</remarks>
</member>
<member name="F:System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute.CallConvs">
<summary>
Optional. If omitted, the runtime will use the default platform calling convention.
</summary>
<remarks>
Supplied types must be from the official "System.Runtime.CompilerServices" namespace and
be of the form "CallConvXXX".
</remarks>
</member>
<member name="F:System.Runtime.InteropServices.UnmanagedCallersOnlyAttribute.EntryPoint">
<summary>
Optional. If omitted, no named export is emitted during compilation.
</summary>
</member>
<member name="T:System.Runtime.InteropServices.WasmImportLinkageAttribute">
<summary>
Specifies that the P/Invoke marked with this attribute should be linked in as a WASM import.
</summary>
<remarks>
See https://webassembly.github.io/spec/core/syntax/modules.html#imports.
</remarks>
</member>
<member name="M:System.Runtime.InteropServices.WasmImportLinkageAttribute.#ctor">
<summary>
Instance constructor.
</summary>
</member>
</members>
</doc>