Table of Contents

Class VBDoubleType

Namespace
RDCore.SDK.Model.Types
Assembly
RDCore.SDK.dll

A VBNumericType<T> representing the Double data type.

public sealed record VBDoubleType : VBNumericType<double>, IEquatable<VBType>, IEquatable<VBIntrinsicType>, IEquatable<VBNumericType>, IEquatable<VBNumericType<double>>, IFloatingPointNumericType, INumericType, IEquatable<VBDoubleType>
Inheritance
VBDoubleType
Implements
Inherited Members

Remarks

The managed type of a value of this data type is double.
👉 Implements IFloatingPointNumericType.

Constructors

VBDoubleType()

A VBNumericType<T> representing the Double data type.

public VBDoubleType()

Remarks

The managed type of a value of this data type is double.
👉 Implements IFloatingPointNumericType.

Fields

SignificantIntegerDigits

The number of significant digits retained in a String representation of a value of this type.

public const int SignificantIntegerDigits = 15

Field Value

int

Properties

DefaultValue

Gets the default value for this data type.

public override VBTypedValue DefaultValue { get; }

Property Value

VBTypedValue

Remarks

⚠️ Derived types must back the implementation of this property with a thread-safe private static readonly Lazy<T>. Failure to do so would lock up the static context initialization of the StaticSymbol symbols.

ManagedMaxValue

Gets the maximum representable managed (.net) value for this data type.

public override double ManagedMaxValue { get; }

Property Value

double

ManagedMinValue

Gets the minimum representable managed (.net) value for this data type.

public override double ManagedMinValue { get; }

Property Value

double

MaxValue

Gets the maximum representable value for this data type.

public static VBDoubleValue MaxValue { get; }

Property Value

VBDoubleValue

MinValue

Gets the minimum representable value for this data type.

public static VBDoubleValue MinValue { get; }

Property Value

VBDoubleValue

One

Gets the value 1 (one) representation of this data type.

public static VBDoubleValue One { get; }

Property Value

VBDoubleValue

Remarks

Used for returning a constant 1 from certain runtime semantics.

TypeInfo

The Double data type.

public static VBDoubleType TypeInfo { get; }

Property Value

VBDoubleType

Zero

Gets the value 0 (zero) representation of this data type.

public static VBDoubleValue Zero { get; }

Property Value

VBDoubleValue

Methods

CreateValue(IBindingHandle)

Creates a value of this type bound to handle.

public override VBTypedValue CreateValue(IBindingHandle handle)

Parameters

handle IBindingHandle

Returns

VBTypedValue

Remarks

The base implementation throws: only types that can hold a runtime value override this (matches the intent of the removed VBTypedValueFactory.CreateValue(VBType) switch, which returned null for the rest).

CreateValue(double)

Creates a value of this numeric type holding value, converted to this type's managed representation (banker's rounding for integral targets, as per Convert).

public override VBNumericTypedValue CreateValue(double value)

Parameters

value double

Returns

VBNumericTypedValue