Table of Contents

Class SequenceContract

Namespace
ShapeShift.Schema
Assembly
ShapeShift.dll

Describes a type that is serialized as a variable-length vector of homogeneous elements.

public sealed class SequenceContract : DataContract
Inheritance
SequenceContract
Inherited Members

Constructors

SequenceContract(Type, DataContract)

Initializes a new instance of the SequenceContract class.

public SequenceContract(Type dataType, DataContract elementType)

Parameters

dataType Type
The .NET type that this contract describes.
elementType DataContract

The contract describing each element.

Properties

ElementType

Gets the contract describing each element.

public DataContract ElementType { get; }

Property Value

DataContract

IsSet

Gets a value indicating whether the elements are guaranteed to be distinct.

public bool IsSet { get; init; }

Property Value

bool

Kind

Gets the kind of this contract, which identifies the concrete subclass.

public override DataContractKind Kind { get; }

Property Value

DataContractKind

ReferencedContracts

Gets the contracts that this contract directly refers to.

public override IEnumerable<DataContract> ReferencedContracts { get; }

Property Value

IEnumerable<DataContract>

Remarks

The sequence may contain the same contract more than once, and (for recursive types) may transitively include this contract itself.