Table of Contents

Class VBDeferredType

Namespace
RDCore.SDK.Model.Types.Complex
Assembly
RDCore.SDK.dll
public abstract record VBDeferredType : VBType, IEquatable<VBType>, IVBDeferrableType, IVBInferableType, IEquatable<VBDeferredType>
Inheritance
VBDeferredType
Implements
Derived
Inherited Members

Constructors

VBDeferredType(string, Uri)

public VBDeferredType(string name, Uri uri)

Parameters

name string
uri Uri

Properties

CandidateTypes

A set of determined legal data types for materializing this type.

public ImmutableHashSet<VBType> CandidateTypes { get; init; }

Property Value

ImmutableHashSet<VBType>

DeferredVBTypeInfo

Gets the deferred type that can be materialized from this infered type.

public IVBMemberOwnerType? DeferredVBTypeInfo { get; init; }

Property Value

IVBMemberOwnerType

Members

public ImmutableHashSet<VBDeferredTypeMemberSymbol> Members { get; init; }

Property Value

ImmutableHashSet<VBDeferredTypeMemberSymbol>

Size

The size (in bytes) of a value of this type.

public override int Size { get; }

Property Value

int

Remarks

Determines the length of the allocated memory space for a value of this type.

Uri

public Uri Uri { get; init; }

Property Value

Uri

Methods

WithCandidateType(VBType)

Gets a copy of this inferable data type with the added specified candidate VBType.

public IVBInferableType WithCandidateType(VBType vbType)

Parameters

vbType VBType

The candidate data type to be added.

Returns

IVBInferableType

WithDeferredVBType(IVBMemberOwnerType)

Gets a copy of this deferrable data type with the specified target deferred type.

public VBDeferredType WithDeferredVBType(IVBMemberOwnerType vbType)

Parameters

vbType IVBMemberOwnerType

Any VBType that can have members.

Returns

VBDeferredType

WithMembers(IEnumerable<VBDeferredTypeMemberSymbol>)

public VBDeferredType WithMembers(IEnumerable<VBDeferredTypeMemberSymbol> members)

Parameters

members IEnumerable<VBDeferredTypeMemberSymbol>

Returns

VBDeferredType