wasm_sql/core/bindings/
query_results.rs1use crate::{
2 core::bindings::{SqlHostState, generated::wasm_sql::core::query_types::QueryResults},
3 sqldb::SqlDatabase,
4};
5
6#[allow(unused)]
7pub struct QueryResultsImpl {
8 pub(crate) results: Vec<<SqlDatabase as sqlx::Database>::Row>,
9}
10
11impl crate::core::bindings::generated::wasm_sql::core::query_types::HostQueryResults
12 for SqlHostState
13{
14 fn row_count(
15 &mut self,
16 self_: wasmtime::component::Resource<QueryResults>,
17 ) -> Result<u64, wasmtime::Error> {
18 let a = self.table.get(&self_)?;
19
20 Ok(a.results.len() as u64)
21 }
22
23 fn drop(&mut self, rep: wasmtime::component::Resource<QueryResults>) -> wasmtime::Result<()> {
24 self.table.delete(rep)?;
25
26 Ok(())
27 }
28}