A compatible, safe and stable alternative to Rust's
std::intrinsics::type_name
intrinsic.
DEPRECATION NOTICE: This crate has been deprecated. The
type_name
intrinsic has been stablized in Rust 1.38. Users of this crate are asked to migrate tostd::any::type_name
.
extern crate typename;
use typename::TypeName;
fn main() {
assert_eq!(String::type_name(), "std::string::String");
assert_eq!(Vec::<i32>::type_name(), "std::vec::Vec<i32>");
assert_eq!([0, 1, 2].type_name_of(), "[i32; 3]");
}
typename
is part of the Strymon project:
typename
is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0), with portions covered by various BSD-like licenses.
See LICENSE-APACHE, and LICENSE-MIT for details.