lean_sys/primitive/
float32.rs1use crate::*;
2
3pub fn lean_float32_to_uint8(a: f32) -> u8 {
4 a as u8
6}
7pub fn lean_float32_to_uint16(a: f32) -> u16 {
8 a as u16
10}
11pub fn lean_float32_to_uint32(a: f32) -> u32 {
12 a as u32
14}
15pub fn lean_float32_to_uint64(a: f32) -> u64 {
16 a as u64
18}
19pub fn lean_float32_to_usize(a: f32) -> usize {
20 a as usize
22}
23pub fn lean_float32_add(a: f32, b: f32) -> f32 {
24 a + b
25}
26pub fn lean_float32_sub(a: f32, b: f32) -> f32 {
27 a - b
28}
29pub fn lean_float32_mul(a: f32, b: f32) -> f32 {
30 a * b
31}
32pub fn lean_float32_div(a: f32, b: f32) -> f32 {
33 a / b
34}
35pub fn lean_float32_negate(a: f32) -> f32 {
36 -a
37}
38pub fn lean_float32_beq(a: f32, b: f32) -> u8 {
39 (a == b) as u8
40}
41pub fn lean_float32_decLe(a: f32, b: f32) -> u8 {
42 (a <= b) as u8
43}
44pub fn lean_float32_decLt(a: f32, b: f32) -> u8 {
45 (a < b) as u8
46}
47pub fn lean_uint64_to_float32(a: u64) -> f32 {
48 a as f32
49}
50
51pub fn lean_float_to_float32(a: f64) -> f32 {
52 a as f32
53}
54pub fn lean_float32_to_float(a: f32) -> f64 {
55 a as f64
56}
57
58extern "C" {
59 pub fn lean_float32_to_string(a: f32) -> lean_obj_res;
60 pub fn lean_float32_scaleb(a: f32, b: b_lean_obj_arg) -> f32;
61 pub fn lean_float32_isnan(a: f32) -> u8;
62 pub fn lean_float32_isfinite(a: f32) -> u8;
63 pub fn lean_float32_isinf(a: f32) -> u8;
64 pub fn lean_float32_frexp(a: f32) -> lean_obj_res;
65 pub fn lean_float32_of_bits(a: u32) -> f32;
66 pub fn lean_float32_to_bits(a: f32) -> u32;
67}