Trait ToLocalStr

Source
pub trait ToLocalStr {
    // Required method
    fn to_local_str(&self) -> LocalStr;
}
Expand description

A trait that converts the source to a LocalStr without consuming it

use flexstr::ToLocalStr;

let a = "This is a heap allocated string!!!!!".to_string().to_local_str();
assert!(a.is_heap());

Required Methods§

Source

fn to_local_str(&self) -> LocalStr

Converts the source to a LocalStr without consuming it

Implementations on Foreign Types§

Source§

impl ToLocalStr for bool

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = false.to_local_str();
assert!(s.is_static());
assert_eq!(s, "false");
Source§

impl ToLocalStr for char

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = '☺'.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "☺");
Source§

impl ToLocalStr for f32

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123.456f32.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123.456");
Source§

impl ToLocalStr for f64

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123.456f64.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123.456");
Source§

impl ToLocalStr for i8

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123i8.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123");
Source§

impl ToLocalStr for i16

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123i16.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123");
Source§

impl ToLocalStr for i32

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123i32.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123");
Source§

impl ToLocalStr for i64

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123i64.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123");
Source§

impl ToLocalStr for i128

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123i128.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123");
Source§

impl ToLocalStr for isize

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123isize.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123");
Source§

impl ToLocalStr for str

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

// Don't use for literals - use `into_local_str` instead
let a = "test".to_local_str();
assert!(a.is_inline());
Source§

impl ToLocalStr for u8

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123u8.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123");
Source§

impl ToLocalStr for u16

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123u16.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123");
Source§

impl ToLocalStr for u32

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123u32.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123");
Source§

impl ToLocalStr for u64

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123u64.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123");
Source§

impl ToLocalStr for u128

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123u128.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123");
Source§

impl ToLocalStr for usize

Source§

fn to_local_str(&self) -> LocalStr

use flexstr::ToLocalStr;

let s = 123usize.to_local_str();
assert!(s.is_inline());
assert_eq!(s, "123");

Implementors§

Source§

impl<HEAP> ToLocalStr for FlexStr<STRING_SIZED_INLINE, PTR_SIZED_PAD, PTR_SIZED_PAD, HEAP>
where HEAP: Clone + Deref<Target = str>,