Trait tendril::fmt::Format
[−]
[src]
pub unsafe trait Format { fn validate(buf: &[u8]) -> bool; fn validate_prefix(buf: &[u8]) -> bool { ... } fn validate_suffix(buf: &[u8]) -> bool { ... } fn validate_subseq(buf: &[u8]) -> bool { ... } unsafe fn fixup(_lhs: &[u8], _rhs: &[u8]) -> Fixup { ... } }
Trait for format marker types.
The type implementing this trait is usually not instantiated.
It's used with a phantom type parameter of Tendril
.
Required Methods
Provided Methods
fn validate_prefix(buf: &[u8]) -> bool
Check whether the buffer is valid for this format.
You may assume the buffer is a prefix of a valid buffer.
fn validate_suffix(buf: &[u8]) -> bool
Check whether the buffer is valid for this format.
You may assume the buffer is a suffix of a valid buffer.
fn validate_subseq(buf: &[u8]) -> bool
Check whether the buffer is valid for this format.
You may assume the buffer is a contiguous subsequence of a valid buffer, but not necessarily a prefix or a suffix.
unsafe fn fixup(_lhs: &[u8], _rhs: &[u8]) -> Fixup
Compute any fixup needed when concatenating buffers.
The default is to do nothing.
The function is unsafe
because it may assume the input
buffers are already valid for the format. Also, no
bounds-checking is performed on the return value!