mirror of
https://github.com/denoland/deno.git
synced 2024-12-27 17:49:08 -05:00
2d9298f5f5
This commit updates the ext/kv module to use the denokv_* crates for the protocol and the sqlite backend. This also fixes a couple of bugs in the sqlite backend, and updates versionstamps to be updated less linearly.
20 lines
439 B
Rust
20 lines
439 B
Rust
// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
|
|
|
|
use std::cell::RefCell;
|
|
use std::rc::Rc;
|
|
|
|
use async_trait::async_trait;
|
|
use deno_core::error::AnyError;
|
|
use deno_core::OpState;
|
|
use denokv_proto::Database;
|
|
|
|
#[async_trait(?Send)]
|
|
pub trait DatabaseHandler {
|
|
type DB: Database + 'static;
|
|
|
|
async fn open(
|
|
&self,
|
|
state: Rc<RefCell<OpState>>,
|
|
path: Option<String>,
|
|
) -> Result<Self::DB, AnyError>;
|
|
}
|