extendr_api/scalar/
mod.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
mod macros;
mod rbool;
mod rfloat;
mod rint;
pub use rbool::Rbool;
pub use rfloat::Rfloat;
pub use rint::Rint;

#[cfg(feature = "num-complex")]
mod rcplx_full;

#[cfg(feature = "num-complex")]
pub use rcplx_full::{c64, Rcplx};

#[cfg(not(feature = "num-complex"))]
mod rcplx_default;

#[cfg(not(feature = "num-complex"))]
pub use rcplx_default::{c64, Rcplx};

pub trait Scalar<T>: crate::CanBeNA
where
    T: PartialEq + Copy,
{
    fn inner(&self) -> T;
    fn new(val: T) -> Self;
}