pub struct ParameterBuffer { /* private fields */ }Expand description
Um buffer de parâmetros (DPB/TPB/SPB/BPB) construído como uma sequência de clumplets.
Os clumplets “tradicionais” são tag(1) + length(1) + value. A versão 2 do DPB
do Firebird, em vez disso, usa comprimentos de 4 bytes; este construtor segue a forma clássica
de 1 byte que todo servidor ainda aceita para os itens que emitimos.
Implementations§
Source§impl ParameterBuffer
impl ParameterBuffer
Sourcepub fn new(version: u8) -> Self
pub fn new(version: u8) -> Self
Inicia um buffer com o byte de versão fornecido (ex.: DPB_VERSION1).
pub fn is_empty(&self) -> bool
Sourcepub fn bytes(&mut self, tag: u8, value: &[u8]) -> &mut Self
pub fn bytes(&mut self, tag: u8, value: &[u8]) -> &mut Self
tag + len + bytes, comprimento codificado como um único byte (valor <= 255).
pub fn string(&mut self, tag: u8, value: &str) -> &mut Self
Sourcepub fn int(&mut self, tag: u8, value: i32) -> &mut Self
pub fn int(&mut self, tag: u8, value: i32) -> &mut Self
Um clumplet cujo valor é um inteiro little-endian de largura mínima. Os inteiros do buffer de parâmetros do Firebird são little-endian (diferente do quadro XDR), codificados com o menor número de bytes que cabem.
Sourcepub fn int_u32(&mut self, tag: u8, value: u32) -> &mut Self
pub fn int_u32(&mut self, tag: u8, value: u32) -> &mut Self
Um clumplet que carrega um valor u32 little-endian de largura fixa.
Sourcepub fn int_u64(&mut self, tag: u8, value: u64) -> &mut Self
pub fn int_u64(&mut self, tag: u8, value: u64) -> &mut Self
Um clumplet que carrega um valor u64 little-endian de largura fixa (batch PB).
Sourcepub fn bytes_be_len4(&mut self, tag: u8, value: &[u8]) -> &mut Self
pub fn bytes_be_len4(&mut self, tag: u8, value: &[u8]) -> &mut Self
tag + len + bytes usando um comprimento little-endian de 4 bytes, conforme exigido
pelos itens de comprimento variável do batch parameter buffer.
pub fn as_slice(&self) -> &[u8] ⓘ
pub fn into_vec(self) -> Vec<u8> ⓘ
Trait Implementations§
Source§impl Clone for ParameterBuffer
impl Clone for ParameterBuffer
Source§fn clone(&self) -> ParameterBuffer
fn clone(&self) -> ParameterBuffer
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more