pub struct RowStream<'a> { /* private fields */ }Expand description
Stream síncrono sobre as linhas de um cursor aberto, criado por
Statement::rows. Entrega uma linha por vez via Self::try_next, buscando
lotes do servidor sob demanda — não materializa o resultado inteiro.
É um lending iterator (try_next(&mut self)), não um Iterator padrão: como
o stream toma &mut Connection emprestado, a conexão fica presa ao cursor
enquanto o stream existir. Para a maioria dos usos, o laço
while let Some(row) = rows.try_next()? é suficiente; há também
Self::try_collect e Self::try_for_each.
Implementations§
Source§impl RowStream<'_>
impl RowStream<'_>
Sourcepub fn try_next(&mut self) -> Result<Option<Vec<Value>>>
pub fn try_next(&mut self) -> Result<Option<Vec<Value>>>
A próxima linha, ou None no fim do cursor.
Sourcepub fn next(&mut self) -> Result<Option<Vec<Value>>>
pub fn next(&mut self) -> Result<Option<Vec<Value>>>
A próxima linha, ou None no fim do cursor.
Prefera Self::try_next em código novo; este método fica como alias
compatível para exemplos/código existentes.
Sourcepub fn try_collect(self) -> Result<Vec<Vec<Value>>>
pub fn try_collect(self) -> Result<Vec<Vec<Value>>>
Coleta todas as linhas restantes num vetor (equivalente a
Statement::fetch_all, mas consumindo o stream).