Trait scpi::parser::response::Formatter

source ·
pub trait Formatter {
    // Required methods
    fn push_str(&mut self, s: &[u8]) -> Result<()>;
    fn push_byte(&mut self, b: u8) -> Result<()>;
    fn as_slice(&self) -> &[u8];
    fn clear(&mut self);
    fn len(&self) -> usize;
    fn message_start(&mut self) -> Result<()>;
    fn message_end(&mut self) -> Result<()>;
    fn response_unit(&mut self) -> Result<ResponseUnit<'_>>;

    // Provided methods
    fn push_ascii(&mut self, s: &[u8]) -> Result<()> { ... }
    fn is_empty(&self) -> bool { ... }
    fn data_separator(&mut self) -> Result<()> { ... }
    fn header_separator(&mut self) -> Result<()> { ... }
}
Expand description

Formats a SCPI response

Required Methods§

source

fn push_str(&mut self, s: &[u8]) -> Result<()>

Push raw string to output

source

fn push_byte(&mut self, b: u8) -> Result<()>

Push single byte to output

source

fn as_slice(&self) -> &[u8]

Get underlying buffer as a byte slice

source

fn clear(&mut self)

Clear buffer

source

fn len(&self) -> usize

Returns length of buffer

source

fn message_start(&mut self) -> Result<()>

Start a response message

source

fn message_end(&mut self) -> Result<()>

End a response message

source

fn response_unit(&mut self) -> Result<ResponseUnit<'_>>

Provided Methods§

source

fn push_ascii(&mut self, s: &[u8]) -> Result<()>

Push ascii to output, panics if

source

fn is_empty(&self) -> bool

source

fn data_separator(&mut self) -> Result<()>

Insert a data separator

source

fn header_separator(&mut self) -> Result<()>

Insert a data separator

Implementations on Foreign Types§

source§

impl Formatter for Vec<u8>

source§

fn push_str(&mut self, s: &[u8]) -> Result<()>

Internal use

source§

fn push_byte(&mut self, b: u8) -> Result<()>

source§

fn as_slice(&self) -> &[u8]

source§

fn clear(&mut self)

source§

fn len(&self) -> usize

source§

fn message_start(&mut self) -> Result<()>

source§

fn message_end(&mut self) -> Result<()>

source§

fn response_unit(&mut self) -> Result<ResponseUnit<'_>>

Implementors§