pub trait ToSharedStr {
// Required method
fn to_shared_str(&self) -> SharedStr;
}
Expand description
A trait that converts the source to a SharedStr without consuming it
use flexstr::ToSharedStr;
let a = "This is a heap allocated string!!!!!".to_shared_str();
assert!(a.is_heap());
Required Methods§
Converts the source to a SharedStr without consuming it
Implementations on Foreign Types§
use flexstr::ToSharedStr;
let s = false.to_shared_str();
assert!(s.is_static());
assert_eq!(s, "false");
use flexstr::ToSharedStr;
let s = '☺'.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "☺");
use flexstr::ToSharedStr;
let s = 123.456f32.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123.456");
use flexstr::ToSharedStr;
let s = 123.456f64.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123.456");
use flexstr::ToSharedStr;
let s = 123i8.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123");
use flexstr::ToSharedStr;
let s = 123i16.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123");
use flexstr::ToSharedStr;
let s = 123i32.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123");
use flexstr::ToSharedStr;
let s = 123i64.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123");
use flexstr::ToSharedStr;
let s = 123i128.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123");
use flexstr::ToSharedStr;
let s = 123isize.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123");
use flexstr::ToSharedStr;
// Don't use for literals - use `into_local_str` instead
let a = "test".to_shared_str();
assert!(a.is_inline());
use flexstr::ToSharedStr;
let s = 123u8.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123");
use flexstr::ToSharedStr;
let s = 123u16.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123");
use flexstr::ToSharedStr;
let s = 123u32.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123");
use flexstr::ToSharedStr;
let s = 123u64.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123");
use flexstr::ToSharedStr;
let s = 123u128.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123");
use flexstr::ToSharedStr;
let s = 123usize.to_shared_str();
assert!(s.is_inline());
assert_eq!(s, "123");