rgsl/
elementary_operations.rs1use crate::{types, Value};
6use std::mem::MaybeUninit;
7
8#[doc(alias = "gsl_sf_multiply_e")]
10pub fn multiply_e(x: f64, y: f64) -> Result<types::Result, Value> {
11 let mut result = MaybeUninit::<sys::gsl_sf_result>::uninit();
12 let ret = unsafe { ::sys::gsl_sf_multiply_e(x, y, result.as_mut_ptr()) };
13
14 result_handler!(ret, unsafe { result.assume_init() }.into())
15}
16
17#[doc(alias = "gsl_sf_multiply_err_e")]
20pub fn multiply_err_e(x: f64, dx: f64, y: f64, dy: f64) -> Result<types::Result, Value> {
21 let mut result = MaybeUninit::<sys::gsl_sf_result>::uninit();
22 let ret = unsafe { ::sys::gsl_sf_multiply_err_e(x, dx, y, dy, result.as_mut_ptr()) };
23
24 result_handler!(ret, unsafe { result.assume_init() }.into())
25}