chumsky::text

Trait Character

Source
pub trait Character:
    Sealed
    + Copy
    + PartialEq {
    type Str: ?Sized + PartialEq;
    type Collection: Chain<Self> + FromIterator<Self> + AsRef<Self::Str> + 'static;

    // Required methods
    fn from_ascii(c: u8) -> Self;
    fn is_inline_whitespace(&self) -> bool;
    fn is_whitespace(&self) -> bool;
    fn digit_zero() -> Self;
    fn is_digit(&self, radix: u32) -> bool;
    fn to_char(&self) -> char;
}
Expand description

A trait implemented by textual character types (currently, u8 and char).

Avoid implementing this trait yourself if you can: it’s very likely to be expanded in future versions!

Required Associated Types§

Source

type Str: ?Sized + PartialEq

The default unsized str-like type of a linear sequence of this character.

For char, this is str. For u8, this is [[u8]].

Source

type Collection: Chain<Self> + FromIterator<Self> + AsRef<Self::Str> + 'static

The default type that this character collects into.

For char, this is String. For u8, this is Vec<u8>.

Required Methods§

Source

fn from_ascii(c: u8) -> Self

Convert the given ASCII character to this character type.

Source

fn is_inline_whitespace(&self) -> bool

Returns true if the character is canonically considered to be inline whitespace (i.e: not part of a newline).

Source

fn is_whitespace(&self) -> bool

Returns true if the character is canonically considered to be whitespace.

Source

fn digit_zero() -> Self

Return the ‘0’ digit of the character.

Source

fn is_digit(&self, radix: u32) -> bool

Returns true if the character is canonically considered to be a numeric digit.

Source

fn to_char(&self) -> char

Returns this character as a char.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl Character for char

Source§

impl Character for u8

Implementors§