Class VBDeferredType
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
Properties
CandidateTypes
A set of determined legal data types for materializing this type.
public ImmutableHashSet<VBType> CandidateTypes { get; init; }
Property Value
DeferredVBTypeInfo
Gets the deferred type that can be materialized from this infered type.
public IVBMemberOwnerType? DeferredVBTypeInfo { get; init; }
Property Value
Members
public ImmutableHashSet<VBDeferredTypeMemberSymbol> Members { get; init; }
Property Value
Size
The size (in bytes) of a value of this type.
public override int Size { get; }
Property Value
Remarks
Determines the length of the allocated memory space for a value of this type.
Uri
public Uri Uri { get; init; }
Property Value
Methods
WithCandidateType(VBType)
Gets a copy of this inferable data type with the added specified candidate VBType.
public IVBInferableType WithCandidateType(VBType vbType)
Parameters
vbTypeVBTypeThe candidate data type to be added.
Returns
WithDeferredVBType(IVBMemberOwnerType)
Gets a copy of this deferrable data type with the specified target deferred type.
public VBDeferredType WithDeferredVBType(IVBMemberOwnerType vbType)
Parameters
vbTypeIVBMemberOwnerTypeAny
VBTypethat can have members.
Returns
WithMembers(IEnumerable<VBDeferredTypeMemberSymbol>)
public VBDeferredType WithMembers(IEnumerable<VBDeferredTypeMemberSymbol> members)
Parameters
membersIEnumerable<VBDeferredTypeMemberSymbol>