From 5e78c025844809a2f1f4d15c29ce8b4c34b1aae6 Mon Sep 17 00:00:00 2001 From: muzarski Date: Wed, 28 Aug 2024 14:09:24 +0200 Subject: [PATCH] examples/basic: query_unpaged -> query_iter --- examples/basic.rs | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/examples/basic.rs b/examples/basic.rs index c8e5510d8..07f5dec79 100644 --- a/examples/basic.rs +++ b/examples/basic.rs @@ -1,4 +1,6 @@ use anyhow::Result; +use futures::TryStreamExt; +use scylla::frame::response::result::Row; use scylla::macros::FromRow; use scylla::transport::session::Session; use scylla::SessionBuilder; @@ -49,11 +51,11 @@ async fn main() -> Result<()> { .await?; // Rows can be parsed as tuples - let result = session - .query_unpaged("SELECT a, b, c FROM examples_ks.basic", &[]) - .await?; - let mut iter = result.rows_typed::<(i32, i32, String)>()?; - while let Some((a, b, c)) = iter.next().transpose()? { + let mut iter = session + .query_iter("SELECT a, b, c FROM examples_ks.basic", &[]) + .await? + .into_typed::<(i32, i32, String)>(); + while let Some((a, b, c)) = iter.try_next().await? { println!("a, b, c: {}, {}, {}", a, b, c); } @@ -65,20 +67,20 @@ async fn main() -> Result<()> { _c: String, } - let result = session - .query_unpaged("SELECT a, b, c FROM examples_ks.basic", &[]) - .await?; - let mut iter = result.rows_typed::()?; - while let Some(row_data) = iter.next().transpose()? { + let mut iter = session + .query_iter("SELECT a, b, c FROM examples_ks.basic", &[]) + .await? + .into_typed::(); + while let Some(row_data) = iter.try_next().await? { println!("row_data: {:?}", row_data); } // Or simply as untyped rows - let result = session - .query_unpaged("SELECT a, b, c FROM examples_ks.basic", &[]) - .await?; - let rows = result.rows.unwrap(); - for row in rows { + let mut iter = session + .query_iter("SELECT a, b, c FROM examples_ks.basic", &[]) + .await? + .into_typed::(); + while let Some(row) = iter.try_next().await? { let a = row.columns[0].as_ref().unwrap().as_int().unwrap(); let b = row.columns[1].as_ref().unwrap().as_int().unwrap(); let c = row.columns[2].as_ref().unwrap().as_text().unwrap();