hir_ty/
primitive.rs

1//! A few helper functions for dealing with primitives.
2
3pub use hir_def::builtin_type::{BuiltinFloat, BuiltinInt, BuiltinUint};
4pub use rustc_type_ir::{FloatTy, IntTy, UintTy};
5
6pub fn int_ty_to_string(ty: IntTy) -> &'static str {
7    match ty {
8        IntTy::Isize => "isize",
9        IntTy::I8 => "i8",
10        IntTy::I16 => "i16",
11        IntTy::I32 => "i32",
12        IntTy::I64 => "i64",
13        IntTy::I128 => "i128",
14    }
15}
16
17pub fn uint_ty_to_string(ty: UintTy) -> &'static str {
18    match ty {
19        UintTy::Usize => "usize",
20        UintTy::U8 => "u8",
21        UintTy::U16 => "u16",
22        UintTy::U32 => "u32",
23        UintTy::U64 => "u64",
24        UintTy::U128 => "u128",
25    }
26}
27
28pub fn float_ty_to_string(ty: FloatTy) -> &'static str {
29    match ty {
30        FloatTy::F16 => "f16",
31        FloatTy::F32 => "f32",
32        FloatTy::F64 => "f64",
33        FloatTy::F128 => "f128",
34    }
35}