Class: DoubleDataType

diffusion.datatypes. DoubleDataType


new DoubleDataType()

Double data type.

Accessed via: diffusion.datatypes.double();

Provides a data type implementation which supports double float (native JavaScript Number) values. The double value is serialized in CBOR-format binary.

This data type supports null double values.

Since:
  • 6.0

Extends

Methods


canReadAs(valueType)

Test whether this data type is compatible with valueType. Compatibility with a valueType means than any valid binary representation of a value can be read as an instance of valueType.

Every data type should be compatible with the following:

  • Value Type – the class corresponding to the data type's value type.

For a data type with a value type of X, readAs(X, buffer) is equivalent to readValue(buffer).

Parameters:
Name Type Description
valueType function

the type to check

Since:
  • 6.0
Inherited From:
Returns:

true if a binary representation created by this data type can read as an instance of valueType

Type
Boolean

deltaType( [name] [, delta])

Obtain a diffusion.datatypes.DeltaType by name or delta type.

Parameters:
Name Type Argument Description
name String <optional>

The name, as returned by diffusion.datatypes.DeltaType#name

delta Object <optional>

The delta, from which a type-appropriate delta support will be derived

Inherited From:
Returns:

the delta support

Type
diffusion.datatypes.DeltaType
Examples
// Get by name
var deltas = datatype.deltaType("binary");
// Get by type
var deltas = datatype.deltaType(delta);

name()

The external type identifier.

Inherited From:
Returns:

The name of this datatype.

Type
String

readAs(valueType, buffer [, offset] [, length])

Create a value of a compatible class from binary.

Parameters:
Name Type Argument Default Description
valueType function

the type of the result

buffer Buffer

the binary data

offset Number <optional>
0

the offset to read data from the buffer

length Number <optional>
buffer.length

the length of data to read from the buffer

Since:
  • 6.0
Inherited From:
Throws:

Error if valueType is incompatible with this data type, or buffer does not represent a valid value.

Returns:

the value in the form of the specified type

Type
Object

readValue(input [, offset] [, length])

Parse a value from binary.

Parameters:
Name Type Argument Description
input Buffer

The binary data

offset Number <optional>

The offset to start reading from the provided buffer

length Number <optional>

The length of the data to read

Inherited From:
Throws:

Error if the data is invalid for this type

Returns:

An instance of this data type value

Type
Object

writeValue(value)

Serialise a value to binary

Parameters:
Name Type Description
value Object

The value to serialise

Inherited From:
Throws:

Error if the value can not be serialised

Returns:

The serialised value as a buffer

Type
Buffer