Trait Escape

Source
pub trait Escape {
    // Required methods
    fn source_len(&self) -> usize;
    fn layout(&self) -> &EscapeLayout;
    fn write_source(&self, formatter: &mut impl Write) -> Result;
    fn write_body_slow(&self, formatter: &mut impl Write) -> Result;

    // Provided methods
    fn changed(&self) -> bool { ... }
    fn write_body(&self, formatter: &mut impl Write) -> Result { ... }
}

Required Methods§

Source

fn source_len(&self) -> usize

Source

fn layout(&self) -> &EscapeLayout

Source

fn write_source(&self, formatter: &mut impl Write) -> Result

Source

fn write_body_slow(&self, formatter: &mut impl Write) -> Result

Provided Methods§

Source

fn changed(&self) -> bool

Source

fn write_body(&self, formatter: &mut impl Write) -> Result

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.

Implementors§

Source§

impl<'a> Escape for AsciiEscape<'a>

Source§

impl<'a> Escape for UnicodeEscape<'a>