1 module deimos.gmp.floating; 2 3 import core.stdc.stdio : FILE; 4 import core.stdc.config : c_long, c_ulong; 5 6 import deimos.gmp.gmp; 7 8 extern (C) nothrow: 9 10 /**************** Float (i.e. F) routines. ****************/ 11 12 alias mpf_abs = __gmpf_abs; 13 extern (C) void __gmpf_abs (mpf_ptr, mpf_srcptr); 14 15 alias mpf_add = __gmpf_add; 16 extern (C) void __gmpf_add (mpf_ptr, mpf_srcptr, mpf_srcptr); 17 18 alias mpf_add_ui = __gmpf_add_ui; 19 extern (C) void __gmpf_add_ui (mpf_ptr, mpf_srcptr, c_ulong); 20 21 alias mpf_ceil = __gmpf_ceil; 22 extern (C) void __gmpf_ceil (mpf_ptr, mpf_srcptr); 23 24 alias mpf_clear = __gmpf_clear; 25 extern (C) void __gmpf_clear (mpf_ptr); 26 27 alias mpf_clears = __gmpf_clears; 28 extern (C) void __gmpf_clears (mpf_ptr, ...); 29 30 alias mpf_cmp = __gmpf_cmp; 31 extern (C) int __gmpf_cmp (mpf_srcptr, mpf_srcptr) nothrow pure; 32 33 alias mpf_cmp_z = __gmpf_cmp_z; 34 extern (C) int __gmpf_cmp_z (mpf_srcptr, mpz_srcptr) nothrow pure; 35 36 alias mpf_cmp_d = __gmpf_cmp_d; 37 extern (C) int __gmpf_cmp_d (mpf_srcptr, double) pure; 38 39 alias mpf_cmp_si = __gmpf_cmp_si; 40 extern (C) int __gmpf_cmp_si (mpf_srcptr, c_long) nothrow pure; 41 42 alias mpf_cmp_ui = __gmpf_cmp_ui; 43 extern (C) int __gmpf_cmp_ui (mpf_srcptr, c_ulong) nothrow pure; 44 45 alias mpf_div = __gmpf_div; 46 extern (C) void __gmpf_div (mpf_ptr, mpf_srcptr, mpf_srcptr); 47 48 alias mpf_div_2exp = __gmpf_div_2exp; 49 extern (C) void __gmpf_div_2exp (mpf_ptr, mpf_srcptr, mp_bitcnt_t); 50 51 alias mpf_div_ui = __gmpf_div_ui; 52 extern (C) void __gmpf_div_ui (mpf_ptr, mpf_srcptr, c_ulong); 53 54 alias mpf_dump = __gmpf_dump; 55 extern (C) void __gmpf_dump (mpf_srcptr); 56 57 alias mpf_eq = __gmpf_eq; 58 extern (C) int __gmpf_eq (mpf_srcptr, mpf_srcptr, mp_bitcnt_t) pure; 59 60 alias mpf_fits_sint_p = __gmpf_fits_sint_p; 61 extern (C) int __gmpf_fits_sint_p (mpf_srcptr) nothrow pure; 62 63 alias mpf_fits_slong_p = __gmpf_fits_slong_p; 64 extern (C) int __gmpf_fits_slong_p (mpf_srcptr) nothrow pure; 65 66 alias mpf_fits_sshort_p = __gmpf_fits_sshort_p; 67 extern (C) int __gmpf_fits_sshort_p (mpf_srcptr) nothrow pure; 68 69 alias mpf_fits_uint_p = __gmpf_fits_uint_p; 70 extern (C) int __gmpf_fits_uint_p (mpf_srcptr) nothrow pure; 71 72 alias mpf_fits_c_ulong_p = __gmpf_fits_c_ulong_p; 73 extern (C) int __gmpf_fits_c_ulong_p (mpf_srcptr) nothrow pure; 74 75 alias mpf_fits_ushort_p = __gmpf_fits_ushort_p; 76 extern (C) int __gmpf_fits_ushort_p (mpf_srcptr) nothrow pure; 77 78 alias mpf_floor = __gmpf_floor; 79 extern (C) void __gmpf_floor (mpf_ptr, mpf_srcptr); 80 81 alias mpf_get_d = __gmpf_get_d; 82 extern (C) double __gmpf_get_d (mpf_srcptr) pure; 83 84 alias mpf_get_d_2exp = __gmpf_get_d_2exp; 85 extern (C) double __gmpf_get_d_2exp (c_long *, mpf_srcptr); 86 87 alias mpf_get_default_prec = __gmpf_get_default_prec; 88 extern (C) mp_bitcnt_t __gmpf_get_default_prec () nothrow pure; 89 90 alias mpf_get_prec = __gmpf_get_prec; 91 extern (C) mp_bitcnt_t __gmpf_get_prec (mpf_srcptr) nothrow pure; 92 93 alias mpf_get_si = __gmpf_get_si; 94 extern (C) c_long __gmpf_get_si (mpf_srcptr) nothrow pure; 95 96 alias mpf_get_str = __gmpf_get_str; 97 extern (C) char *__gmpf_get_str (char *, mp_exp_t *, int, size_t, mpf_srcptr); 98 99 alias mpf_get_ui = __gmpf_get_ui; 100 extern (C) c_ulong __gmpf_get_ui (mpf_srcptr) nothrow pure; 101 102 alias mpf_init = __gmpf_init; 103 extern (C) void __gmpf_init (mpf_ptr); 104 105 alias mpf_init2 = __gmpf_init2; 106 extern (C) void __gmpf_init2 (mpf_ptr, mp_bitcnt_t); 107 108 alias mpf_inits = __gmpf_inits; 109 extern (C) void __gmpf_inits (mpf_ptr, ...); 110 111 alias mpf_init_set = __gmpf_init_set; 112 extern (C) void __gmpf_init_set (mpf_ptr, mpf_srcptr); 113 114 alias mpf_init_set_d = __gmpf_init_set_d; 115 extern (C) void __gmpf_init_set_d (mpf_ptr, double); 116 117 alias mpf_init_set_si = __gmpf_init_set_si; 118 extern (C) void __gmpf_init_set_si (mpf_ptr, c_long); 119 120 alias mpf_init_set_str = __gmpf_init_set_str; 121 extern (C) int __gmpf_init_set_str (mpf_ptr, const char *, int); 122 123 alias mpf_init_set_ui = __gmpf_init_set_ui; 124 extern (C) void __gmpf_init_set_ui (mpf_ptr, c_ulong); 125 126 alias mpf_inp_str = __gmpf_inp_str; 127 extern (C) size_t __gmpf_inp_str (mpf_ptr, FILE *, int); 128 129 alias mpf_integer_p = __gmpf_integer_p; 130 extern (C) int __gmpf_integer_p (mpf_srcptr) nothrow pure; 131 132 alias mpf_mul = __gmpf_mul; 133 extern (C) void __gmpf_mul (mpf_ptr, mpf_srcptr, mpf_srcptr); 134 135 alias mpf_mul_2exp = __gmpf_mul_2exp; 136 extern (C) void __gmpf_mul_2exp (mpf_ptr, mpf_srcptr, mp_bitcnt_t); 137 138 alias mpf_mul_ui = __gmpf_mul_ui; 139 extern (C) void __gmpf_mul_ui (mpf_ptr, mpf_srcptr, c_ulong); 140 141 alias mpf_neg = __gmpf_neg; 142 extern (C) void __gmpf_neg (mpf_ptr, mpf_srcptr); 143 144 alias mpf_out_str = __gmpf_out_str; 145 extern (C) size_t __gmpf_out_str (FILE *, int, size_t, mpf_srcptr); 146 147 alias mpf_pow_ui = __gmpf_pow_ui; 148 extern (C) void __gmpf_pow_ui (mpf_ptr, mpf_srcptr, c_ulong); 149 150 alias mpf_random2 = __gmpf_random2; 151 extern (C) void __gmpf_random2 (mpf_ptr, mp_size_t, mp_exp_t); 152 153 alias mpf_reldiff = __gmpf_reldiff; 154 extern (C) void __gmpf_reldiff (mpf_ptr, mpf_srcptr, mpf_srcptr); 155 156 alias mpf_set = __gmpf_set; 157 extern (C) void __gmpf_set (mpf_ptr, mpf_srcptr); 158 159 alias mpf_set_d = __gmpf_set_d; 160 extern (C) void __gmpf_set_d (mpf_ptr, double); 161 162 alias mpf_set_default_prec = __gmpf_set_default_prec; 163 extern (C) void __gmpf_set_default_prec (mp_bitcnt_t) nothrow; 164 165 alias mpf_set_prec = __gmpf_set_prec; 166 extern (C) void __gmpf_set_prec (mpf_ptr, mp_bitcnt_t); 167 168 alias mpf_set_prec_raw = __gmpf_set_prec_raw; 169 extern (C) void __gmpf_set_prec_raw (mpf_ptr, mp_bitcnt_t) nothrow; 170 171 alias mpf_set_q = __gmpf_set_q; 172 extern (C) void __gmpf_set_q (mpf_ptr, mpq_srcptr); 173 174 alias mpf_set_si = __gmpf_set_si; 175 extern (C) void __gmpf_set_si (mpf_ptr, c_long); 176 177 alias mpf_set_str = __gmpf_set_str; 178 extern (C) int __gmpf_set_str (mpf_ptr, const char *, int); 179 180 alias mpf_set_ui = __gmpf_set_ui; 181 extern (C) void __gmpf_set_ui (mpf_ptr, c_ulong); 182 183 alias mpf_set_z = __gmpf_set_z; 184 extern (C) void __gmpf_set_z (mpf_ptr, mpz_srcptr); 185 186 alias mpf_size = __gmpf_size; 187 extern (C) size_t __gmpf_size (mpf_srcptr) nothrow pure; 188 189 alias mpf_sqrt = __gmpf_sqrt; 190 extern (C) void __gmpf_sqrt (mpf_ptr, mpf_srcptr); 191 192 alias mpf_sqrt_ui = __gmpf_sqrt_ui; 193 extern (C) void __gmpf_sqrt_ui (mpf_ptr, c_ulong); 194 195 alias mpf_sub = __gmpf_sub; 196 extern (C) void __gmpf_sub (mpf_ptr, mpf_srcptr, mpf_srcptr); 197 198 alias mpf_sub_ui = __gmpf_sub_ui; 199 extern (C) void __gmpf_sub_ui (mpf_ptr, mpf_srcptr, c_ulong); 200 201 alias mpf_swap = __gmpf_swap; 202 extern (C) void __gmpf_swap (mpf_ptr, mpf_ptr) nothrow; 203 204 alias mpf_trunc = __gmpf_trunc; 205 extern (C) void __gmpf_trunc (mpf_ptr, mpf_srcptr); 206 207 alias mpf_ui_div = __gmpf_ui_div; 208 extern (C) void __gmpf_ui_div (mpf_ptr, c_ulong, mpf_srcptr); 209 210 alias mpf_ui_sub = __gmpf_ui_sub; 211 extern (C) void __gmpf_ui_sub (mpf_ptr, c_ulong, mpf_srcptr); 212 213 alias mpf_urandomb = __gmpf_urandomb; 214 extern (C) void __gmpf_urandomb (mpf_t, gmp_randstate_t, mp_bitcnt_t);