Trait std::ascii::AsciiExt
[−]
[src]
pub trait AsciiExt { type Owned; fn is_ascii(&self) -> bool; fn to_ascii_uppercase(&self) -> Self::Owned; fn to_ascii_lowercase(&self) -> Self::Owned; fn eq_ignore_ascii_case(&self, other: &Self) -> bool; fn make_ascii_uppercase(&mut self); fn make_ascii_lowercase(&mut self); }
Extension methods for ASCII-subset only operations on string slices.
Associated Types
type Owned
Container type for copied ASCII characters.
Required Methods
fn is_ascii(&self) -> bool
Checks if within the ASCII range.
Examples
fn main() { use std::ascii::AsciiExt; let ascii = 'a'; let utf8 = '❤'; assert_eq!(true, ascii.is_ascii()); assert_eq!(false, utf8.is_ascii()) }use std::ascii::AsciiExt; let ascii = 'a'; let utf8 = '❤'; assert_eq!(true, ascii.is_ascii()); assert_eq!(false, utf8.is_ascii())
fn to_ascii_uppercase(&self) -> Self::Owned
Makes a copy of the string in ASCII upper case.
ASCII letters 'a' to 'z' are mapped to 'A' to 'Z', but non-ASCII letters are unchanged.
Examples
fn main() { use std::ascii::AsciiExt; let ascii = 'a'; let utf8 = '❤'; assert_eq!('A', ascii.to_ascii_uppercase()); assert_eq!('❤', utf8.to_ascii_uppercase()); }use std::ascii::AsciiExt; let ascii = 'a'; let utf8 = '❤'; assert_eq!('A', ascii.to_ascii_uppercase()); assert_eq!('❤', utf8.to_ascii_uppercase());
fn to_ascii_lowercase(&self) -> Self::Owned
Makes a copy of the string in ASCII lower case.
ASCII letters 'A' to 'Z' are mapped to 'a' to 'z', but non-ASCII letters are unchanged.
Examples
fn main() { use std::ascii::AsciiExt; let ascii = 'A'; let utf8 = '❤'; assert_eq!('a', ascii.to_ascii_lowercase()); assert_eq!('❤', utf8.to_ascii_lowercase()); }use std::ascii::AsciiExt; let ascii = 'A'; let utf8 = '❤'; assert_eq!('a', ascii.to_ascii_lowercase()); assert_eq!('❤', utf8.to_ascii_lowercase());
fn eq_ignore_ascii_case(&self, other: &Self) -> bool
Checks that two strings are an ASCII case-insensitive match.
Same as to_ascii_lowercase(a) == to_ascii_lowercase(b)
,
but without allocating and copying temporary strings.
Examples
fn main() { use std::ascii::AsciiExt; let ascii1 = 'A'; let ascii2 = 'a'; let ascii3 = 'A'; let ascii4 = 'z'; assert_eq!(true, ascii1.eq_ignore_ascii_case(&ascii2)); assert_eq!(true, ascii1.eq_ignore_ascii_case(&ascii3)); assert_eq!(false, ascii1.eq_ignore_ascii_case(&ascii4)); }use std::ascii::AsciiExt; let ascii1 = 'A'; let ascii2 = 'a'; let ascii3 = 'A'; let ascii4 = 'z'; assert_eq!(true, ascii1.eq_ignore_ascii_case(&ascii2)); assert_eq!(true, ascii1.eq_ignore_ascii_case(&ascii3)); assert_eq!(false, ascii1.eq_ignore_ascii_case(&ascii4));
fn make_ascii_uppercase(&mut self)
ascii
#27809)Converts this type to its ASCII upper case equivalent in-place.
See to_ascii_uppercase
for more information.
Examples
#![feature(ascii)] fn main() { use std::ascii::AsciiExt; let mut ascii = 'a'; ascii.make_ascii_uppercase(); assert_eq!('A', ascii); }#![feature(ascii)] use std::ascii::AsciiExt; let mut ascii = 'a'; ascii.make_ascii_uppercase(); assert_eq!('A', ascii);
fn make_ascii_lowercase(&mut self)
ascii
#27809)Converts this type to its ASCII lower case equivalent in-place.
See to_ascii_lowercase
for more information.
Examples
#![feature(ascii)] fn main() { use std::ascii::AsciiExt; let mut ascii = 'A'; ascii.make_ascii_lowercase(); assert_eq!('a', ascii); }#![feature(ascii)] use std::ascii::AsciiExt; let mut ascii = 'A'; ascii.make_ascii_lowercase(); assert_eq!('a', ascii);