pulsejet_rs/cmath.rs
1pub trait CMath {
2 fn cos(x: f32) -> f32;
3 fn exp2(x: f32) -> f32;
4 fn sin(x: f32) -> f32;
5 fn sqrt(x: f32) -> f32;
6}
7
8pub struct Std;
9
10impl CMath for Std {
11 fn cos(x: f32) -> f32 {
12 f32::cos(x)
13 }
14
15 fn exp2(x: f32) -> f32 {
16 f32::exp2(x)
17 }
18
19 fn sin(x: f32) -> f32 {
20 f32::sin(x)
21 }
22
23 fn sqrt(x: f32) -> f32 {
24 f32::sqrt(x)
25 }
26}