getDecimalFixedPointEncoder

function getDecimalFixedPointEncoder<
    TSignedness,
    TTotalBits,
    TDecimals,
>(
    signedness,
    totalBits,
    decimals,
    config?,
): FixedSizeEncoder<
    DecimalFixedPoint<TSignedness, TTotalBits, TDecimals>,
    BytesForTotalBits<TTotalBits>
>;

Returns an encoder for DecimalFixedPoint values of a specific shape. The encoder serializes value.raw as a fixed-size integer using two's-complement for signed values and little-endian byte order by default.

Throws SOLANA_ERROR__FIXED_POINTS__TOTAL_BITS_NOT_BYTE_ALIGNED when totalBits is not a multiple of 8. Encoding a value whose shape does not match the codec's shape throws SOLANA_ERROR__FIXED_POINTS__SHAPE_MISMATCH.

Type Parameters

Type Parameter
TSignedness extends Signedness
TTotalBits extends number
TDecimals extends number

Parameters

ParameterType
signednessTSignedness
totalBitsTTotalBits
decimalsTDecimals
config?FixedPointCodecConfig

Returns

FixedSizeEncoder<DecimalFixedPoint<TSignedness, TTotalBits, TDecimals>, BytesForTotalBits<TTotalBits>>

Example

const encoder = getDecimalFixedPointEncoder('unsigned', 64, 6);
encoder.encode(decimalFixedPoint('unsigned', 64, 6)('42.5'));

See

On this page