pub struct Buffer { /* private fields */ }
Expand description
Buffer handler responsible for storing slitted JSONs into memory
Implementations§
Source§impl Buffer
impl Buffer
Sourcepub fn set_use_path(self, use_path: bool) -> Self
pub fn set_use_path(self, use_path: bool) -> Self
Sourcepub fn pop(&mut self) -> Option<(Option<String>, Vec<u8>)>
pub fn pop(&mut self) -> Option<(Option<String>, Vec<u8>)>
Pops the oldest value in the buffer
§Returns
None
- queue is emptySome((path, data))
- stored data remove from the queue and returned
§Example
use streamson_lib::handler;
let mut buffer = handler::buffer::Buffer::new().set_use_path(true);
while let Some((path, data)) = buffer.pop() {
// Do something with the data
println!("{} (len {})", path.unwrap(), data.len());
}
Sourcepub fn set_max_buffer_size(self, max_size: Option<usize>) -> Self
pub fn set_max_buffer_size(self, max_size: Option<usize>) -> Self
Trait Implementations§
Source§impl Handler for Buffer
impl Handler for Buffer
Source§fn start(
&mut self,
_path: &Path,
_matcher_idx: usize,
token: Token,
) -> Result<Option<Vec<u8>>, Handler>
fn start( &mut self, _path: &Path, _matcher_idx: usize, token: Token, ) -> Result<Option<Vec<u8>>, Handler>
Is called when a path is matched Read more
Source§fn feed(
&mut self,
data: &[u8],
_matcher_idx: usize,
) -> Result<Option<Vec<u8>>, Handler>
fn feed( &mut self, data: &[u8], _matcher_idx: usize, ) -> Result<Option<Vec<u8>>, Handler>
Is called when handler receives some data Read more
Source§fn end(
&mut self,
_path: &Path,
_matcher_idx: usize,
token: Token,
) -> Result<Option<Vec<u8>>, Handler>
fn end( &mut self, _path: &Path, _matcher_idx: usize, token: Token, ) -> Result<Option<Vec<u8>>, Handler>
Is called when the path is no longer matched Read more
Source§fn is_converter(&self) -> bool
fn is_converter(&self) -> bool
Should be handler used to convert data
Auto Trait Implementations§
impl Freeze for Buffer
impl RefUnwindSafe for Buffer
impl Send for Buffer
impl Sync for Buffer
impl Unpin for Buffer
impl UnwindSafe for Buffer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more