zero_postgres/
buffer_set.rs

1//! Buffer set for state machine operations.
2
3/// Buffer set for state machine operations.
4pub struct BufferSet {
5    /// Read buffer for incoming messages
6    pub read_buffer: Vec<u8>,
7    /// Write buffer for outgoing messages
8    pub write_buffer: Vec<u8>,
9    /// Column buffer for storing RowDescription payload
10    pub column_buffer: Vec<u8>,
11    /// Type byte of the last message read
12    pub type_byte: u8,
13}
14
15impl BufferSet {
16    /// Create a new buffer set.
17    pub fn new() -> Self {
18        Self {
19            read_buffer: Vec::with_capacity(8192),
20            write_buffer: Vec::with_capacity(8192),
21            column_buffer: Vec::with_capacity(512),
22            type_byte: 0,
23        }
24    }
25}
26
27impl Default for BufferSet {
28    fn default() -> Self {
29        Self::new()
30    }
31}