Enum ascii::AsciiChar [−][src]
pub enum AsciiChar { Null, SOH, SOX, ETX, EOT, ENQ, ACK, Bell, BackSpace, Tab, LineFeed, VT, FF, CarriageReturn, SI, SO, DLE, DC1, DC2, DC3, DC4, NAK, SYN, ETB, CAN, EM, SUB, ESC, FS, GS, RS, US, Space, Exclamation, Quotation, Hash, Dollar, Percent, Ampersand, Apostrophe, ParenOpen, ParenClose, Asterisk, Plus, Comma, Minus, Dot, Slash, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, Colon, Semicolon, LessThan, Equal, GreaterThan, Question, At, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, BracketOpen, BackSlash, BracketClose, Caret, UnderScore, Grave, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, CurlyBraceOpen, VerticalBar, CurlyBraceClose, Tilde, DEL, }
An ASCII character. It wraps a u8
, with the highest bit always zero.
Variants
'\0'
'\a'
is not recognized by Rust.
'\b'
is not recognized by Rust.
'\t'
'\n'
'\v'
is not recognized by Rust.
'\f'
is not recognized by Rust.
'\r'
Device control 2
Device control 3, Often XOFF
Device control 4
'\e'
is not recognized by Rust.
' '
'!'
'"'
'#'
'$'
'%'
'&'
'\''
'('
')'
'*'
'+'
','
'-'
'.'
'/'
'0'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'
'9'
':'
';'
'<'
'='
'>'
'?'
'@'
'A'
'B'
'C'
'D'
'E'
'F'
'G'
'H'
'I'
'J'
'K'
'L'
'M'
'N'
'O'
'P'
'Q'
'R'
'S'
'T'
'U'
'V'
'W'
'X'
'Y'
'Z'
'['
'\'
']'
'_'
'_'
'
’`
'a'
'b'
'c'
'd'
'e'
'f'
'g'
'h'
'i'
'j'
'k'
'l'
'm'
'n'
'o'
'p'
'q'
'r'
's'
't'
'u'
'v'
'w'
'x'
'y'
'z'
'{'
'|'
'}'
'~'
Implementations
impl AsciiChar
[src][−]
pub fn from<C: ToAsciiChar>(ch: C) -> Result<Self, ToAsciiCharError>
[src][−]
Constructs an ASCII character from a u8
, char
or other character type.
Failure
Returns Err(())
if the character can’t be ASCII encoded.
Example
let a = AsciiChar::from('g').unwrap(); assert_eq!(a.as_char(), 'g');
pub unsafe fn from_unchecked<C: ToAsciiChar>(ch: C) -> Self
[src][−]
Constructs an ASCII character from a char
or u8
without any checks.
pub fn as_byte(self) -> u8
[src][−]
Converts an ASCII character into a u8
.
pub fn as_char(self) -> char
[src][−]
Converts an ASCII character into a char
.
pub fn is_alphabetic(self) -> bool
[src][−]
Check if the character is a letter (a-z, A-Z)
pub fn is_digit(self) -> bool
[src][−]
Check if the character is a number (0-9)
pub fn is_alphanumeric(self) -> bool
[src][−]
Check if the character is a letter or number
pub fn is_blank(self) -> bool
[src][−]
Check if the character is a space or horizontal tab
pub fn is_whitespace(self) -> bool
[src][−]
Check if the character is a ’ ’, ‘\t’, ‘\n’ or ‘\r’
pub fn is_control(self) -> bool
[src][−]
Check if the character is a control character
Examples
use ascii::ToAsciiChar; assert_eq!('\0'.to_ascii_char().unwrap().is_control(), true); assert_eq!('n'.to_ascii_char().unwrap().is_control(), false); assert_eq!(' '.to_ascii_char().unwrap().is_control(), false); assert_eq!('\n'.to_ascii_char().unwrap().is_control(), true);
pub fn is_graph(self) -> bool
[src][−]
Checks if the character is printable (except space)
Examples
use ascii::ToAsciiChar; assert_eq!('n'.to_ascii_char().unwrap().is_graph(), true); assert_eq!(' '.to_ascii_char().unwrap().is_graph(), false); assert_eq!('\n'.to_ascii_char().unwrap().is_graph(), false);
pub fn is_print(self) -> bool
[src][−]
Checks if the character is printable (including space)
Examples
use ascii::ToAsciiChar; assert_eq!('n'.to_ascii_char().unwrap().is_print(), true); assert_eq!(' '.to_ascii_char().unwrap().is_print(), true); assert_eq!('\n'.to_ascii_char().unwrap().is_print(), false);
pub fn is_lowercase(self) -> bool
[src][−]
Checks if the character is alphabetic and lowercase
Examples
use ascii::ToAsciiChar; assert_eq!('a'.to_ascii_char().unwrap().is_lowercase(), true); assert_eq!('A'.to_ascii_char().unwrap().is_lowercase(), false); assert_eq!('@'.to_ascii_char().unwrap().is_lowercase(), false);
pub fn is_uppercase(self) -> bool
[src][−]
Checks if the character is alphabetic and uppercase
Examples
use ascii::ToAsciiChar; assert_eq!('A'.to_ascii_char().unwrap().is_uppercase(), true); assert_eq!('a'.to_ascii_char().unwrap().is_uppercase(), false); assert_eq!('@'.to_ascii_char().unwrap().is_uppercase(), false);
pub fn is_punctuation(self) -> bool
[src][−]
Checks if the character is punctuation
Examples
use ascii::ToAsciiChar; assert_eq!('n'.to_ascii_char().unwrap().is_punctuation(), false); assert_eq!(' '.to_ascii_char().unwrap().is_punctuation(), false); assert_eq!('_'.to_ascii_char().unwrap().is_punctuation(), true); assert_eq!('~'.to_ascii_char().unwrap().is_punctuation(), true);
pub fn is_hex(self) -> bool
[src][−]
Checks if the character is a valid hex digit
Examples
use ascii::ToAsciiChar; assert_eq!('5'.to_ascii_char().unwrap().is_hex(), true); assert_eq!('a'.to_ascii_char().unwrap().is_hex(), true); assert_eq!('F'.to_ascii_char().unwrap().is_hex(), true); assert_eq!('G'.to_ascii_char().unwrap().is_hex(), false); assert_eq!(' '.to_ascii_char().unwrap().is_hex(), false);
pub fn as_printable_char(self) -> char
[src][−]
Unicode has printable versions of the ASCII control codes, like ‘␛’.
This function is identical with .as_char()
for all values .is_printable()
returns true for,
but replaces the control codes with those unicodes printable versions.
Examples
assert_eq!('\0'.to_ascii_char().unwrap().as_printable_char(), '␀'); assert_eq!('\n'.to_ascii_char().unwrap().as_printable_char(), '␊'); assert_eq!(' '.to_ascii_char().unwrap().as_printable_char(), ' '); assert_eq!('p'.to_ascii_char().unwrap().as_printable_char(), 'p');
pub fn make_ascii_uppercase(&mut self)
[src][−]
Replaces letters a
to z
with A
to Z
pub fn make_ascii_lowercase(&mut self)
[src][−]
Replaces letters A
to Z
with a
to z
pub fn to_ascii_uppercase(&self) -> Self
[src][−]
Maps letters a
…z
to A
…Z
and returns everything else unchanged.
pub fn to_ascii_lowercase(&self) -> Self
[src][−]
Maps letters A
…Z
to a
…z
and returns everything else unchanged.
pub fn eq_ignore_ascii_case(&self, other: &Self) -> bool
[src][−]
Compares two characters case-insensitively.
Trait Implementations
impl AsciiExt for AsciiChar
[src][+]
impl Clone for AsciiChar
[src][+]
impl Copy for AsciiChar
[src]
impl Debug for AsciiChar
[src][+]
impl Default for AsciiChar
[src][+]
impl Display for AsciiChar
[src][+]
impl Eq for AsciiChar
[src]
impl<'a> Extend<&'a AsciiChar> for AsciiString
[src][+]
impl Extend<AsciiChar> for AsciiString
[src][+]
impl From<AsciiChar> for u8
[src][+]
impl From<AsciiChar> for char
[src][+]
impl FromIterator<AsciiChar> for AsciiString
[src][+]
impl Hash for AsciiChar
[src][+]
impl Ord for AsciiChar
[src][+]
impl PartialEq<AsciiChar> for AsciiChar
[src][+]
impl PartialEq<AsciiChar> for u8
[src][+]
impl PartialEq<AsciiChar> for char
[src][+]
impl PartialEq<char> for AsciiChar
[src][+]
impl PartialEq<u8> for AsciiChar
[src][+]
impl PartialOrd<AsciiChar> for AsciiChar
[src][+]
impl PartialOrd<AsciiChar> for u8
[src][+]
impl PartialOrd<AsciiChar> for char
[src][+]
impl PartialOrd<char> for AsciiChar
[src][+]
impl PartialOrd<u8> for AsciiChar
[src][+]
impl StructuralEq for AsciiChar
[src]
impl StructuralPartialEq for AsciiChar
[src]
impl ToAsciiChar for AsciiChar
[src][+]
Auto Trait Implementations
impl RefUnwindSafe for AsciiChar
impl Send for AsciiChar
impl Sync for AsciiChar
impl Unpin for AsciiChar
impl UnwindSafe for AsciiChar
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T> ToString for T where
T: Display + ?Sized,
[src][+]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,