67 # ifdef OSL_GMP_IS_HERE
71 # if defined(__cplusplus)
82 #ifdef OSL_GMP_IS_HERE
111 void osl_int_swap(
int, osl_int_const_p, osl_int_const_p);
174 # if defined(__cplusplus)
void osl_int_print(FILE *, int, osl_const_int_t)
void osl_int_floor_div_r(int const, osl_int_const_p, osl_const_int_t, osl_const_int_t)
r = a - b * (a / b)
void osl_int_set_si(int, osl_int_const_p, int)
variable = i
union osl_int *const osl_int_const_p
void osl_int_decrement(int, osl_int_const_p, osl_const_int_t)
variable = value - 1
void osl_int_sprint_txt(char *, int, osl_const_int_t)
double osl_int_get_d(int, osl_const_int_t)
Get the value in a double.
void osl_int_clear(int, osl_int_const_p)
variable = 0 // including cleaning for GMP
void osl_int_init(int, osl_int_const_p)
Initialize the osl int.
int osl_int_neg(int, osl_const_int_t)
value < 0
void osl_int_add(int, osl_int_const_p, osl_const_int_t, osl_const_int_t)
variable = val1 + val2
union osl_int * osl_int_p
void osl_int_floor_div_q(int const, osl_int_const_p, osl_const_int_t, osl_const_int_t)
q = floor(a / b)
int osl_int_mone(int, osl_const_int_t)
value == -1
void osl_int_mul_si(int, osl_int_const_p, osl_const_int_t, int)
variable = val1 * i
union osl_int const osl_const_int_t
osl_int_p osl_int_malloc(int)
Initialize the osl int.
void osl_int_oppose(int, osl_int_const_p, osl_const_int_t)
variable = - value
union osl_int const * osl_const_int_p
void osl_int_gcd(int const, osl_int_const_p, osl_const_int_t, osl_const_int_t)
Compute the gcd (greatest common divisor) of a and b.
void osl_int_increment(int, osl_int_const_p, osl_const_int_t)
variable = value + 1
void osl_int_abs(int, osl_int_const_p, osl_const_int_t)
variable = | value |
void osl_int_mod(int const, osl_int_const_p, osl_const_int_t, osl_const_int_t)
mod = a % b
void osl_int_floor_div_q_r(int const, osl_int_const_p, osl_int_const_p, osl_const_int_t, osl_const_int_t)
Compute (q, r) such that a = b * q + r.
void osl_int_assign(int, osl_int_const_p, osl_const_int_t)
variable = value
int osl_int_eq(int, osl_const_int_t, osl_const_int_t)
val1 == val2
void osl_int_div_exact(int const, osl_int_const_p, osl_const_int_t, osl_const_int_t)
q = a / b
size_t osl_int_size_in_base_2(int const, osl_const_int_t)
Get the size in base 2.
void osl_int_sread(char **, int, osl_int_const_p)
sread for osl int
int osl_int_pos(int, osl_const_int_t)
value > 0
void osl_int_sprint(char *, int, osl_const_int_t)
int osl_int_sscanf(char *, int, osl_int_const_p)
sscanf for osl int
int osl_int_one(int, osl_const_int_t)
value == 1
void osl_int_init_set(int, osl_int_const_p, osl_const_int_t)
variable = i // including initialization for GMP
int osl_int_ne(int, osl_const_int_t, osl_const_int_t)
val1 != val2
void osl_int_mul(int, osl_int_const_p, osl_const_int_t, osl_const_int_t)
variable = val1 * val2
void osl_int_dump_precision(FILE *, int)
void osl_int_sub(int, osl_int_const_p, osl_const_int_t, osl_const_int_t)
variable = val1 - val2
int osl_int_zero(int, osl_const_int_t)
value == 0
int osl_int_get_si(int, osl_const_int_t)
Get the value in a int.
int osl_int_divisible(int, osl_const_int_t, osl_const_int_t)
(val1 % val2) == 0
union osl_int const *const osl_const_int_const_p
void osl_int_set_precision(int const, int const, osl_int_p)
Change the precision of the osl_int.
void osl_int_swap(int, osl_int_const_p, osl_int_const_p)
Swap the osl ints.
int osl_int_is_precision_supported(int)
void osl_int_init_set_si(int, osl_int_const_p, int)
variable = i // including initialization for GMP
void osl_int_free(int, osl_int_const_p)
Free thr osl int.
size_t osl_int_size_in_base_10(int const, osl_const_int_t)
Get the size in base 10.
void osl_int_add_si(int, osl_int_const_p, osl_const_int_t, int)
variable = val1 + i