Skip to main content

EscapeError

Enum EscapeError 

Source
#[non_exhaustive]
pub enum EscapeError {
Show 23 variants ZeroChars, MoreThanOneChar, LoneSlash, InvalidEscape, BareCarriageReturn, BareCarriageReturnInRawString, EscapeOnlyChar, TooShortHexEscape, InvalidCharInHexEscape, OutOfRangeHexEscape, NoBraceInUnicodeEscape, InvalidCharInUnicodeEscape, EmptyUnicodeEscape, UnclosedUnicodeEscape, LeadingUnderscoreUnicodeEscape, OverlongUnicodeEscape, LoneSurrogateUnicodeEscape, OutOfRangeUnicodeEscape, UnicodeEscapeInByte, NonAsciiCharInByte, NulInCStr, UnskippedWhitespaceWarning, MultipleSkippedLinesWarning,
}
🔬This is a nightly-only experimental API. (proc_macro_value #136652)
Expand description

Mostly relating to malformed escape sequences, but also a few other problems.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

ZeroChars

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Expected 1 char, but 0 were found.

§

MoreThanOneChar

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Expected 1 char, but more than 1 were found.

§

LoneSlash

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Escaped ’' character without continuation.

§

InvalidEscape

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Invalid escape character (e.g. ‘\z’).

§

BareCarriageReturn

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Raw ‘\r’ encountered.

§

BareCarriageReturnInRawString

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Raw ‘\r’ encountered in raw string.

§

EscapeOnlyChar

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Unescaped character that was expected to be escaped (e.g. raw ‘\t’).

§

TooShortHexEscape

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Numeric character escape is too short (e.g. ‘\x1’).

§

InvalidCharInHexEscape

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Invalid character in numeric escape (e.g. ‘\xz’)

§

OutOfRangeHexEscape

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Character code in numeric escape is non-ascii (e.g. ‘\xFF’).

§

NoBraceInUnicodeEscape

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

‘\u’ not followed by ‘{’.

§

InvalidCharInUnicodeEscape

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Non-hexadecimal value in ‘\u{..}’.

§

EmptyUnicodeEscape

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

‘\u{}’

§

UnclosedUnicodeEscape

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

No closing brace in ‘\u{..}’, e.g. ‘\u{12’.

§

LeadingUnderscoreUnicodeEscape

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

‘\u{_12}’

§

OverlongUnicodeEscape

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

More than 6 characters in ‘\u{..}’, e.g. ‘\u{10FFFF_FF}’

§

LoneSurrogateUnicodeEscape

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Invalid in-bound unicode character code, e.g. ‘\u{DFFF}’.

§

OutOfRangeUnicodeEscape

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Out of bounds unicode character code, e.g. ‘\u{FFFFFF}’.

§

UnicodeEscapeInByte

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Unicode escape code in byte literal.

§

NonAsciiCharInByte

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

Non-ascii character in byte literal, byte string literal, or raw byte string literal.

§

NulInCStr

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

\0 in a C string literal.

§

UnskippedWhitespaceWarning

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

After a line ending with ’', the next line contains whitespace characters that are not skipped.

§

MultipleSkippedLinesWarning

🔬This is a nightly-only experimental API. (proc_macro_value #136652)

After a line ending with ’', multiple lines are skipped.

Trait Implementations§

Source§

impl Debug for EscapeError

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for EscapeError

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for EscapeError

Source§

#[doc(hidden)]
fn assert_fields_are_eq(&self)

🔬This is a nightly-only experimental API. (derive_eq_internals)
1.0.0 (const: unstable) · Source§

#[doc(hidden)]
fn assert_receiver_is_total_eq(&self)

👎Deprecated since 1.95.0:

implementation detail of #[derive(Eq)]

Source§

impl Error for EscapeError

1.30.0 · Source§

fn source(&self) -> Option<&(dyn Error + 'static)>

Returns the lower-level source of this error, if any. Read more
Source§

#[doc(hidden)]
fn type_id(&self, _: Internal) -> TypeId
where Self: 'static,

🔬This is a nightly-only experimental API. (error_type_id #60784)
Gets the TypeId of self.
1.0.0 · Source§

fn description(&self) -> &str

👎Deprecated since 1.42.0:

use the Display impl or to_string()

1.0.0 · Source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

Source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access #99301)
Provides type-based access to context intended for error reports. Read more
Source§

impl From<EscapeError> for EscapeError

Source§

fn from(value: EscapeError) -> Self

Converts to this type from the input type.
Source§

impl PartialEq for EscapeError

Source§

fn eq(&self, other: &EscapeError) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for EscapeError

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> SizeHint for T
where T: ?Sized,

Source§

default fn lower_bound(&self) -> usize

🔬This is a nightly-only experimental API. (core_io_internals)
Returns a lower bound on the number of elements this container-like item contains. For example, an array [u8; 12] could return any value between 0 and 12 inclusively as a correct implementation. Read more
Source§

default fn upper_bound(&self) -> Option<usize>

🔬This is a nightly-only experimental API. (core_io_internals)
Returns an upper bound on the number of elements this container-like item contains if it can be determined, otherwise None. Read more
Source§

final fn size_hint(&self) -> (usize, Option<usize>)

🔬This is a nightly-only experimental API. (core_io_internals)
Returns an estimate for the number of elements this container like type contains. Read more
Source§

impl<T> SizedTypeProperties for T

Source§

#[doc(hidden)]
const SIZE: usize = _

🔬This is a nightly-only experimental API. (sized_type_properties)
Source§

#[doc(hidden)]
const ALIGN: usize = _

🔬This is a nightly-only experimental API. (sized_type_properties)
Source§

#[doc(hidden)]
const ALIGNMENT: Alignment = _

🔬This is a nightly-only experimental API. (ptr_alignment_type #102070)
Source§

#[doc(hidden)]
const IS_ZST: bool = _

🔬This is a nightly-only experimental API. (sized_type_properties)
true if this type requires no storage. false if its size is greater than zero. Read more
Source§

#[doc(hidden)]
const LAYOUT: Layout = _

🔬This is a nightly-only experimental API. (sized_type_properties)
Source§

#[doc(hidden)]
const MAX_SLICE_LEN: usize = _

🔬This is a nightly-only experimental API. (sized_type_properties)
The largest safe length for a [Self]. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.