#include "ruby/ruby.h"#include <float.h>Go to the source code of this file.
Data Structures | |
| struct | Real |
Defines | |
| #define | RUBY_BIG_DECIMAL_H 1 |
| #define | RB_UNUSED_VAR(x) x |
| #define | UNREACHABLE |
| #define | BDIGIT uint16_t |
| #define | BDIGIT_DBL uint32_t |
| #define | BDIGIT_DBL_SIGNED int32_t |
| #define | SIZEOF_BDIGITS 2 |
| #define | vabs abs |
| #define | RMPD_COMPONENT_FIGURES 4 |
| #define | RMPD_BASE ((BDIGIT)10000U) |
| #define | SZ_NaN "NaN" |
| #define | SZ_INF "Infinity" |
| #define | SZ_PINF "+Infinity" |
| #define | SZ_NINF "-Infinity" |
| #define | VP_EXPORT static |
| #define | VP_EXCEPTION_ALL ((unsigned short)0x00FF) |
| #define | VP_EXCEPTION_INFINITY ((unsigned short)0x0001) |
| #define | VP_EXCEPTION_NaN ((unsigned short)0x0002) |
| #define | VP_EXCEPTION_UNDERFLOW ((unsigned short)0x0004) |
| #define | VP_EXCEPTION_OVERFLOW ((unsigned short)0x0001) |
| #define | VP_EXCEPTION_ZERODIVIDE ((unsigned short)0x0010) |
| #define | VP_EXCEPTION_OP ((unsigned short)0x0020) |
| #define | VP_EXCEPTION_MEMORY ((unsigned short)0x0040) |
| #define | RMPD_EXCEPTION_MODE_DEFAULT 0U |
| #define | VP_ROUND_MODE ((unsigned short)0x0100) |
| #define | VP_ROUND_UP 1 |
| #define | VP_ROUND_DOWN 2 |
| #define | VP_ROUND_HALF_UP 3 |
| #define | VP_ROUND_HALF_DOWN 4 |
| #define | VP_ROUND_CEIL 5 |
| #define | VP_ROUND_FLOOR 6 |
| #define | VP_ROUND_HALF_EVEN 7 |
| #define | RMPD_ROUNDING_MODE_DEFAULT VP_ROUND_HALF_UP |
| #define | VP_SIGN_NaN 0 |
| #define | VP_SIGN_POSITIVE_ZERO 1 |
| #define | VP_SIGN_NEGATIVE_ZERO -1 |
| #define | VP_SIGN_POSITIVE_FINITE 2 |
| #define | VP_SIGN_NEGATIVE_FINITE -2 |
| #define | VP_SIGN_POSITIVE_INFINITE 3 |
| #define | VP_SIGN_NEGATIVE_INFINITE -3 |
| #define | FLEXIBLE_ARRAY_SIZE 1 |
| #define | VpBaseFig() rmpd_component_figures() |
| #define | VpDblFig() rmpd_double_figures() |
| #define | VpBaseVal() rmpd_base_value() |
| #define | Abs(a) (((a)>= 0)?(a):(-(a))) |
| #define | Max(a, b) (((a)>(b))?(a):(b)) |
| #define | Min(a, b) (((a)>(b))?(b):(a)) |
| #define | VpMaxPrec(a) ((a)->MaxPrec) |
| #define | VpPrec(a) ((a)->Prec) |
| #define | VpGetFlag(a) ((a)->flag) |
| #define | VpGetSign(a) (((a)->sign>0)?1:(-1)) |
| #define | VpChangeSign(a, s) {if((s)>0) (a)->sign=(short)Abs((ssize_t)(a)->sign);else (a)->sign=-(short)Abs((ssize_t)(a)->sign);} |
| #define | VpSetSign(a, s) {if((s)>0) (a)->sign=(short)VP_SIGN_POSITIVE_FINITE;else (a)->sign=(short)VP_SIGN_NEGATIVE_FINITE;} |
| #define | VpSetOne(a) {(a)->Prec=(a)->exponent=(a)->frac[0]=1;(a)->sign=VP_SIGN_POSITIVE_FINITE;} |
| #define | VpIsPosZero(a) ((a)->sign==VP_SIGN_POSITIVE_ZERO) |
| #define | VpIsNegZero(a) ((a)->sign==VP_SIGN_NEGATIVE_ZERO) |
| #define | VpIsZero(a) (VpIsPosZero(a) || VpIsNegZero(a)) |
| #define | VpSetPosZero(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_POSITIVE_ZERO) |
| #define | VpSetNegZero(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_NEGATIVE_ZERO) |
| #define | VpSetZero(a, s) ( ((s)>0)?VpSetPosZero(a):VpSetNegZero(a) ) |
| #define | VpIsNaN(a) ((a)->sign==VP_SIGN_NaN) |
| #define | VpSetNaN(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_NaN) |
| #define | VpIsPosInf(a) ((a)->sign==VP_SIGN_POSITIVE_INFINITE) |
| #define | VpIsNegInf(a) ((a)->sign==VP_SIGN_NEGATIVE_INFINITE) |
| #define | VpIsInf(a) (VpIsPosInf(a) || VpIsNegInf(a)) |
| #define | VpIsDef(a) ( !(VpIsNaN(a)||VpIsInf(a)) ) |
| #define | VpSetPosInf(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_POSITIVE_INFINITE) |
| #define | VpSetNegInf(a) ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_NEGATIVE_INFINITE) |
| #define | VpSetInf(a, s) ( ((s)>0)?VpSetPosInf(a):VpSetNegInf(a) ) |
| #define | VpHasVal(a) (a->frac[0]) |
| #define | VpIsOne(a) ((a->Prec==1)&&(a->frac[0]==1)&&(a->exponent==1)) |
| #define | VpExponent(a) (a->exponent) |
Functions | |
| static long | labs (long const x) |
| static LONG_LONG | llabs (LONG_LONG const x) |
| VP_EXPORT Real * | VpNewRbClass (size_t mx, char const *str, VALUE klass) |
| VP_EXPORT Real * | VpCreateRbObject (size_t mx, const char *str) |
| static BDIGIT | rmpd_base_value (void) |
| static size_t | rmpd_component_figures (void) |
| static size_t | rmpd_double_figures (void) |
| VP_EXPORT double | VpGetDoubleNaN (void) |
| VP_EXPORT double | VpGetDoublePosInf (void) |
| VP_EXPORT double | VpGetDoubleNegInf (void) |
| VP_EXPORT double | VpGetDoubleNegZero (void) |
| VP_EXPORT size_t | VpGetPrecLimit (void) |
| VP_EXPORT size_t | VpSetPrecLimit (size_t n) |
| VP_EXPORT int | VpIsRoundMode (unsigned short n) |
| VP_EXPORT unsigned short | VpGetRoundMode (void) |
| VP_EXPORT unsigned short | VpSetRoundMode (unsigned short n) |
| VP_EXPORT int | VpException (unsigned short f, const char *str, int always) |
| VP_EXPORT size_t | VpNumOfChars (Real *vp, const char *pszFmt) |
| VP_EXPORT size_t | VpInit (BDIGIT BaseVal) |
| VP_EXPORT void * | VpMemAlloc (size_t mb) |
| VP_EXPORT void * | VpMemRealloc (void *ptr, size_t mb) |
| VP_EXPORT void | VpFree (Real *pv) |
| VP_EXPORT Real * | VpAlloc (size_t mx, const char *szVal) |
| VP_EXPORT size_t | VpAsgn (Real *c, Real *a, int isw) |
| VP_EXPORT size_t | VpAddSub (Real *c, Real *a, Real *b, int operation) |
| VP_EXPORT size_t | VpMult (Real *c, Real *a, Real *b) |
| VP_EXPORT size_t | VpDivd (Real *c, Real *r, Real *a, Real *b) |
| VP_EXPORT int | VpComp (Real *a, Real *b) |
| VP_EXPORT ssize_t | VpExponent10 (Real *a) |
| VP_EXPORT void | VpSzMantissa (Real *a, char *psz) |
| VP_EXPORT int | VpToSpecialString (Real *a, char *psz, int fPlus) |
| VP_EXPORT void | VpToString (Real *a, char *psz, size_t fFmt, int fPlus) |
| VP_EXPORT void | VpToFString (Real *a, char *psz, size_t fFmt, int fPlus) |
| VP_EXPORT int | VpCtoV (Real *a, const char *int_chr, size_t ni, const char *frac, size_t nf, const char *exp_chr, size_t ne) |
| VP_EXPORT int | VpVtoD (double *d, SIGNED_VALUE *e, Real *m) |
| VP_EXPORT void | VpDtoV (Real *m, double d) |
| VP_EXPORT int | VpSqrt (Real *y, Real *x) |
| VP_EXPORT int | VpActiveRound (Real *y, Real *x, unsigned short f, ssize_t il) |
| VP_EXPORT int | VpMidRound (Real *y, unsigned short f, ssize_t nf) |
| VP_EXPORT int | VpLeftRound (Real *y, unsigned short f, ssize_t nf) |
| VP_EXPORT void | VpFrac (Real *y, Real *x) |
| VP_EXPORT int | VpPower (Real *y, Real *x, SIGNED_VALUE n) |
| VP_EXPORT Real * | VpOne (void) |
Variables | |
| VALUE | rb_cBigDecimal |
| #define Abs | ( | a | ) | (((a)>= 0)?(a):(-(a))) |
Definition at line 261 of file bigdecimal.h.
| #define BDIGIT uint16_t |
Definition at line 40 of file bigdecimal.h.
Referenced by abs2twocomp(), absint_numwords_generic(), bary_addc(), bary_divmod(), bary_divmod_normal(), bary_mul_balance_with_mulfunc(), bary_mul_karatsuba(), bary_mul_precheck(), bary_mul_toom3(), bary_pack(), bary_small_rshift(), bary_sq_fast(), bary_swap(), bary_unpack_internal(), bdigitdbl2bary(), big2dbl(), big2str_generic(), big2str_karatsuba(), big2ulong(), big_shift3(), bigadd_int(), bigand_int(), BigDecimal_div(), BigDecimal_hash(), BigDecimal_memsize(), bigdivrem(), bigdivrem1(), bigdivrem_restoring(), bigdivrem_single1(), bigfixize(), bigmul0(), bignew_1(), bigor_int(), bigsq(), bigsub(), bigsub_int(), bigtrunc(), bigxor_int(), dbl2big(), get2comp(), obj_memsize_of(), ossl_bn_initialize(), rb_absint_singlebit_p(), rb_absint_size(), rb_big2str1(), rb_big_and(), rb_big_aref(), rb_big_bit_length(), rb_big_clone(), rb_big_divrem_normal(), rb_big_eq(), rb_big_eql(), rb_big_hash(), rb_big_neg(), rb_big_or(), rb_big_realloc(), rb_big_xor(), rb_integer_pack(), rb_integer_unpack(), rb_uint2big(), shortlen(), str2big_karatsuba(), str2big_normal(), str2big_poweroftwo(), VpAddAbs(), VpAddSub(), VpAsgn(), VpCopy(), VpCtoV(), VpDivd(), VpDtoV(), VpLeftRound(), VpMidRound(), VpMult(), VpNmlz(), VpRdup(), VpSubAbs(), VpToFString(), VpToString(), and w_object().
| #define BDIGIT_DBL uint32_t |
Definition at line 41 of file bigdecimal.h.
Referenced by bary_addc(), bary_divmod(), bary_mul_single(), bary_muladd_1xN(), bary_pack(), bary_small_lshift(), bary_small_rshift(), bary_sq_fast(), bary_unpack_internal(), big2str_2bdigits(), bigadd_int(), BigDecimal_div(), bigdivrem(), bigdivrem_mulsub(), bigdivrem_single1(), integer_pack_fill_dd(), integer_pack_take_lowbits(), integer_unpack_push_bits(), maxpow_in_bdigit_dbl(), power_cache_get_power(), rb_integer_unpack(), str2big_karatsuba(), str2big_normal(), str2big_poweroftwo(), VpDivd(), VpMult(), and VpSzMantissa().
| #define BDIGIT_DBL_SIGNED int32_t |
Definition at line 42 of file bigdecimal.h.
Referenced by bary_mulsub_1xN(), bary_pack(), bary_subb(), BigDecimal_to_i(), bigdivrem1(), bigdivrem_mulsub(), bigsub_int(), and rb_integer_unpack().
| #define FLEXIBLE_ARRAY_SIZE 1 |
Definition at line 153 of file bigdecimal.h.
| #define Max | ( | a, | |||
| b | ) | (((a)>(b))?(a):(b)) |
Definition at line 262 of file bigdecimal.h.
Referenced by VpAlloc(), and VpSetPTR().
| #define Min | ( | a, | |||
| b | ) | (((a)>(b))?(b):(a)) |
Definition at line 263 of file bigdecimal.h.
Referenced by VpAddSub(), VpDivd(), VpFrac(), VpSqrt(), and VpVtoD().
| #define RB_UNUSED_VAR | ( | x | ) | x |
Definition at line 19 of file bigdecimal.h.
| #define RMPD_BASE ((BDIGIT)10000U) |
Definition at line 95 of file bigdecimal.h.
Referenced by rmpd_base_value().
| #define RMPD_COMPONENT_FIGURES 4 |
Definition at line 94 of file bigdecimal.h.
Referenced by rmpd_component_figures().
| #define RMPD_EXCEPTION_MODE_DEFAULT 0U |
Definition at line 128 of file bigdecimal.h.
Referenced by VpGetException().
| #define RMPD_ROUNDING_MODE_DEFAULT VP_ROUND_HALF_UP |
Definition at line 140 of file bigdecimal.h.
Referenced by VpGetRoundMode().
| #define RUBY_BIG_DECIMAL_H 1 |
Definition at line 10 of file bigdecimal.h.
| #define SIZEOF_BDIGITS 2 |
Definition at line 43 of file bigdecimal.h.
Referenced by bary_pack(), bary_unpack_internal(), bigfixize(), integer_unpack_single_bdigit(), nlz(), ossl_bn_initialize(), rb_absint_size(), shortlen(), and w_object().
| #define SZ_INF "Infinity" |
Definition at line 106 of file bigdecimal.h.
Referenced by VpAlloc(), VpSzMantissa(), and VpToSpecialString().
| #define SZ_NaN "NaN" |
Definition at line 105 of file bigdecimal.h.
Referenced by VpAlloc(), VpSzMantissa(), and VpToSpecialString().
| #define SZ_NINF "-Infinity" |
Definition at line 108 of file bigdecimal.h.
Referenced by VpAlloc(), VpSzMantissa(), and VpToSpecialString().
| #define SZ_PINF "+Infinity" |
Definition at line 107 of file bigdecimal.h.
Referenced by VpAlloc().
| #define UNREACHABLE |
Definition at line 24 of file bigdecimal.h.
Referenced by BigDecimalCmp(), create_dummy_encoding_for_tk_core(), dln_load(), first_i(), generic_to_value(), ip_cancel_eval_core(), lib_get_reltype_name(), location_absolute_path(), location_base_label(), location_label(), location_lineno(), location_path(), name_to_backref_number(), num_init_copy(), num_sadded(), ossl_pkey_new(), ossl_ssl_session_reused(), pending_exception_check0(), pending_exception_check1(), proc_exec_cmd(), proc_exec_sh(), pty_check(), rb_digest_instance_block_length(), rb_digest_instance_finish(), rb_digest_instance_reset(), rb_digest_instance_update(), rb_dlhandle_close(), rb_f_abort(), rb_f_exit(), rb_f_exit_bang(), rb_f_notimplement(), rb_f_raise(), rb_f_throw(), rb_fiddle_handle_close(), rb_Float(), rb_io_set_sync(), rb_method_entry_min_max_arity(), rb_method_missing(), rb_mod_const_missing(), rb_mod_remove_cvar(), rb_obj_remove_instance_variable(), rb_remove_history(), rb_str_aref(), rb_str_scrub(), rb_struct_aref_id(), rb_struct_aset_id(), rb_struct_getmember(), rb_struct_set(), rb_uv_to_utf8(), ripper_token2eventid(), rsock_io_socket_addrinfo(), sock_s_getnameinfo(), sockopt_ipv4_multicast_loop(), sockopt_ipv4_multicast_ttl(), str_byte_aref(), strio_unimpl(), tk_hash_kv(), and undumpable().
| #define vabs abs |
Definition at line 75 of file bigdecimal.h.
Referenced by BigDecimal_divide(), BigDecimal_DoDivmod(), BigMath_s_exp(), and BigMath_s_log().
| #define VP_EXCEPTION_ALL ((unsigned short)0x00FF) |
Definition at line 117 of file bigdecimal.h.
Referenced by BigDecimal_mode(), and Init_bigdecimal().
| #define VP_EXCEPTION_INFINITY ((unsigned short)0x0001) |
Definition at line 118 of file bigdecimal.h.
Referenced by BigDecimal_check_num(), BigDecimal_mode(), GetAddSubPrec(), Init_bigdecimal(), ToValue(), VpCtoV(), VpException(), and VpIsDefOP().
| #define VP_EXCEPTION_MEMORY ((unsigned short)0x0040) |
Definition at line 126 of file bigdecimal.h.
Referenced by VpException(), VpMemAlloc(), and VpMemRealloc().
| #define VP_EXCEPTION_NaN ((unsigned short)0x0002) |
Definition at line 119 of file bigdecimal.h.
Referenced by BigDecimal_check_num(), BigDecimal_mode(), Init_bigdecimal(), ToValue(), VpDivd(), VpException(), and VpIsDefOP().
| #define VP_EXCEPTION_OP ((unsigned short)0x0020) |
Definition at line 125 of file bigdecimal.h.
Referenced by VpException(), and VpSqrt().
| #define VP_EXCEPTION_OVERFLOW ((unsigned short)0x0001) |
Definition at line 121 of file bigdecimal.h.
Referenced by AddExponent(), BigDecimal_to_f(), and Init_bigdecimal().
| #define VP_EXCEPTION_UNDERFLOW ((unsigned short)0x0004) |
Definition at line 120 of file bigdecimal.h.
Referenced by AddExponent(), BigDecimal_mode(), BigDecimal_to_f(), Init_bigdecimal(), and VpException().
| #define VP_EXCEPTION_ZERODIVIDE ((unsigned short)0x0010) |
Definition at line 122 of file bigdecimal.h.
Referenced by BigDecimal_mode(), Init_bigdecimal(), VpDivd(), and VpException().
| #define VP_EXPORT static |
Definition at line 114 of file bigdecimal.h.
| #define VP_ROUND_CEIL 5 |
Definition at line 136 of file bigdecimal.h.
Referenced by BigDecimal_ceil(), check_rounding_mode(), Init_bigdecimal(), VpInternalRound(), VpIsRoundMode(), and VpMidRound().
| #define VP_ROUND_DOWN 2 |
Definition at line 133 of file bigdecimal.h.
Referenced by BigDecimal_divremain(), BigDecimal_DoDivmod(), BigDecimal_fix(), BigDecimal_truncate(), check_rounding_mode(), Init_bigdecimal(), VpInternalRound(), VpIsRoundMode(), and VpMidRound().
| #define VP_ROUND_FLOOR 6 |
Definition at line 137 of file bigdecimal.h.
Referenced by BigDecimal_floor(), check_rounding_mode(), Init_bigdecimal(), VpInternalRound(), VpIsRoundMode(), and VpMidRound().
| #define VP_ROUND_HALF_DOWN 4 |
Definition at line 135 of file bigdecimal.h.
Referenced by check_rounding_mode(), Init_bigdecimal(), VpInternalRound(), VpIsRoundMode(), and VpMidRound().
| #define VP_ROUND_HALF_EVEN 7 |
Definition at line 138 of file bigdecimal.h.
Referenced by check_rounding_mode(), Init_bigdecimal(), VpInternalRound(), VpIsRoundMode(), and VpMidRound().
| #define VP_ROUND_HALF_UP 3 |
Definition at line 134 of file bigdecimal.h.
Referenced by check_rounding_mode(), Init_bigdecimal(), VpInternalRound(), VpIsRoundMode(), and VpMidRound().
| #define VP_ROUND_MODE ((unsigned short)0x0100) |
Definition at line 131 of file bigdecimal.h.
Referenced by BigDecimal_mode(), and Init_bigdecimal().
| #define VP_ROUND_UP 1 |
Definition at line 132 of file bigdecimal.h.
Referenced by check_rounding_mode(), Init_bigdecimal(), VpInternalRound(), VpIsRoundMode(), and VpMidRound().
| #define VP_SIGN_NaN 0 |
Definition at line 142 of file bigdecimal.h.
Referenced by Init_bigdecimal().
| #define VP_SIGN_NEGATIVE_FINITE -2 |
Definition at line 146 of file bigdecimal.h.
Referenced by Init_bigdecimal().
| #define VP_SIGN_NEGATIVE_INFINITE -3 |
Definition at line 148 of file bigdecimal.h.
Referenced by Init_bigdecimal().
| #define VP_SIGN_NEGATIVE_ZERO -1 |
Definition at line 144 of file bigdecimal.h.
Referenced by Init_bigdecimal().
| #define VP_SIGN_POSITIVE_FINITE 2 |
Definition at line 145 of file bigdecimal.h.
Referenced by Init_bigdecimal().
| #define VP_SIGN_POSITIVE_INFINITE 3 |
Definition at line 147 of file bigdecimal.h.
Referenced by BigMath_s_exp(), BigMath_s_log(), and Init_bigdecimal().
| #define VP_SIGN_POSITIVE_ZERO 1 |
Definition at line 143 of file bigdecimal.h.
Referenced by Init_bigdecimal().
| #define VpBaseFig | ( | ) | rmpd_component_figures() |
Definition at line 201 of file bigdecimal.h.
Referenced by BigDecimal_abs(), BigDecimal_add(), BigDecimal_ceil(), BigDecimal_coerce(), BigDecimal_div2(), BigDecimal_divide(), BigDecimal_divremain(), BigDecimal_DoDivmod(), BigDecimal_dump(), BigDecimal_fix(), BigDecimal_floor(), BigDecimal_frac(), BigDecimal_inspect(), BigDecimal_load(), BigDecimal_mult(), BigDecimal_neg(), BigDecimal_power(), BigDecimal_prec(), BigDecimal_round(), BigDecimal_sqrt(), BigDecimal_sub(), BigDecimal_to_i(), BigDecimal_truncate(), BigDecimalCmp(), and GetVpValueWithPrec().
| #define VpBaseVal | ( | ) | rmpd_base_value() |
Definition at line 203 of file bigdecimal.h.
Referenced by BigDecimal_div(), and Init_bigdecimal().
| #define VpChangeSign | ( | a, | |||
| s | ) | {if((s)>0) (a)->sign=(short)Abs((ssize_t)(a)->sign);else (a)->sign=-(short)Abs((ssize_t)(a)->sign);} |
Definition at line 274 of file bigdecimal.h.
Referenced by BigDecimal_abs(), and VpSqrt().
| #define VpDblFig | ( | ) | rmpd_double_figures() |
Definition at line 202 of file bigdecimal.h.
Referenced by BigDecimal_double_fig(), and BigDecimal_sqrt().
| #define VpExponent | ( | a | ) | (a->exponent) |
Definition at line 303 of file bigdecimal.h.
Referenced by VpLeftRound().
| #define VpGetFlag | ( | a | ) | ((a)->flag) |
Definition at line 267 of file bigdecimal.h.
| #define VpGetSign | ( | a | ) | (((a)->sign>0)?1:(-1)) |
Definition at line 272 of file bigdecimal.h.
Referenced by AddExponent(), BigDecimal_add(), BigDecimal_DoDivmod(), BigDecimal_power(), BigDecimal_sub(), BigDecimal_to_i(), BigDecimal_to_r(), BigMath_s_exp(), BigMath_s_log(), VpAddSub(), VpAsgn(), VpComp(), VpDivd(), VpFrac(), VpInternalRound(), VpIsDefOP(), VpMidRound(), VpMult(), VpNmlz(), VpPower(), VpSqrt(), VpSzMantissa(), VpToFString(), VpToString(), and VpVtoD().
| #define VpHasVal | ( | a | ) | (a->frac[0]) |
Definition at line 301 of file bigdecimal.h.
Referenced by BigDecimal_div(), VpExponent10(), VpFrac(), VpLeftRound(), and VpSqrt().
| #define VpIsDef | ( | a | ) | ( !(VpIsNaN(a)||VpIsInf(a)) ) |
Definition at line 297 of file bigdecimal.h.
Referenced by BigDecimal_power(), GetAddSubPrec(), VpComp(), VpNmlz(), and VpNumOfChars().
| #define VpIsInf | ( | a | ) | (VpIsPosInf(a) || VpIsNegInf(a)) |
Definition at line 296 of file bigdecimal.h.
Referenced by BigDecimal_DoDivmod(), BigDecimal_IsFinite(), BigDecimal_power(), VpAsgn(), VpIsDefOP(), and VpPower().
| #define VpIsNaN | ( | a | ) | ((a)->sign==VP_SIGN_NaN) |
Definition at line 290 of file bigdecimal.h.
Referenced by BigDecimal_add(), BigDecimal_check_num(), BigDecimal_DoDivmod(), BigDecimal_IsFinite(), BigDecimal_IsNaN(), BigDecimal_power(), BigDecimal_sub(), BigMath_s_exp(), BigMath_s_log(), ToValue(), VpAsgn(), VpComp(), VpIsDefOP(), VpPower(), VpSzMantissa(), VpToSpecialString(), and VpVtoD().
| #define VpIsNegInf | ( | a | ) | ((a)->sign==VP_SIGN_NEGATIVE_INFINITE) |
Definition at line 295 of file bigdecimal.h.
Referenced by BigDecimal_check_num(), BigDecimal_IsInfinite(), BigMath_s_exp(), BigMath_s_log(), ToValue(), VpSzMantissa(), VpToSpecialString(), and VpVtoD().
| #define VpIsNegZero | ( | a | ) | ((a)->sign==VP_SIGN_NEGATIVE_ZERO) |
Definition at line 283 of file bigdecimal.h.
Referenced by VpVtoD().
| #define VpIsOne | ( | a | ) | ((a->Prec==1)&&(a->frac[0]==1)&&(a->exponent==1)) |
Definition at line 302 of file bigdecimal.h.
| #define VpIsPosInf | ( | a | ) | ((a)->sign==VP_SIGN_POSITIVE_INFINITE) |
Definition at line 294 of file bigdecimal.h.
Referenced by BigDecimal_check_num(), BigDecimal_IsInfinite(), BigMath_s_exp(), BigMath_s_log(), ToValue(), VpPower(), VpSzMantissa(), VpToSpecialString(), and VpVtoD().
| #define VpIsPosZero | ( | a | ) | ((a)->sign==VP_SIGN_POSITIVE_ZERO) |
Definition at line 282 of file bigdecimal.h.
Referenced by VpSzMantissa(), VpToSpecialString(), and VpVtoD().
| #define VpIsZero | ( | a | ) | (VpIsPosZero(a) || VpIsNegZero(a)) |
Definition at line 284 of file bigdecimal.h.
Referenced by BigDecimal_DoDivmod(), BigDecimal_nonzero(), BigDecimal_power(), BigDecimal_zero(), BigMath_s_exp(), BigMath_s_log(), rmpd_power_by_big_decimal(), VpAddSub(), VpAsgn(), VpComp(), VpDivd(), VpIsDefOP(), VpMult(), VpNmlz(), VpPower(), VpSqrt(), VpSzMantissa(), and VpToSpecialString().
| #define VpMaxPrec | ( | a | ) | ((a)->MaxPrec) |
Definition at line 265 of file bigdecimal.h.
Referenced by BigDecimal_dump(), and BigDecimal_inspect().
| #define VpPrec | ( | a | ) | ((a)->Prec) |
Definition at line 266 of file bigdecimal.h.
Referenced by BigDecimal_inspect().
| #define VpSetInf | ( | a, | |||
| s | ) | ( ((s)>0)?VpSetPosInf(a):VpSetNegInf(a) ) |
Definition at line 300 of file bigdecimal.h.
Referenced by AddExponent(), BigDecimal_add(), BigDecimal_DoDivmod(), BigDecimal_power(), BigDecimal_sub(), BigMath_s_exp(), BigMath_s_log(), VpAsgn(), VpCtoV(), VpDivd(), VpIsDefOP(), and VpPower().
| #define VpSetNaN | ( | a | ) | ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_NaN) |
Definition at line 291 of file bigdecimal.h.
Referenced by BigDecimal_power(), BigMath_s_exp(), BigMath_s_log(), VpAlloc(), VpAsgn(), VpDivd(), VpDtoV(), VpIsDefOP(), VpPower(), and VpSqrt().
| #define VpSetNegInf | ( | a | ) | ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_NEGATIVE_INFINITE) |
Definition at line 299 of file bigdecimal.h.
Referenced by BigDecimal_power(), VpAlloc(), and VpDtoV().
| #define VpSetNegZero | ( | a | ) | ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_NEGATIVE_ZERO) |
Definition at line 286 of file bigdecimal.h.
| #define VpSetOne | ( | a | ) | {(a)->Prec=(a)->exponent=(a)->frac[0]=1;(a)->sign=VP_SIGN_POSITIVE_FINITE;} |
Definition at line 279 of file bigdecimal.h.
Referenced by VpMidRound(), VpPower(), and VpSqrt().
| #define VpSetPosInf | ( | a | ) | ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_POSITIVE_INFINITE) |
Definition at line 298 of file bigdecimal.h.
Referenced by BigDecimal_power(), VpAlloc(), and VpDtoV().
| #define VpSetPosZero | ( | a | ) | ((a)->frac[0]=0,(a)->Prec=1,(a)->sign=VP_SIGN_POSITIVE_ZERO) |
Definition at line 285 of file bigdecimal.h.
| #define VpSetSign | ( | a, | |||
| s | ) | {if((s)>0) (a)->sign=(short)VP_SIGN_POSITIVE_FINITE;else (a)->sign=(short)VP_SIGN_NEGATIVE_FINITE;} |
Definition at line 276 of file bigdecimal.h.
Referenced by BigMath_s_exp(), VpAddSub(), VpAsgn(), VpCtoV(), VpDivd(), VpDtoV(), VpFrac(), VpMidRound(), VpMult(), and VpPower().
| #define VpSetZero | ( | a, | |||
| s | ) | ( ((s)>0)?VpSetPosZero(a):VpSetNegZero(a) ) |
Definition at line 287 of file bigdecimal.h.
Referenced by AddExponent(), VpAddSub(), VpAlloc(), VpAsgn(), VpCtoV(), VpDivd(), VpDtoV(), VpFrac(), VpIsDefOP(), VpMidRound(), VpMult(), VpNmlz(), and VpPower().
| static long labs | ( | long const | x | ) | [inline, static] |
Definition at line 55 of file bigdecimal.h.
Referenced by ossl_bn_initialize().
| static LONG_LONG llabs | ( | LONG_LONG const | x | ) | [inline, static] |
Definition at line 64 of file bigdecimal.h.
| static BDIGIT rmpd_base_value | ( | void | ) | [inline, static] |
Definition at line 195 of file bigdecimal.h.
References RMPD_BASE.
| static size_t rmpd_component_figures | ( | void | ) | [inline, static] |
Definition at line 197 of file bigdecimal.h.
References RMPD_COMPONENT_FIGURES.
| static size_t rmpd_double_figures | ( | void | ) | [inline, static] |
Definition at line 199 of file bigdecimal.h.
References DBL_DIG.
Referenced by BigMath_s_exp(), BigMath_s_log(), and VpInit().
Definition at line 5965 of file bigdecimal.c.
References VpAsgn(), and VpMidRound().
Referenced by BigDecimal_ceil(), BigDecimal_divremain(), BigDecimal_DoDivmod(), BigDecimal_fix(), BigDecimal_floor(), BigDecimal_round(), and BigDecimal_truncate().
Definition at line 4038 of file bigdecimal.c.
References BASE_FIG, BDIGIT, Real::exponent, Real::frac, Min, Real::Prec, VpAddAbs(), VpAsgn(), VpGetSign, VpInternalRound(), VpIsDefOP(), VpIsZero, VpSetSign, VpSetZero, and VpSubAbs().
Referenced by BigDecimal_add(), BigDecimal_divremain(), BigDecimal_DoDivmod(), BigDecimal_sub(), and VpSqrt().
| VP_EXPORT Real* VpAlloc | ( | size_t | mx, | |
| const char * | szVal | |||
| ) |
Definition at line 3837 of file bigdecimal.c.
References BASE_FIG, buf, ISDIGIT, ISSPACE, Max, Real::MaxPrec, ne, NULL, rb_str_resize(), rb_str_tmp_new(), RSTRING_PTR, StrCmp, strlen(), SZ_INF, SZ_NaN, SZ_NINF, SZ_PINF, VpAllocReal, VpCtoV(), VpGetPrecLimit(), VpSetNaN, VpSetNegInf, VpSetPosInf, and VpSetZero.
Referenced by BigDecimal_new(), VpCreateRbObject(), VpInit(), VpMult(), VpNewRbClass(), VpPower(), and VpSqrt().
Definition at line 3994 of file bigdecimal.c.
References BASE_FIG, BDIGIT, Real::exponent, Real::frac, Real::MaxPrec, Real::Prec, VpGetSign, VpInternalRound(), VpIsInf, VpIsNaN, VpIsZero, VpLimitRound(), VpSetInf, VpSetNaN, VpSetSign, and VpSetZero.
Referenced by BigDecimal_abs(), BigDecimal_neg(), VpActiveRound(), VpAddAbs(), VpAddSub(), VpDivd(), VpFrac(), VpMult(), VpPower(), VpSqrt(), and VpSubAbs().
Definition at line 4875 of file bigdecimal.c.
References Real::exponent, Real::frac, Real::Prec, Real::sign, val, VpGetSign, VpIsDef, VpIsNaN, and VpIsZero.
Referenced by BigDecimalCmp().
| VP_EXPORT Real* VpCreateRbObject | ( | size_t | mx, | |
| const char * | str | |||
| ) |
Definition at line 572 of file bigdecimal.c.
References BigDecimal_data_type, Real::obj, rb_cBigDecimal, TypedData_Wrap_Struct, and VpAlloc().
Referenced by BigDecimal_abs(), BigDecimal_add(), BigDecimal_ceil(), BigDecimal_div2(), BigDecimal_divide(), BigDecimal_divremain(), BigDecimal_DoDivmod(), BigDecimal_fix(), BigDecimal_floor(), BigDecimal_frac(), BigDecimal_mult(), BigDecimal_neg(), BigDecimal_power(), BigDecimal_round(), BigDecimal_sqrt(), BigDecimal_sub(), BigDecimal_truncate(), BigMath_s_exp(), BigMath_s_log(), GetVpValueWithPrec(), and rmpd_power_by_big_decimal().
| VP_EXPORT int VpCtoV | ( | Real * | a, | |
| const char * | int_chr, | |||
| size_t | ni, | |||
| const char * | frac, | |||
| size_t | nf, | |||
| const char * | exp_chr, | |||
| size_t | ne | |||
| ) |
Definition at line 5319 of file bigdecimal.c.
References BASE_FIG, BDIGIT, Real::exponent, Real::frac, Real::MaxPrec, MUL_OVERFLOW_SIGNED_VALUE_P, Real::Prec, rb_warn(), SIGNED_VALUE, SIGNED_VALUE_MAX, VP_EXCEPTION_INFINITY, VpException(), VpNmlz(), VpSetInf, VpSetSign, VpSetZero, and zero().
Referenced by VpAlloc().
Definition at line 4622 of file bigdecimal.c.
References AddExponent(), BASE, BASE_FIG, BDIGIT, BDIGIT_DBL, Real::exponent, Real::frac, if(), Real::MaxPrec, Min, Real::Prec, rb_bug(), VP_EXCEPTION_NaN, VP_EXCEPTION_ZERODIVIDE, VpAsgn(), VpException(), VpGetSign, VpIsDefOP(), VpIsOne, VpIsZero, VpNmlz(), VpSetInf, VpSetNaN, VpSetSign, and VpSetZero.
Referenced by BigDecimal_div2(), BigDecimal_divide(), BigDecimal_divremain(), BigDecimal_DoDivmod(), VpPower(), and VpSqrt().
| VP_EXPORT void VpDtoV | ( | Real * | m, | |
| double | d | |||
| ) |
Definition at line 5543 of file bigdecimal.c.
References BASE, BDIGIT, Real::exponent, Real::frac, isinf(), isnan, Real::MaxPrec, ne, Real::Prec, SIGNED_VALUE, val, VpInternalRound(), VpSetNaN, VpSetNegInf, VpSetPosInf, VpSetSign, and VpSetZero.
Referenced by VpSqrt().
| VP_EXPORT int VpException | ( | unsigned short | f, | |
| const char * | str, | |||
| int | always | |||
| ) |
Definition at line 3582 of file bigdecimal.c.
References rb_eFloatDomainError, rb_fatal(), rb_raise(), VP_EXCEPTION_INFINITY, VP_EXCEPTION_MEMORY, VP_EXCEPTION_NaN, VP_EXCEPTION_OP, VP_EXCEPTION_UNDERFLOW, VP_EXCEPTION_ZERODIVIDE, and VpGetException().
Referenced by AddExponent(), BigDecimal_check_num(), BigDecimal_to_f(), GetAddSubPrec(), ToValue(), VpCtoV(), VpDivd(), VpIsDefOP(), VpMemAlloc(), VpMemRealloc(), and VpSqrt().
| VP_EXPORT ssize_t VpExponent10 | ( | Real * | a | ) |
Definition at line 5106 of file bigdecimal.c.
References BASE1, BASE_FIG, Real::exponent, Real::frac, and VpHasVal.
Referenced by BigDecimal_exponent(), BigDecimal_split(), BigDecimal_to_i(), BigDecimal_to_r(), BigMath_s_exp(), and BigMath_s_log().
Definition at line 6060 of file bigdecimal.c.
References Real::exponent, Real::frac, Real::MaxPrec, Min, Real::Prec, VpAsgn(), VpGetSign, VpHasVal, VpNmlz(), VpSetSign, and VpSetZero.
Referenced by BigDecimal_divremain(), and BigDecimal_frac().
| VP_EXPORT void VpFree | ( | Real * | pv | ) |
Definition at line 3360 of file bigdecimal.c.
References getchar, NULL, and xfree.
Referenced by BigDecimal_delete(), BigDecimal_initialize(), VpMult(), VpPower(), and VpSqrt().
| VP_EXPORT double VpGetDoubleNaN | ( | void | ) |
Definition at line 3541 of file bigdecimal.c.
References Zero().
| VP_EXPORT double VpGetDoubleNegInf | ( | void | ) |
Definition at line 3557 of file bigdecimal.c.
Referenced by BigDecimal_to_f(), VpGetDoubleNegZero(), VpInit(), and VpVtoD().
| VP_EXPORT double VpGetDoubleNegZero | ( | void | ) |
Definition at line 3565 of file bigdecimal.c.
References One(), and VpGetDoubleNegInf().
| VP_EXPORT double VpGetDoublePosInf | ( | void | ) |
Definition at line 3549 of file bigdecimal.c.
Referenced by BigDecimal_to_f(), VpInit(), and VpVtoD().
| VP_EXPORT size_t VpGetPrecLimit | ( | void | ) |
Definition at line 3425 of file bigdecimal.c.
References id_BigDecimal_precision_limit, NIL_P, NUM2SIZET, rb_thread_current(), rb_thread_local_aref(), RMPD_PRECISION_LIMIT_DEFAULT, and rmpd_set_thread_local_precision_limit.
Referenced by BigDecimal_limit(), BigDecimal_save_limit(), VpAlloc(), VpLimitRound(), VpSetPrecLimit(), and VpSetPTR().
| VP_EXPORT unsigned short VpGetRoundMode | ( | void | ) |
Definition at line 3460 of file bigdecimal.c.
References FIX2INT, id_BigDecimal_rounding_mode, NIL_P, rb_thread_current(), rb_thread_local_aref(), RMPD_ROUNDING_MODE_DEFAULT, and rmpd_set_thread_local_rounding_mode.
Referenced by BigDecimal_add2(), BigDecimal_div2(), BigDecimal_mode(), BigDecimal_mult2(), BigDecimal_power(), BigDecimal_round(), BigDecimal_save_rounding_mode(), BigDecimal_sub2(), VpInternalRound(), VpLimitRound(), and VpSetRoundMode().
| VP_EXPORT size_t VpInit | ( | BDIGIT | BaseVal | ) |
Definition at line 3749 of file bigdecimal.c.
References BASE, BASE1, BASE_FIG, DBLE_FIG, HALF_BASE, rmpd_double_figures(), VpAlloc(), VpGetDoubleNaN(), VpGetDoubleNegInf(), VpGetDoubleNegZero(), and VpGetDoublePosInf().
Referenced by Init_bigdecimal().
| VP_EXPORT int VpIsRoundMode | ( | unsigned short | n | ) |
Definition at line 3476 of file bigdecimal.c.
References VP_ROUND_CEIL, VP_ROUND_DOWN, VP_ROUND_FLOOR, VP_ROUND_HALF_DOWN, VP_ROUND_HALF_EVEN, VP_ROUND_HALF_UP, and VP_ROUND_UP.
Referenced by check_rounding_mode(), and VpSetRoundMode().
| VP_EXPORT int VpLeftRound | ( | Real * | y, | |
| unsigned short | f, | |||
| ssize_t | nf | |||
| ) |
Definition at line 5950 of file bigdecimal.c.
References BASE_FIG, BDIGIT, Real::frac, VpExponent, VpHasVal, and VpMidRound().
Referenced by BigDecimal_add2(), BigDecimal_div2(), BigDecimal_mult2(), BigDecimal_sub2(), and VpLimitRound().
| VP_EXPORT void* VpMemAlloc | ( | size_t | mb | ) |
Definition at line 3336 of file bigdecimal.c.
References VP_EXCEPTION_MEMORY, VpException(), and xmalloc.
| VP_EXPORT void* VpMemRealloc | ( | void * | ptr, | |
| size_t | mb | |||
| ) |
Definition at line 3350 of file bigdecimal.c.
References VP_EXCEPTION_MEMORY, VpException(), and xrealloc.
| VP_EXPORT int VpMidRound | ( | Real * | y, | |
| unsigned short | f, | |||
| ssize_t | nf | |||
| ) |
Definition at line 5783 of file bigdecimal.c.
References BASE, BASE_FIG, BDIGIT, div, Real::exponent, Real::frac, Real::Prec, SIGNED_VALUE, VP_ROUND_CEIL, VP_ROUND_DOWN, VP_ROUND_FLOOR, VP_ROUND_HALF_DOWN, VP_ROUND_HALF_EVEN, VP_ROUND_HALF_UP, VP_ROUND_UP, VpGetSign, VpNmlz(), VpRdup(), VpSetOne, VpSetSign, and VpSetZero.
Referenced by BigDecimal_power(), VpActiveRound(), and VpLeftRound().
Definition at line 4493 of file bigdecimal.c.
References AddExponent(), BASE, BASE_FIG, BDIGIT, BDIGIT_DBL, Real::exponent, Real::frac, Real::MaxPrec, NULL, Real::Prec, VpAlloc(), VpAsgn(), VpFree(), VpGetSign, VpIsDefOP(), VpIsOne, VpIsZero, VpLimitRound(), VpNmlz(), VpSetSign, and VpSetZero.
Referenced by BigDecimal_divremain(), BigDecimal_DoDivmod(), BigDecimal_mult(), VpPower(), and VpSqrt().
| VP_EXPORT Real* VpNewRbClass | ( | size_t | mx, | |
| char const * | str, | |||
| VALUE | klass | |||
| ) |
Definition at line 564 of file bigdecimal.c.
References BigDecimal_data_type, Real::obj, TypedData_Wrap_Struct, and VpAlloc().
Referenced by BigDecimal_load(), and BigDecimal_s_allocate().
| VP_EXPORT size_t VpNumOfChars | ( | Real * | vp, | |
| const char * | pszFmt | |||
| ) |
Definition at line 3705 of file bigdecimal.c.
References BASE_FIG, Real::exponent, NULL, Real::Prec, SIGNED_VALUE, and VpIsDef.
Referenced by BigDecimal_dump(), BigDecimal_inspect(), BigDecimal_split(), BigDecimal_to_f(), and BigDecimal_to_s().
| VP_EXPORT Real* VpOne | ( | void | ) |
Definition at line 3780 of file bigdecimal.c.
Referenced by BigDecimal_DoDivmod().
Definition at line 6108 of file bigdecimal.c.
References BASE_FIG, Real::exponent, Real::frac, Real::MaxPrec, NULL, Real::Prec, SIGNED_VALUE, VpAlloc(), VpAsgn(), VpDivd(), VpFree(), VpGetSign, VpIsInf, VpIsNaN, VpIsPosInf, VpIsZero, VpMult(), VpSetInf, VpSetNaN, VpSetOne, VpSetSign, and VpSetZero.
Referenced by BigDecimal_power().
| VP_EXPORT size_t VpSetPrecLimit | ( | size_t | n | ) |
Definition at line 3441 of file bigdecimal.c.
References rmpd_set_thread_local_precision_limit, and VpGetPrecLimit().
Referenced by BigDecimal_add2(), BigDecimal_ceil(), BigDecimal_div2(), BigDecimal_floor(), BigDecimal_limit(), BigDecimal_mult2(), BigDecimal_round(), BigDecimal_save_limit(), BigDecimal_sub2(), and BigDecimal_truncate().
| VP_EXPORT unsigned short VpSetRoundMode | ( | unsigned short | n | ) |
Definition at line 3494 of file bigdecimal.c.
References rmpd_set_thread_local_rounding_mode, VpGetRoundMode(), and VpIsRoundMode().
Referenced by BigDecimal_mode(), and BigDecimal_save_rounding_mode().
Definition at line 5675 of file bigdecimal.c.
References BASE, BASE_FIG, DBLE_FIG, Real::exponent, f, if(), maxnr, Real::MaxPrec, Min, NULL, PRIdSIZE, SIGNED_VALUE, VP_EXCEPTION_OP, VpAddSub(), VpAlloc(), VpAsgn(), VpChangeSign, VpDivd(), VpDtoV(), VpException(), VpFree(), VpGetSign, VpHasVal, VpIsOne, VpIsZero, VpMult(), VpSetNaN, VpSetOne, and VpVtoD().
Referenced by BigDecimal_sqrt().
| VP_EXPORT void VpSzMantissa | ( | Real * | a, | |
| char * | psz | |||
| ) |
Definition at line 5123 of file bigdecimal.c.
References BASE1, BDIGIT_DBL, Real::frac, Real::Prec, strlen(), SZ_INF, SZ_NaN, SZ_NINF, VpGetSign, VpIsNaN, VpIsNegInf, VpIsPosInf, VpIsPosZero, and VpIsZero.
Referenced by BigDecimal_split().
| VP_EXPORT void VpToFString | ( | Real * | a, | |
| char * | psz, | |||
| size_t | fFmt, | |||
| int | fPlus | |||
| ) |
Definition at line 5253 of file bigdecimal.c.
References BASE, BASE1, BASE_FIG, BDIGIT, Real::exponent, Real::frac, Real::Prec, strlen(), VpFormatSt(), VpGetSign, and VpToSpecialString().
Referenced by BigDecimal_to_s().
| VP_EXPORT int VpToSpecialString | ( | Real * | a, | |
| char * | psz, | |||
| int | fPlus | |||
| ) |
Definition at line 5170 of file bigdecimal.c.
References SZ_INF, SZ_NaN, SZ_NINF, VpIsNaN, VpIsNegInf, VpIsPosInf, VpIsPosZero, and VpIsZero.
Referenced by VpToFString(), and VpToString().
| VP_EXPORT void VpToString | ( | Real * | a, | |
| char * | psz, | |||
| size_t | fFmt, | |||
| int | fPlus | |||
| ) |
Definition at line 5205 of file bigdecimal.c.
References BASE1, BASE_FIG, BDIGIT, Real::exponent, Real::frac, Real::Prec, PRIdSIZE, shift(), strlen(), VpFormatSt(), VpGetSign, and VpToSpecialString().
Referenced by BigDecimal_dump(), BigDecimal_inspect(), BigDecimal_to_f(), and BigDecimal_to_s().
| VP_EXPORT int VpVtoD | ( | double * | d, | |
| SIGNED_VALUE * | e, | |||
| Real * | m | |||
| ) |
Definition at line 5479 of file bigdecimal.c.
References BASE, BASE_FIG, DBLE_FIG, div, Real::exponent, f, Real::frac, Min, Real::Prec, SIGNED_VALUE, VpGetDoubleNaN(), VpGetDoubleNegInf(), VpGetDoubleNegZero(), VpGetDoublePosInf(), VpGetSign, VpIsNaN, VpIsNegInf, VpIsNegZero, VpIsPosInf, and VpIsPosZero.
Referenced by BigDecimal_to_f(), and VpSqrt().
| VALUE rb_cBigDecimal |
Definition at line 44 of file bigdecimal.c.
Referenced by BigDecimal_global_new(), Init_bigdecimal(), and VpCreateRbObject().
1.6.1