drasi_core/evaluation/functions/
numeric.rs1mod abs;
16mod ceil;
17mod floor;
18mod numeric_round;
19mod random;
20mod sign;
21
22#[cfg(test)]
23mod tests;
24
25use std::sync::Arc;
26
27pub use abs::Abs;
28pub use ceil::Ceil;
29pub use floor::Floor;
30pub use numeric_round::Round;
31pub use random::Rand;
32pub use sign::Sign;
33
34use super::{Function, FunctionRegistry};
35
36pub trait RegisterNumericFunctions {
37 fn register_numeric_functions(&self);
38}
39
40impl RegisterNumericFunctions for FunctionRegistry {
41 fn register_numeric_functions(&self) {
42 self.register_function("abs", Function::Scalar(Arc::new(Abs {})));
43 self.register_function("ceil", Function::Scalar(Arc::new(Ceil {})));
44 self.register_function("floor", Function::Scalar(Arc::new(Floor {})));
45 self.register_function("rand", Function::Scalar(Arc::new(Rand {})));
46 self.register_function("round", Function::Scalar(Arc::new(Round {})));
47 self.register_function("sign", Function::Scalar(Arc::new(Sign {})));
48 }
49}