@@ -22,3 +22,220 @@ pub mod geometry;
22
22
pub mod math;
23
23
pub mod pipeline;
24
24
pub mod utils;
25
+
26
+ pub mod libm {
27
+ use wasm_bindgen:: prelude:: wasm_bindgen;
28
+
29
+ #[ wasm_bindgen]
30
+ pub fn acoshf ( x : f32 ) -> f32 {
31
+ libm:: acoshf ( x)
32
+ }
33
+ #[ wasm_bindgen]
34
+ pub fn asinf ( x : f32 ) -> f32 {
35
+ libm:: asinf ( x)
36
+ }
37
+ #[ wasm_bindgen]
38
+ pub fn asinhf ( x : f32 ) -> f32 {
39
+ libm:: asinhf ( x)
40
+ }
41
+ #[ wasm_bindgen]
42
+ pub fn atan2f ( y : f32 , x : f32 ) -> f32 {
43
+ libm:: atan2f ( y, x)
44
+ }
45
+ #[ wasm_bindgen]
46
+ pub fn atanf ( x : f32 ) -> f32 {
47
+ libm:: atanf ( x)
48
+ }
49
+ #[ wasm_bindgen]
50
+ pub fn atanhf ( x : f32 ) -> f32 {
51
+ libm:: atanhf ( x)
52
+ }
53
+ #[ wasm_bindgen]
54
+ pub fn cbrtf ( x : f32 ) -> f32 {
55
+ libm:: cbrtf ( x)
56
+ }
57
+ #[ wasm_bindgen]
58
+ pub fn ceilf ( x : f32 ) -> f32 {
59
+ libm:: ceilf ( x)
60
+ }
61
+ // #[wasm_bindgen]
62
+ // pub fn copysignf(x: f32) -> f32 {
63
+ // libm::copysignf(x)
64
+ // }
65
+ #[ wasm_bindgen]
66
+ pub fn cosf ( x : f32 ) -> f32 {
67
+ libm:: cosf ( x)
68
+ }
69
+ #[ wasm_bindgen]
70
+ pub fn coshf ( x : f32 ) -> f32 {
71
+ libm:: coshf ( x)
72
+ }
73
+ #[ wasm_bindgen]
74
+ pub fn exp2f ( x : f32 ) -> f32 {
75
+ libm:: exp2f ( x)
76
+ }
77
+ #[ wasm_bindgen]
78
+ pub fn exp10f ( x : f32 ) -> f32 {
79
+ libm:: exp10f ( x)
80
+ }
81
+ #[ wasm_bindgen]
82
+ pub fn expf ( x : f32 ) -> f32 {
83
+ libm:: expf ( x)
84
+ }
85
+ #[ wasm_bindgen]
86
+ pub fn expm1f ( x : f32 ) -> f32 {
87
+ libm:: expm1f ( x)
88
+ }
89
+ #[ wasm_bindgen]
90
+ pub fn fabsf ( x : f32 ) -> f32 {
91
+ libm:: fabsf ( x)
92
+ }
93
+ // #[wasm_bindgen]
94
+ // pub fn fdimf(x: f32) -> f32 {
95
+ // libm::fdimf(x)
96
+ // }
97
+ #[ wasm_bindgen]
98
+ pub fn floorf ( x : f32 ) -> f32 {
99
+ libm:: floorf ( x)
100
+ }
101
+ // #[wasm_bindgen]
102
+ // pub fn fmaf(x: f32) -> f32 {
103
+ // libm::fmaf(x)
104
+ // }
105
+ // #[wasm_bindgen]
106
+ // pub fn fmaxf(x: f32) -> f32 {
107
+ // libm::fmaxf(x)
108
+ // }
109
+ // #[wasm_bindgen]
110
+ // pub fn fminf(x: f32) -> f32 {
111
+ // libm::fminf(x)
112
+ // }
113
+ #[ wasm_bindgen]
114
+ pub fn fmodf ( x : f32 , y : f32 ) -> f32 {
115
+ libm:: fmodf ( x, y)
116
+ }
117
+ // #[wasm_bindgen]
118
+ // pub fn frexpf(x: f32, y: f32) -> f32 {
119
+ // libm::frexpf(x, y)
120
+ // }
121
+ #[ wasm_bindgen]
122
+ pub fn hypotf ( x : f32 , y : f32 ) -> f32 {
123
+ libm:: hypotf ( x, y)
124
+ }
125
+ // #[wasm_bindgen]
126
+ // pub fn ilogbf(x: f32) -> f32 {
127
+ // libm::ilogbf(x)
128
+ // }
129
+ // #[wasm_bindgen]
130
+ // pub fn j0f(x: f32) -> f32 {
131
+ // libm::j0f(x)
132
+ // }
133
+ // #[wasm_bindgen]
134
+ // pub fn j1f(x: f32) -> f32 {
135
+ // libm::j1f(x)
136
+ // }
137
+ // #[wasm_bindgen]
138
+ // pub fn jnf(x: f32) -> f32 {
139
+ // libm::jnf(x)
140
+ // }
141
+ // #[wasm_bindgen]
142
+ // pub fn ldexpf(x: f32) -> f32 {
143
+ // libm::ldexpf(x)
144
+ // }
145
+ // #[wasm_bindgen]
146
+ // pub fn lgammaf(x: f32) -> f32 {
147
+ // libm::lgammaf(x)
148
+ // }
149
+ // #[wasm_bindgen]
150
+ // pub fn lgammaf_r(x: f32) -> f32 {
151
+ // libm::lgammaf_r(x)
152
+ // }
153
+ // #[wasm_bindgen]
154
+ // pub fn log1pf(x: f32) -> f32 {
155
+ // libm::log1pf(x)
156
+ // }
157
+ #[ wasm_bindgen]
158
+ pub fn log2f ( x : f32 ) -> f32 {
159
+ libm:: log2f ( x)
160
+ }
161
+ #[ wasm_bindgen]
162
+ pub fn log10f ( x : f32 ) -> f32 {
163
+ libm:: log10f ( x)
164
+ }
165
+ #[ wasm_bindgen]
166
+ pub fn logf ( x : f32 ) -> f32 {
167
+ libm:: logf ( x)
168
+ }
169
+ // #[wasm_bindgen]
170
+ // pub fn modf(x: f32, y: f32) -> f32 {
171
+ // libm::modf(x, y)
172
+ // }
173
+ // #[wasm_bindgen]
174
+ // pub fn modff(x: f32, y: f32) -> f32 {
175
+ // libm::modff(x, y)
176
+ // }
177
+ // #[wasm_bindgen]
178
+ // pub fn nextafterf(x: f32, y: f32) -> f32 {
179
+ // libm::nextafterf(x, y)
180
+ // }
181
+ #[ wasm_bindgen]
182
+ pub fn powf ( x : f32 , y : f32 ) -> f32 {
183
+ libm:: powf ( x, y)
184
+ }
185
+ // #[wasm_bindgen]
186
+ // pub fn remainderf(x: f32, y: f32) -> f32 {
187
+ // libm::remainderf(x, y)
188
+ // }
189
+ // #[wasm_bindgen]
190
+ // pub fn roundf(x: f32) -> f32 {
191
+ // libm::roundf(x)
192
+ // }
193
+ // #[wasm_bindgen]
194
+ // pub fn scalbnf(x: f32) -> f32 {
195
+ // libm::scalbnf(x)
196
+ // }
197
+ // #[wasm_bindgen]
198
+ // pub fn sincosf(x: f32) -> f32 {
199
+ // libm::sincosf(x)
200
+ // }
201
+ #[ wasm_bindgen]
202
+ pub fn sinf ( x : f32 ) -> f32 {
203
+ libm:: sinf ( x)
204
+ }
205
+ #[ wasm_bindgen]
206
+ pub fn sinhf ( x : f32 ) -> f32 {
207
+ libm:: sinhf ( x)
208
+ }
209
+ #[ wasm_bindgen]
210
+ pub fn sqrtf ( x : f32 ) -> f32 {
211
+ libm:: sqrtf ( x)
212
+ }
213
+ #[ wasm_bindgen]
214
+ pub fn tanf ( x : f32 ) -> f32 {
215
+ libm:: tanf ( x)
216
+ }
217
+ #[ wasm_bindgen]
218
+ pub fn tanhf ( x : f32 ) -> f32 {
219
+ libm:: tanhf ( x)
220
+ }
221
+ // #[wasm_bindgen]
222
+ // pub fn tgammaf(x: f32) -> f32 {
223
+ // libm::tgammaf(x)
224
+ // }
225
+ // #[wasm_bindgen]
226
+ // pub fn truncf(x: f32) -> f32 {
227
+ // libm::truncf(x)
228
+ // }
229
+ // #[wasm_bindgen]
230
+ // pub fn y0f(x: f32) -> f32 {
231
+ // libm::y0f(x)
232
+ // }
233
+ // #[wasm_bindgen]
234
+ // pub fn y1f(x: f32) -> f32 {
235
+ // libm::y1f(x)
236
+ // }
237
+ // #[wasm_bindgen]
238
+ // pub fn ynf(x: f32) -> f32 {
239
+ // libm::ynf(x)
240
+ // }
241
+ }
0 commit comments