flint-sys 0.9.0

Bindings to the FLINT C library
Documentation
/* automatically generated by rust-bindgen 0.70.1 */

use crate::deps::*;
use crate::flint::*;


extern "C" {
    pub fn _d_vec_init(len: slong) -> *mut f64;
    pub fn _d_vec_clear(vec: *mut f64);
    pub fn _d_vec_randtest(
        f: *mut f64,
        state: *mut flint_rand_struct,
        len: slong,
        minexp: slong,
        maxexp: slong,
    );
    pub fn _d_vec_set(vec1: *mut f64, vec2: *const f64, len2: slong);
    pub fn _d_vec_zero(vec: *mut f64, len: slong);
    pub fn _d_vec_equal(vec1: *const f64, vec2: *const f64, len: slong) -> libc::c_int;
    pub fn _d_vec_approx_equal(
        vec1: *const f64,
        vec2: *const f64,
        len: slong,
        eps: f64,
    ) -> libc::c_int;
    pub fn _d_vec_is_zero(vec: *const f64, len: slong) -> libc::c_int;
    pub fn _d_vec_is_approx_zero(vec: *const f64, len: slong, eps: f64) -> libc::c_int;
    pub fn _d_vec_add(res: *mut f64, vec1: *const f64, vec2: *const f64, len2: slong);
    pub fn _d_vec_sub(res: *mut f64, vec1: *const f64, vec2: *const f64, len2: slong);
    #[link_name = "_d_vec_mul_2exp__extern"]
    pub fn _d_vec_mul_2exp(res: *mut f64, x: *const f64, len: slong, e: libc::c_int);
    pub fn _d_vec_dot(vec1: *const f64, vec2: *const f64, len2: slong) -> f64;
    pub fn _d_vec_norm(vec: *const f64, len: slong) -> f64;
    pub fn _d_vec_dot_heuristic(
        vec1: *const f64,
        vec2: *const f64,
        len2: slong,
        err: *mut f64,
    ) -> f64;
    pub fn _d_vec_dot_thrice(vec1: *const f64, vec2: *const f64, len2: slong, err: *mut f64)
        -> f64;
}