1pub fn type_of<T>(_: T) -> &'static str {
2 std::any::type_name::<T>()
3}
4
5#[cfg(test)]
6mod tests {
7 use crate::type_of;
8
9 #[test]
10 fn it_works() {
11 assert_eq!("i32", type_of(10));
12 assert_eq!("i32", type_of(12));
13 assert_eq!("i32", type_of(15));
14 assert_eq!("i32", type_of(13));
15 assert_eq!("i32", type_of(333));
16 assert_eq!("f64", type_of(15.2));
17 assert_eq!("f64", type_of(12.5));
18 assert_eq!("f64", type_of(3.5));
19 assert_eq!("f64", type_of(3.6));
20 assert_eq!("f64", type_of(7.5));
21 assert_eq!("&str", type_of("Draw"));
22 assert_eq!("&str", type_of("cross"));
23 assert_eq!("&str", type_of("pattern"));
24 assert_eq!("&str", type_of("hot"));
25 }
26}