pub struct Core<'a, L> { /* private fields */ }Expand description
The main processing loop
Implementations
sourceimpl<'a, L> Core<'a, L> where
L: LineParser<'a>,
impl<'a, L> Core<'a, L> where
L: LineParser<'a>,
sourcepub fn new(
config: &'a CoreConfig<'_>,
fields: &'a [FieldRange],
line_parser: L,
line_buffer: &'a mut LineBuffer
) -> Self
pub fn new(
config: &'a CoreConfig<'_>,
fields: &'a [FieldRange],
line_parser: L,
line_buffer: &'a mut LineBuffer
) -> Self
Create a new “core” the can be used to parse multiple inputs
pub fn hck_input<P, W>(
&mut self,
input: HckInput<P>,
output: W,
header: Option<Vec<u8>>
) -> Result<(), Error> where
P: AsRef<Path>,
W: Write,
sourcepub fn hck_bytes<W>(&mut self, bytes: &[u8], output: W) -> Result<(), Error> where
W: Write,
pub fn hck_bytes<W>(&mut self, bytes: &[u8], output: W) -> Result<(), Error> where
W: Write,
Iterate over the lines in a slice of bytes.
The input slice of bytes is assumed to end in a newline.
sourcepub fn hck_bytes_fast<W: Write>(
&mut self,
bytes: &[u8],
output: W
) -> Result<(), Error>
pub fn hck_bytes_fast<W: Write>(
&mut self,
bytes: &[u8],
output: W
) -> Result<(), Error>
Fast mode iteration over lines in a slice of bytes.
This expects the seperator to be a single byte and the newline to be a singel byte.
Instead of seaching for linebreaks, then splitting up the line on the sep,
fast mode looks for either sep or newline at the same time, so instead of two passes
over the bytes we only make one pass.
sourcepub fn hck_reader_fast<R: Read, W: Write>(
&mut self,
reader: R,
output: W
) -> Result<(), Error>
pub fn hck_reader_fast<R: Read, W: Write>(
&mut self,
reader: R,
output: W
) -> Result<(), Error>
Fast mode iteration over lines in a reader.
This expects the separator to be a single byte and the newline to be a single byte.
Instead of seaching for linebreaks, then splitting up the line on the sep,
fast mode looks for either sep or newline at the same time, so instead of two passes
over the bytes we only make one pass.
Auto Trait Implementations
impl<'a, L> RefUnwindSafe for Core<'a, L> where
L: RefUnwindSafe,
impl<'a, L> Send for Core<'a, L> where
L: Send,
impl<'a, L> Sync for Core<'a, L> where
L: Sync,
impl<'a, L> Unpin for Core<'a, L> where
L: Unpin,
impl<'a, L> !UnwindSafe for Core<'a, L>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more