Skip to content
Snippets Groups Projects
  • Serge Petrenko's avatar
    6d62c6c1
    lib/core: introduce decimal type to tarantool · 6d62c6c1
    Serge Petrenko authored
    Add fixed-point decimal type to tarantool core.
    Adapt decNumber floating-point decimal library for the purpose, write a
    small wrapper and add unit tests.
    
    A new decimal type is an alias for decNumber numbers from the decNumber
    library.
    Arithmetic operations (+, -, *, /) and some mathematic functions
    (ln, log10, exp, pow, sqrt) are available together with methods to
    pack and unpack decimal to and from its packed representation (useful
    for serialization).
    
    We introduce a single context for all the arithmetic operations
    on decimals, which enforces both number precision and scale to be
    in range [0, 38]. NaNs and Infinities are restricted.
    
    Part of #692
    6d62c6c1
    History
    lib/core: introduce decimal type to tarantool
    Serge Petrenko authored
    Add fixed-point decimal type to tarantool core.
    Adapt decNumber floating-point decimal library for the purpose, write a
    small wrapper and add unit tests.
    
    A new decimal type is an alias for decNumber numbers from the decNumber
    library.
    Arithmetic operations (+, -, *, /) and some mathematic functions
    (ln, log10, exp, pow, sqrt) are available together with methods to
    pack and unpack decimal to and from its packed representation (useful
    for serialization).
    
    We introduce a single context for all the arithmetic operations
    on decimals, which enforces both number precision and scale to be
    in range [0, 38]. NaNs and Infinities are restricted.
    
    Part of #692