diff --git a/bindings/wasm/lib.rs b/bindings/wasm/lib.rs index 2e1d0dd22..036a7ad1d 100644 --- a/bindings/wasm/lib.rs +++ b/bindings/wasm/lib.rs @@ -57,10 +57,7 @@ impl Statement { #[wasm_bindgen] pub fn raw(mut self, toggle: Option) -> Self { - self.raw = match toggle { - Some(toggle) => toggle, - None => true, - }; + self.raw = toggle.unwrap_or(true); self } diff --git a/core/io/linux.rs b/core/io/linux.rs index 3a2de5f42..fde8a9616 100644 --- a/core/io/linux.rs +++ b/core/io/linux.rs @@ -70,7 +70,7 @@ impl LinuxIO { } impl InnerLinuxIO { - pub fn get_iovec<'a>(&'a mut self, buf: *const u8, len: usize) -> &'a iovec { + pub fn get_iovec(&mut self, buf: *const u8, len: usize) -> &iovec { let iovec = &mut self.iovecs[self.next_iovec]; iovec.iov_base = buf as *mut std::ffi::c_void; iovec.iov_len = len; diff --git a/core/lib.rs b/core/lib.rs index c1dccaa14..b7344c260 100644 --- a/core/lib.rs +++ b/core/lib.rs @@ -187,7 +187,7 @@ impl Connection { match cmd { Cmd::Stmt(stmt) => { let program = Rc::new(translate::translate( - &*self.schema.borrow(), + &self.schema.borrow(), stmt, self.header.clone(), self.pager.clone(), @@ -212,18 +212,18 @@ impl Connection { match cmd { Cmd::Stmt(stmt) => { let program = Rc::new(translate::translate( - &*self.schema.borrow(), + &self.schema.borrow(), stmt, self.header.clone(), self.pager.clone(), - Rc::downgrade(&self), + Rc::downgrade(self), )?); let stmt = Statement::new(program, self.pager.clone()); Ok(Some(Rows { stmt })) } Cmd::Explain(stmt) => { let program = translate::translate( - &*self.schema.borrow(), + &self.schema.borrow(), stmt, self.header.clone(), self.pager.clone(), @@ -235,7 +235,7 @@ impl Connection { Cmd::ExplainQueryPlan(stmt) => { match stmt { ast::Stmt::Select(select) => { - let plan = prepare_select_plan(&*self.schema.borrow(), select)?; + let plan = prepare_select_plan(&self.schema.borrow(), select)?; let (plan, _) = optimize_plan(plan)?; println!("{}", plan); } @@ -257,7 +257,7 @@ impl Connection { match cmd { Cmd::Explain(stmt) => { let program = translate::translate( - &*self.schema.borrow(), + &self.schema.borrow(), stmt, self.header.clone(), self.pager.clone(), @@ -268,7 +268,7 @@ impl Connection { Cmd::ExplainQueryPlan(_stmt) => todo!(), Cmd::Stmt(stmt) => { let program = translate::translate( - &*self.schema.borrow(), + &self.schema.borrow(), stmt, self.header.clone(), self.pager.clone(), diff --git a/core/storage/btree.rs b/core/storage/btree.rs index b3298ecc4..3a7c833fa 100644 --- a/core/storage/btree.rs +++ b/core/storage/btree.rs @@ -273,7 +273,7 @@ impl BTreeCursor { } } - if cell_idx >= contents.cell_count() + 1 { + if cell_idx > contents.cell_count() { // end let has_parent = self.stack.current() > 0; if has_parent { @@ -876,7 +876,7 @@ impl BTreeCursor { .insert(overflow_cell.index, to_static_buf(&overflow_cell.payload)); } *self.write_info.rightmost_pointer.borrow_mut() = - page_copy.rightmost_pointer().clone(); + page_copy.rightmost_pointer(); self.write_info.page_copy.replace(Some(page_copy)); @@ -1222,7 +1222,7 @@ impl BTreeCursor { fn allocate_page(&self, page_type: PageType, offset: usize) -> Rc> { let page = self.pager.allocate_page().unwrap(); - btree_init_page(&page, page_type, &*self.database_header.borrow(), offset); + btree_init_page(&page, page_type, &self.database_header.borrow(), offset); page } @@ -1423,7 +1423,7 @@ impl BTreeCursor { // return SQLITE_CORRUPT_PAGE(pPage); // } // don't count header and cell pointers? - nfree = nfree - first_cell as usize; + nfree -= first_cell as usize; nfree as u16 } diff --git a/core/storage/sqlite3_ondisk.rs b/core/storage/sqlite3_ondisk.rs index 590f94a86..bdfa09832 100644 --- a/core/storage/sqlite3_ondisk.rs +++ b/core/storage/sqlite3_ondisk.rs @@ -48,7 +48,6 @@ use crate::storage::database::DatabaseStorage; use crate::storage::pager::{Page, Pager}; use crate::types::{OwnedRecord, OwnedValue}; use crate::{File, Result}; -use cfg_block::cfg_block; use log::trace; use std::cell::RefCell; use std::pin::Pin; diff --git a/core/storage/wal.rs b/core/storage/wal.rs index b86e06efb..774e57cc9 100644 --- a/core/storage/wal.rs +++ b/core/storage/wal.rs @@ -159,7 +159,7 @@ impl Wal for WalFile { &page, db_size, write_counter, - &*header, + &header, checksums, )?; self.last_checksum.replace(checksums); @@ -235,9 +235,9 @@ impl Wal for WalFile { } if *self.syncing.borrow() { - return Ok(CheckpointStatus::IO); + Ok(CheckpointStatus::IO) } else { - return Ok(CheckpointStatus::Done); + Ok(CheckpointStatus::Done) } } } diff --git a/core/vdbe/mod.rs b/core/vdbe/mod.rs index 2b2033405..033cd0de5 100644 --- a/core/vdbe/mod.rs +++ b/core/vdbe/mod.rs @@ -2227,7 +2227,7 @@ impl Program { let rows = Rows { stmt }; let mut schema = RefCell::borrow_mut(&conn.schema); // TODO: This function below is synchronous, make it not async - parse_schema_rows(Some(rows), &mut *schema, conn.pager.io.clone())?; + parse_schema_rows(Some(rows), &mut schema, conn.pager.io.clone())?; state.pc += 1; } } diff --git a/simulator/main.rs b/simulator/main.rs index c09ea508e..3b7a5e404 100644 --- a/simulator/main.rs +++ b/simulator/main.rs @@ -1,5 +1,4 @@ use limbo_core::{Connection, Database, File, OpenFlags, PlatformIO, Result, RowResult, IO}; -use log; use rand::prelude::*; use rand_chacha::ChaCha8Rng; use std::cell::RefCell; @@ -279,7 +278,7 @@ fn gen_random_text(env: &mut SimulatorEnv) -> String { let size = env.rng.gen_range(1024..max_size); let mut name = String::new(); for i in 0..size { - name.push(((i % 26) as u8 + 'A' as u8) as char); + name.push(((i % 26) as u8 + b'A') as char); } name } else { @@ -527,7 +526,7 @@ impl limbo_core::File for SimulatorFile { } fn size(&self) -> Result { - Ok(self.inner.size()?) + self.inner.size() } } @@ -573,7 +572,7 @@ impl Value { Value::Integer(i) => i.to_string(), Value::Float(f) => f.to_string(), Value::Text(t) => format!("'{}'", t.clone()), - Value::Blob(vec) => to_sqlite_blob(&vec), + Value::Blob(vec) => to_sqlite_blob(vec), } } } diff --git a/test/src/lib.rs b/test/src/lib.rs index 63ee44f1f..1f338bb37 100644 --- a/test/src/lib.rs +++ b/test/src/lib.rs @@ -340,8 +340,8 @@ mod tests { log::debug!("counting"); let list_query = "SELECT count(x) FROM test"; loop { - match conn.query(list_query).unwrap() { - Some(ref mut rows) => loop { + if let Some(ref mut rows) = conn.query(list_query).unwrap() { + loop { match rows.next_row()? { RowResult::Row(row) => { let first_value = &row.values[0]; @@ -357,8 +357,7 @@ mod tests { } RowResult::Done => break, } - }, - None => {} + } } } }