pbo_decimal.h File Reference


Functions

EXTERN int pbo_decimal_compare (const pin_decimal_t *dec1p, const pin_decimal_t *dec2p, pin_errbuf_t *ebufp)
EXTERN int pbo_decimal_sign (const pin_decimal_t *decp, pin_errbuf_t *ebufp)
EXTERN int pbo_decimal_is_zero (const pin_decimal_t *decp, pin_errbuf_t *ebufp)
EXTERN int pbo_decimal_is_null (const pin_decimal_t *decp, pin_errbuf_t *ebufp)
EXTERN pin_decimal_tpbo_decimal_from_str (const char *str, pin_errbuf_t *ebufp)
EXTERN char * pbo_decimal_to_str (const pin_decimal_t *decp, pin_errbuf_t *ebufp)
EXTERN pin_decimal_tpbo_decimal_from_double (double value, pin_errbuf_t *ebufp)
EXTERN pin_decimal_tpbo_decimal_from_double_round (double value, int rounding_mode, pin_errbuf_t *ebufp)
EXTERN double pbo_decimal_to_double (const pin_decimal_t *decp, pin_errbuf_t *ebufp)
EXTERN pin_decimal_tpbo_decimal_copy (const pin_decimal_t *decp, pin_errbuf_t *ebufp)
EXTERN void pbo_decimal_destroy (pin_decimal_t **decpp)
EXTERN pin_decimal_tpbo_decimal_round (const pin_decimal_t *decp, int32 scale, int32 rounding_mode, pin_errbuf_t *ebufp)
EXTERN void pbo_decimal_round_assign (pin_decimal_t *decp, int32 scale, int32 rounding_mode, pin_errbuf_t *ebufp)
EXTERN pin_decimal_tpbo_decimal_abs (const pin_decimal_t *decp, pin_errbuf_t *ebufp)
EXTERN void pbo_decimal_abs_assign (pin_decimal_t *decp, pin_errbuf_t *ebufp)
EXTERN pin_decimal_tpbo_decimal_negate (const pin_decimal_t *decp, pin_errbuf_t *ebufp)
EXTERN void pbo_decimal_negate_assign (pin_decimal_t *decp, pin_errbuf_t *ebufp)
EXTERN pin_decimal_tpbo_decimal_add (const pin_decimal_t *dec1p, const pin_decimal_t *dec2p, pin_errbuf_t *ebufp)
EXTERN void pbo_decimal_add_assign (pin_decimal_t *dec1p, const pin_decimal_t *dec2p, pin_errbuf_t *ebufp)
EXTERN pin_decimal_tpbo_decimal_subtract (const pin_decimal_t *dec1p, const pin_decimal_t *dec2p, pin_errbuf_t *ebufp)
EXTERN void pbo_decimal_subtract_assign (pin_decimal_t *dec1p, const pin_decimal_t *dec2p, pin_errbuf_t *ebufp)
EXTERN pin_decimal_tpbo_decimal_multiply (const pin_decimal_t *dec1p, const pin_decimal_t *dec2p, pin_errbuf_t *ebufp)
EXTERN void pbo_decimal_multiply_assign (pin_decimal_t *dec1p, const pin_decimal_t *dec2p, pin_errbuf_t *ebufp)
EXTERN pin_decimal_tpbo_decimal_divide (const pin_decimal_t *dec1p, const pin_decimal_t *dec2p, pin_errbuf_t *ebufp)
EXTERN void pbo_decimal_divide_assign (pin_decimal_t *dec1p, const pin_decimal_t *dec2p, pin_errbuf_t *ebufp)

Function Documentation

EXTERN int pbo_decimal_compare ( const pin_decimal_t dec1p,
const pin_decimal_t dec2p,
pin_errbuf_t ebufp 
)

EXTERN int pbo_decimal_sign ( const pin_decimal_t decp,
pin_errbuf_t ebufp 
)

EXTERN int pbo_decimal_is_zero ( const pin_decimal_t decp,
pin_errbuf_t ebufp 
)

EXTERN int pbo_decimal_is_null ( const pin_decimal_t decp,
pin_errbuf_t ebufp 
)

EXTERN pin_decimal_t* pbo_decimal_from_str ( const char *  str,
pin_errbuf_t ebufp 
)

EXTERN char* pbo_decimal_to_str ( const pin_decimal_t decp,
pin_errbuf_t ebufp 
)

EXTERN pin_decimal_t* pbo_decimal_from_double ( double  value,
pin_errbuf_t ebufp 
)

EXTERN pin_decimal_t* pbo_decimal_from_double_round ( double  value,
int  rounding_mode,
pin_errbuf_t ebufp 
)

Create a decimal variable from a double value, with specified rounding method. Allows the user to choose the rounding method rather than rely on the default, which is ROUND_DOWN

Parameters:
value double value to convert
rounding_mode ROUND_UP, ROUND_DOWN, ROUND_CEILING, ROUND_FLOOR, ROUND_HALF_UP, ROUND_HALF_DOWN, ROUND_HALF_EVEN, ROUND_UNNCESSARY are the choices
ebufp the error buffer to contain error
Returns:
pin_decimal_t* pointer to newly allocated decimal value

EXTERN double pbo_decimal_to_double ( const pin_decimal_t decp,
pin_errbuf_t ebufp 
)

EXTERN pin_decimal_t* pbo_decimal_copy ( const pin_decimal_t decp,
pin_errbuf_t ebufp 
)

EXTERN void pbo_decimal_destroy ( pin_decimal_t **  decpp  ) 

EXTERN pin_decimal_t* pbo_decimal_round ( const pin_decimal_t decp,
int32  scale,
int32  rounding_mode,
pin_errbuf_t ebufp 
)

EXTERN void pbo_decimal_round_assign ( pin_decimal_t decp,
int32  scale,
int32  rounding_mode,
pin_errbuf_t ebufp 
)

EXTERN pin_decimal_t* pbo_decimal_abs ( const pin_decimal_t decp,
pin_errbuf_t ebufp 
)

EXTERN void pbo_decimal_abs_assign ( pin_decimal_t decp,
pin_errbuf_t ebufp 
)

EXTERN pin_decimal_t* pbo_decimal_negate ( const pin_decimal_t decp,
pin_errbuf_t ebufp 
)

EXTERN void pbo_decimal_negate_assign ( pin_decimal_t decp,
pin_errbuf_t ebufp 
)

EXTERN pin_decimal_t* pbo_decimal_add ( const pin_decimal_t dec1p,
const pin_decimal_t dec2p,
pin_errbuf_t ebufp 
)

EXTERN void pbo_decimal_add_assign ( pin_decimal_t dec1p,
const pin_decimal_t dec2p,
pin_errbuf_t ebufp 
)

EXTERN pin_decimal_t* pbo_decimal_subtract ( const pin_decimal_t dec1p,
const pin_decimal_t dec2p,
pin_errbuf_t ebufp 
)

EXTERN void pbo_decimal_subtract_assign ( pin_decimal_t dec1p,
const pin_decimal_t dec2p,
pin_errbuf_t ebufp 
)

EXTERN pin_decimal_t* pbo_decimal_multiply ( const pin_decimal_t dec1p,
const pin_decimal_t dec2p,
pin_errbuf_t ebufp 
)

EXTERN void pbo_decimal_multiply_assign ( pin_decimal_t dec1p,
const pin_decimal_t dec2p,
pin_errbuf_t ebufp 
)

EXTERN pin_decimal_t* pbo_decimal_divide ( const pin_decimal_t dec1p,
const pin_decimal_t dec2p,
pin_errbuf_t ebufp 
)

EXTERN void pbo_decimal_divide_assign ( pin_decimal_t dec1p,
const pin_decimal_t dec2p,
pin_errbuf_t ebufp 
)


Copyright 2017, 2023, Oracle and/or its affiliates.