Skip to main content

Class: NumberUnit<F, U>

Defined in: src/sdk/math/NumberUnit.ts:151

A number with an associated unit. Each NumberUnit is created with a reference unit type, which cannot be changed after instantiation. The reference unit type determines how the value of the NumberUnit is internally represented. Each NumberUnit also maintains an active unit type, which can be dynamically changed at any time.

Type Parameters

Type ParameterDefault type
F extends string-
U extends Unit<F>Unit<F>

Implements

Constructors

Constructor

new NumberUnit<F, U>(number, unit): NumberUnit<F, U>

Defined in: src/sdk/math/NumberUnit.ts:162

Constructor.

Parameters

ParameterTypeDescription
numbernumberthe initial numeric value of the new NumberUnit.
unitUthe unit type of the new NumberUnit.

Returns

NumberUnit<F, U>

Properties

readonly

readonly readonly: NumberUnitReadOnly<F, U>

Defined in: src/sdk/math/NumberUnit.ts:155

Accessors

number

Get Signature

get number(): number

Defined in: src/sdk/math/NumberUnit.ts:172

Gets this NumberUnit's numeric value.

Returns

number

This NumberUnit's numeric value.

This NumberUnit's numeric value.

Implementation of

NumberUnitInterface.number


unit

Get Signature

get unit(): U

Defined in: src/sdk/math/NumberUnit.ts:180

Gets this NumberUnit's unit type.

Returns

U

This NumberUnit's unit type.

This NumberUnit's unit type.

Implementation of

NumberUnitInterface.unit

Methods

abs()

Call Signature

abs<OU>(out): NumberUnit<F, OU>

Defined in: src/sdk/math/NumberUnit.ts:379

Calculates the absolute value of this NumberUnit and returns the result.

Type Parameters
Type Parameter
OU extends Unit<F>
Parameters
ParameterTypeDescription
outNumberUnit<F, OU>The NumberUnit to which to write the result.
Returns

NumberUnit<F, OU>

The absolute value.

Implementation of

NumberUnitInterface.abs

Call Signature

abs(): this

Defined in: src/sdk/math/NumberUnit.ts:384

Calculates the absolute value of this NumberUnit in place and returns the result.

Returns

this

The absolute value.

Implementation of

NumberUnitInterface.abs


add()

Call Signature

add<OU>(value, out): NumberUnit<F, OU>

Defined in: src/sdk/math/NumberUnit.ts:234

Adds a value to this NumberUnit and returns the result.

Type Parameters
Type Parameter
OU extends Unit<F>
Parameters
ParameterTypeDescription
valueNumberUnitInterface<F>The other value.
outNumberUnit<F, OU>The NumberUnit to which to write the result.
Returns

NumberUnit<F, OU>

The sum.

Throws

Error if the supplied value cannot be converted to this NumberUnit's unit type.

Implementation of

NumberUnitInterface.add

Call Signature

add(value): this

Defined in: src/sdk/math/NumberUnit.ts:241

Adds a value to this NumberUnit in place and returns the result.

Parameters
ParameterTypeDescription
valueNumberUnitInterface<F>The other value.
Returns

this

The sum.

Throws

Error if the supplied value cannot be converted to this NumberUnit's unit type.

Implementation of

NumberUnitInterface.add

Call Signature

add<OU>(value, unit, out): NumberUnit<F, OU>

Defined in: src/sdk/math/NumberUnit.ts:250

Adds a value to this NumberUnit and returns the result.

Type Parameters
Type Parameter
OU extends Unit<F>
Parameters
ParameterTypeDescription
valuenumberThe other value.
unitUnit<F>The unit type of the other value.
outNumberUnit<F, OU>The NumberUnit to which to write the result.
Returns

NumberUnit<F, OU>

The sum.

Throws

Error if the supplied value cannot be converted to this NumberUnit's unit type.

Implementation of

NumberUnitInterface.add

Call Signature

add(value, unit): this

Defined in: src/sdk/math/NumberUnit.ts:258

Adds a value to this NumberUnit in place and returns the result.

Parameters
ParameterTypeDescription
valuenumberThe other value.
unitUnit<F>The unit type of the other value.
Returns

this

The sum.

Throws

Error if the supplied value cannot be converted to this NumberUnit's unit type.

Implementation of

NumberUnitInterface.add


asUnit()

asUnit(unit): number

Defined in: src/sdk/math/NumberUnit.ts:401

Returns the numeric value of this NumberUnit after conversion to a specified unit.

Parameters

ParameterTypeDescription
unitUnit<F>The unit to which to convert.

Returns

number

The converted numeric value.

Throws

Error if this NumberUnit's unit type cannot be converted to the specified unit.

Implementation of

NumberUnitInterface.asUnit


compare()

Call Signature

compare(value): number

Defined in: src/sdk/math/NumberUnit.ts:411

Checks whether this NumberUnit is greater than, equal to, or less than another value.

Parameters
ParameterTypeDescription
valueNumberUnitInterface<F>The other value.
Returns

number

0 if this NumberUnit is equal to the other value, -1 if this number is less, 1 if this number is greater.

Throws

Error if this NumberUnit cannot be compared to the other value.

Implementation of

NumberUnitInterface.compare

Call Signature

compare(value, unit?): number

Defined in: src/sdk/math/NumberUnit.ts:419

Checks whether this NumberUnit is greater than, equal to, or less than another value.

Parameters
ParameterTypeDescription
valuenumberThe other value.
unit?Unit<F>The unit type of the other value. Defaults to this NumberUnit's unit type.
Returns

number

0 if this NumberUnit is equal to the other value, -1 if this number is less, 1 if this number is greater.

Throws

Error if this NumberUnit cannot be compared to the other value.

Implementation of

NumberUnitInterface.compare


copy()

copy(): NumberUnit<F, U>

Defined in: src/sdk/math/NumberUnit.ts:478

Copies this NumberUnit.

Returns

NumberUnit<F, U>

A copy of this NumberUnit.

Implementation of

NumberUnitInterface.copy


equals()

Call Signature

equals(value): boolean

Defined in: src/sdk/math/NumberUnit.ts:441

Checks whether this NumberUnit is equal to another value. Two values are considered equal if and only if their unit types are interconvertable and when converted to the same unit type, their numeric values are equal to each other or both equal to NaN.

Parameters
ParameterTypeDescription
valueNumberUnitInterface<string>The other value.
Returns

boolean

Whether this NumberUnit is equal to the other value.

Implementation of

NumberUnitInterface.equals

Call Signature

equals(value, unit?): boolean

Defined in: src/sdk/math/NumberUnit.ts:450

Checks whether this NumberUnit is equal to another value. Two values are considered equal if and only if their unit types are interconvertable and when converted to the same unit type, their numeric values are equal to each other or both equal to NaN.

Parameters
ParameterTypeDescription
valuenumberThe other value.
unit?Unit<string>The unit type of the other value. Defaults to this NumberUnit's unit type.
Returns

boolean

Whether this NumberUnit is equal to the other value.

Implementation of

NumberUnitInterface.equals


isNaN()

isNaN(): boolean

Defined in: src/sdk/math/NumberUnit.ts:470

Checks whether this NumberUnit has a numeric value of NaN.

Returns

boolean

Whether this NumberUnit has a numeric value of NaN.

Implementation of

NumberUnitInterface.isNaN


ratio()

Call Signature

ratio(value): number

Defined in: src/sdk/math/NumberUnit.ts:356

Finds the ratio of this NumberUnit to another value.

Parameters
ParameterTypeDescription
valueNumberUnitInterface<F>The other value.
Returns

number

The ratio.

Throws

Error if the other value cannot be converted to this NumberUnit's unit type.

Implementation of

NumberUnitInterface.ratio

Call Signature

ratio(value, unit): number

Defined in: src/sdk/math/NumberUnit.ts:364

Finds the ratio of this NumberUnit to another value.

Parameters
ParameterTypeDescription
valuenumberThe other value.
unitUnit<F>The unit type of the other value.
Returns

number

the ratio.

Throws

Error if the other value cannot be converted to this NumberUnit's unit type.

Implementation of

NumberUnitInterface.ratio


scale()

Call Signature

scale<OU>(factor, out): NumberUnit<F, OU>

Defined in: src/sdk/math/NumberUnit.ts:333

Scales this NumberUnit by a unit-less factor and returns the result.

Type Parameters
Type Parameter
OU extends Unit<F>
Parameters
ParameterTypeDescription
factornumberThe factor by which to scale.
outNumberUnit<F, OU>The NumberUnit to which to write the result.
Returns

NumberUnit<F, OU>

The scaled value.

Implementation of

NumberUnitInterface.scale

Call Signature

scale(factor): this

Defined in: src/sdk/math/NumberUnit.ts:339

Scales this NumberUnit by a unit-less factor in place and returns the result.

Parameters
ParameterTypeDescription
factornumberThe factor by which to scale.
Returns

this

The scaled value.

Implementation of

NumberUnitInterface.scale


set()

Call Signature

set(value): this

Defined in: src/sdk/math/NumberUnit.ts:208

Sets this NumberUnit's numeric value. This method will not change this NumberUnit's unit type. If the supplied value cannot be converted to this NumberUnit's unit type, this NumberUnit will not be changed and this method will return undefined.

Parameters
ParameterTypeDescription
valueNumberUnitInterface<F>the new value.
Returns

this

this NumberUnit, after it has been changed, or undefined if the operation could not be carried out.

Call Signature

set(value, unit?): this

Defined in: src/sdk/math/NumberUnit.ts:216

Sets this NumberUnit's numeric value. This method will not change this NumberUnit's unit type.

Parameters
ParameterTypeDescription
valuenumberthe new value.
unit?Unit<F>the unit type of the new value. Defaults to this NumberUnit's unit type.
Returns

this

this NumberUnit, after it has been changed.

Throws

Error if the supplied value cannot be converted to this NumberUnit's unit type.


subtract()

Call Signature

subtract<OU>(value, out): NumberUnit<F, OU>

Defined in: src/sdk/math/NumberUnit.ts:284

Subtracts a value from this NumberUnit and returns the result.

Type Parameters
Type Parameter
OU extends Unit<F>
Parameters
ParameterTypeDescription
valueNumberUnitInterface<F>The other value.
outNumberUnit<F, OU>The NumberUnit to which to write the result.
Returns

NumberUnit<F, OU>

The difference.

Throws

Error if the supplied value cannot be converted to this NumberUnit's unit type.

Implementation of

NumberUnitInterface.subtract

Call Signature

subtract(value): this

Defined in: src/sdk/math/NumberUnit.ts:291

Subtracts a value from this NumberUnit in place and returns the result.

Parameters
ParameterTypeDescription
valueNumberUnitInterface<F>The other value.
Returns

this

The difference.

Throws

Error if the supplied value cannot be converted to this NumberUnit's unit type.

Implementation of

NumberUnitInterface.subtract

Call Signature

subtract<OU>(value, unit, out): NumberUnit<F, OU>

Defined in: src/sdk/math/NumberUnit.ts:300

Subtracts a value from this NumberUnit and returns the result.

Type Parameters
Type Parameter
OU extends Unit<F>
Parameters
ParameterTypeDescription
valuenumberThe other value.
unitUnit<F>The unit type of the other value.
outNumberUnit<F, OU>The NumberUnit to which to write the result.
Returns

NumberUnit<F, OU>

The difference.

Throws

Error if the supplied value cannot be converted to this NumberUnit's unit type.

Implementation of

NumberUnitInterface.subtract

Call Signature

subtract(value, unit): this

Defined in: src/sdk/math/NumberUnit.ts:308

Subtracts a value from this NumberUnit in place and returns the result.

Parameters
ParameterTypeDescription
valuenumberThe other value.
unitUnit<F>The unit type of the other value.
Returns

this

The difference.

Throws

Error if the supplied value cannot be converted to this NumberUnit's unit type.

Implementation of

NumberUnitInterface.subtract