TomlPolymorphismOptions Class

Configures discriminator-based polymorphism.

public sealed class TomlPolymorphismOptions : IEquatable<TomlPolymorphismOptions>
Implements

Constructors

NameDescription
TomlPolymorphismOptions()

TomlPolymorphismOptions()

TomlPolymorphismOptions.cs
public TomlPolymorphismOptions()

No documentation is available.

Properties

NameDescription
DerivedTypeMappingsGets runtime-registered derived type mappings, keyed by polymorphic base type.
TypeDiscriminatorPropertyNameGets the property name used for discriminator-based polymorphism.
UnknownDerivedTypeHandlingGets behavior when an unknown discriminator is encountered.

DerivedTypeMappings

TomlPolymorphismOptions.cs

Gets runtime-registered derived type mappings, keyed by polymorphic base type.

public IReadOnlyDictionary<Type, IReadOnlyList<TomlDerivedType>> DerivedTypeMappings { get; init; }

Property value

IReadOnlyDictionary<Type, IReadOnlyList<TomlDerivedType>>

Remarks

These mappings are used by reflection-based serialization and are merged with attribute-based registrations. Base-type attributes take precedence when the same derived type or discriminator is registered in both places.

TypeDiscriminatorPropertyName

TomlPolymorphismOptions.cs

Gets the property name used for discriminator-based polymorphism.

public string TypeDiscriminatorPropertyName { get; init; }

Property value

string

Exceptions

ArgumentNullException
Value is null.
ArgumentException
Value is not a valid key name.

UnknownDerivedTypeHandling

TomlPolymorphismOptions.cs

Gets behavior when an unknown discriminator is encountered.

public TomlUnknownDerivedTypeHandling UnknownDerivedTypeHandling { get; init; }

Property value

TomlUnknownDerivedTypeHandling

Exceptions

ArgumentOutOfRangeException
Thrown when set to TomlUnknownDerivedTypeHandling.Unspecified or an undefined value.

Methods

NameDescription
Equals(TomlPolymorphismOptions?)
Equals(object?)
GetHashCode()
ToString()

Equals overloads

Equals(TomlPolymorphismOptions?)

public bool Equals(TomlPolymorphismOptions? other)
Parameters
other TomlPolymorphismOptions?
Returns

bool

No documentation is available.

Equals(object?)

public override bool Equals(object? obj)
Parameters
obj object?
Returns

bool

No documentation is available.

GetHashCode()

public override int GetHashCode()

Returns

int

No documentation is available.

ToString()

public override string ToString()

Returns

string

No documentation is available.

Operators

NameDescription
operator ==(TomlPolymorphismOptions?, TomlPolymorphismOptions?)
operator !=(TomlPolymorphismOptions?, TomlPolymorphismOptions?)

operator ==(TomlPolymorphismOptions?, TomlPolymorphismOptions?)

public static bool operator ==(TomlPolymorphismOptions? left, TomlPolymorphismOptions? right)

No documentation is available.

operator !=(TomlPolymorphismOptions?, TomlPolymorphismOptions?)

public static bool operator !=(TomlPolymorphismOptions? left, TomlPolymorphismOptions? right)

No documentation is available.