Enum ascii::AsciiChar [] [src]

#[repr(u8)]
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'

bell / alarm / audible

'\a' is not recognized by Rust.

Backspace

'\b' is not recognized by Rust.

'\t'

'\n'

Vertical tab

'\v' is not recognized by Rust.

Form Feed

'\f' is not recognized by Rust.

'\r'

Device control 2

Device control 3, Often XOFF

Device control 4

Escape

'\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'

'{'

'|'

'}'

'~'

Methods

impl AsciiChar
[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');

Constructs an ASCII character from a char or u8 without any checks.

Converts an ASCII character into a u8.

Converts an ASCII character into a char.

Check if the character is a letter (a-z, A-Z)

Check if the character is a number (0-9)

Check if the character is a letter or number

Check if the character is a space or horizontal tab

Check if the character is a ' ', '\t', '\n' or '\r'

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);

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);

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);

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);

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);

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);

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);

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');

Trait Implementations

impl Clone for AsciiChar
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl PartialEq for AsciiChar
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl PartialOrd for AsciiChar
[src]

This method returns an ordering between self and other values if one exists. Read more

This method tests less than (for self and other) and is used by the < operator. Read more

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

This method tests greater than (for self and other) and is used by the > operator. Read more

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl Ord for AsciiChar
[src]

This method returns an Ordering between self and other. Read more

impl Eq for AsciiChar
[src]

impl Hash for AsciiChar
[src]

Feeds this value into the given [Hasher]. Read more

Feeds a slice of this type into the given [Hasher]. Read more

impl Copy for AsciiChar
[src]

impl Display for AsciiChar
[src]

Formats the value using the given formatter. Read more

impl Debug for AsciiChar
[src]

Formats the value using the given formatter.

impl AsciiExt for AsciiChar
[src]

Container type for copied ASCII characters.

Checks if the value is within the ASCII range. Read more

Makes a copy of the value in its ASCII upper case equivalent. Read more

Makes a copy of the value in its ASCII lower case equivalent. Read more

Checks that two values are an ASCII case-insensitive match. Read more

Converts this type to its ASCII upper case equivalent in-place. Read more

Converts this type to its ASCII lower case equivalent in-place. Read more

🔬 This is a nightly-only experimental API. (ascii_ctype)

Checks if the value is an ASCII alphabetic character: U+0041 'A' ... U+005A 'Z' or U+0061 'a' ... U+007A 'z'. For strings, true if all characters in the string are ASCII alphabetic. Read more

🔬 This is a nightly-only experimental API. (ascii_ctype)

Checks if the value is an ASCII uppercase character: U+0041 'A' ... U+005A 'Z'. For strings, true if all characters in the string are ASCII uppercase. Read more

🔬 This is a nightly-only experimental API. (ascii_ctype)

Checks if the value is an ASCII lowercase character: U+0061 'a' ... U+007A 'z'. For strings, true if all characters in the string are ASCII lowercase. Read more

🔬 This is a nightly-only experimental API. (ascii_ctype)

Checks if the value is an ASCII alphanumeric character: U+0041 'A' ... U+005A 'Z', U+0061 'a' ... U+007A 'z', or U+0030 '0' ... U+0039 '9'. For strings, true if all characters in the string are ASCII alphanumeric. Read more

🔬 This is a nightly-only experimental API. (ascii_ctype)

Checks if the value is an ASCII decimal digit: U+0030 '0' ... U+0039 '9'. For strings, true if all characters in the string are ASCII digits. Read more

🔬 This is a nightly-only experimental API. (ascii_ctype)

Checks if the value is an ASCII hexadecimal digit: U+0030 '0' ... U+0039 '9', U+0041 'A' ... U+0046 'F', or U+0061 'a' ... U+0066 'f'. For strings, true if all characters in the string are ASCII hex digits. Read more

🔬 This is a nightly-only experimental API. (ascii_ctype)

Checks if the value is an ASCII punctuation character: U+0021 ... U+002F ! " # $ % & ' ( ) * + , - . / U+003A ... U+0040 : ; < = > ? @ U+005B ... U+0060 [ \\ ] ^ _ \U+007B ... U+007E{ | } ~` For strings, true if all characters in the string are ASCII punctuation. Read more

🔬 This is a nightly-only experimental API. (ascii_ctype)

Checks if the value is an ASCII graphic character: U+0021 '@' ... U+007E '~'. For strings, true if all characters in the string are ASCII punctuation. Read more

🔬 This is a nightly-only experimental API. (ascii_ctype)

Checks if the value is an ASCII whitespace character: U+0020 SPACE, U+0009 HORIZONTAL TAB, U+000A LINE FEED, U+000C FORM FEED, or U+000D CARRIAGE RETURN. For strings, true if all characters in the string are ASCII whitespace. Read more

🔬 This is a nightly-only experimental API. (ascii_ctype)

Checks if the value is an ASCII control character: U+0000 NUL ... U+001F UNIT SEPARATOR, or U+007F DELETE. Note that most ASCII whitespace characters are control characters, but SPACE is not. Read more

impl PartialEq<u8> for AsciiChar
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl PartialOrd<u8> for AsciiChar
[src]

This method returns an ordering between self and other values if one exists. Read more

This method tests less than (for self and other) and is used by the < operator. Read more

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

This method tests greater than (for self and other) and is used by the > operator. Read more

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl PartialEq<char> for AsciiChar
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl PartialOrd<char> for AsciiChar
[src]

This method returns an ordering between self and other values if one exists. Read more

This method tests less than (for self and other) and is used by the < operator. Read more

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

This method tests greater than (for self and other) and is used by the > operator. Read more

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl ToAsciiChar for AsciiChar
[src]

Convert to AsciiChar.

Convert to AsciiChar without checking that it is an ASCII character.