[][src]Module gmp_mpfr_sys::mpc

Function and type bindings for the MPC library.

Examples

use gmp_mpfr_sys::mpc;
use gmp_mpfr_sys::mpfr;
use std::f64;
use std::mem::MaybeUninit;
let one_third = 1.0_f64 / 3.0;
let neg_inf = f64::NEG_INFINITY;
unsafe {
    let mut c = MaybeUninit::uninit();
    mpc::init3(c.as_mut_ptr(), 53, 53);
    let mut c = c.assume_init();
    let dirs = mpc::set_d_d(&mut c, one_third, neg_inf, mpc::RNDNN);
    assert_eq!(dirs, 0);
    let re_ptr = mpc::realref_const(&c);
    let re = mpfr::get_d(re_ptr, mpfr::rnd_t::RNDN);
    assert_eq!(re, one_third);
    let im_ptr = mpc::imagref_const(&c);
    let im = mpfr::get_d(im_ptr, mpfr::rnd_t::RNDN);
    assert_eq!(im, neg_inf);
    mpc::clear(&mut c);
}

Structs

mpc_t

See: mpc_t

Constants

RNDDD

See: Rounding Modes

RNDDN

See: Rounding Modes

RNDDU

See: Rounding Modes

RNDDZ

See: Rounding Modes

RNDND

See: Rounding Modes

RNDNN

See: Rounding Modes

RNDNU

See: Rounding Modes

RNDNZ

See: Rounding Modes

RNDUD

See: Rounding Modes

RNDUN

See: Rounding Modes

RNDUU

See: Rounding Modes

RNDUZ

See: Rounding Modes

RNDZD

See: Rounding Modes

RNDZN

See: Rounding Modes

RNDZU

See: Rounding Modes

RNDZZ

See: Rounding Modes

VERSION

See: MPC_VERSION

VERSION_MAJOR

See: MPC_VERSION_MAJOR

VERSION_MINOR

See: MPC_VERSION_MINOR

VERSION_PATCHLEVEL

See: MPC_VERSION_PATCHLEVEL

VERSION_STRING

See: MPC_VERSION_STRING

Functions

INEX1

See: Return Value

INEX2

See: Return Value

INEX_IM

See: Return Value

INEX_RE

See: Return Value

VERSION_NUM

See: MPC_VERSION_NUM

abs

See: mpc_abs

acos

See: mpc_acos

acosh

See: mpc_acosh

add

See: mpc_add

add_fr

See: mpc_add_fr

add_ui

See: mpc_add_ui

arg

See: mpc_arg

asin

See: mpc_asin

asinh

See: mpc_asinh

atan

See: mpc_atan

atanh

See: mpc_atanh

clear

See: mpc_clear

cmp

See: mpc_cmp

cmp_abs

See: mpc_cmp_abs

cmp_si

See: mpc_cmp_si

cmp_si_si

See: mpc_cmp_si_si

conj

See: mpc_conj

cos

See: mpc_cos

cosh

See: mpc_cosh

div

See: mpc_div

div_2ui

See: mpc_div_2ui

div_2si

See: mpc_div_2si

div_fr

See: mpc_div_fr

div_ui

See: mpc_div_ui

exp

See: mpc_exp

fma

See: mpc_fma

fr_div

See: mpc_fr_div

fr_sub

See: mpc_fr_sub

free_str

See: mpc_free_str

get_prec

See: mpc_get_prec

get_prec2

See: mpc_get_prec2

get_str

See: mpc_get_str

get_version

See: mpc_get_version

imag

See: mpc_imag

imagref

See: mpc_imagref

imagref_const

Constant version of imagref.

init2

See: mpc_init2

init3

See: mpc_init3

inp_str

See: mpc_inp_str

log

See: mpc_log

log10

See: mpc_log10

mul

See: mpc_mul

mul_2ui

See: mpc_mul_2ui

mul_2si

See: mpc_mul_2si

mul_fr

See: mpc_mul_fr

mul_i

See: mpc_mul_i

mul_si

See: mpc_mul_si

mul_ui

See: mpc_mul_ui

neg

See: mpc_neg

norm

See: mpc_norm

out_str

See: mpc_out_str

pow

See: mpc_pow

pow_d

See: mpc_pow_d

pow_fr

See: mpc_pow_fr

pow_si

See: mpc_pow_si

pow_ui

See: mpc_pow_ui

pow_z

See: mpc_pow_z

proj

See: mpc_proj

real

See: mpc_real

realref

See: mpc_realref

realref_const

Constant version of realref.

rootofunity

See: mpc_rootofunity

set

See: mpc_set

set_d

See: mpc_set_d

set_d_d

See: mpc_set_d_d

set_f

See: mpc_set_f

set_f_f

See: mpc_set_f_f

set_fr

See: mpc_set_fr

set_fr_fr

See: mpc_set_fr_fr

set_nan

See: mpc_set_nan

set_prec

See: mpc_set_prec

set_q

See: mpc_set_q

set_q_q

See: mpc_set_q_q

set_si

See: mpc_set_si

set_si_si

See: mpc_set_si_si

set_sj

See: mpc_set_sj

set_sj_sj

See: mpc_set_sj_sj

set_str

See: mpc_set_str

set_ui

See: mpc_set_ui

set_ui_ui

See: mpc_set_ui_ui

set_uj

See: mpc_set_uj

set_uj_uj

See: mpc_set_uj_uj

set_z

See: mpc_set_z

set_z_z

See: mpc_set_z_z

sin

See: mpc_sin

sin_cos

See: mpc_sin_cos

sinh

See: mpc_sinh

sqr

See: mpc_sqr

sqrt

See: mpc_sqrt

strtoc

See: mpc_strtoc

sub

See: mpc_fr_sub

sub_fr

See: mpc_sub_fr

sub_ui

See: mpc_sub_ui

swap

See: mpc_swap

tan

See: mpc_tan

tanh

See: mpc_tanh

ui_div

See: mpc_ui_div

ui_sub

See: mpc_ui_sub

ui_ui_sub

See: mpc_ui_ui_sub

urandom

See: mpc_urandom

Type Definitions

rnd_t

See: mpc_rnd_t