From 268c970f13e86a5a9bef6585c03f392fc625dfe1 Mon Sep 17 00:00:00 2001 From: Frando Date: Wed, 24 Sep 2025 09:11:27 +0200 Subject: [PATCH] feat: impl From for api::Store --- src/store/fs.rs | 6 ++++++ src/store/mem.rs | 6 ++++++ src/store/readonly_mem.rs | 12 ++++++++++++ 3 files changed, 24 insertions(+) diff --git a/src/store/fs.rs b/src/store/fs.rs index e7f16387e..48946abd6 100644 --- a/src/store/fs.rs +++ b/src/store/fs.rs @@ -1446,6 +1446,12 @@ pub struct FsStore { db: tokio::sync::mpsc::Sender, } +impl From for Store { + fn from(value: FsStore) -> Self { + Store::from_sender(value.sender) + } +} + impl Deref for FsStore { type Target = Store; diff --git a/src/store/mem.rs b/src/store/mem.rs index eccd1416b..e5529e7fa 100644 --- a/src/store/mem.rs +++ b/src/store/mem.rs @@ -74,6 +74,12 @@ pub struct MemStore { client: ApiClient, } +impl From for crate::api::Store { + fn from(value: MemStore) -> Self { + crate::api::Store::from_sender(value.client) + } +} + impl AsRef for MemStore { fn as_ref(&self) -> &crate::api::Store { crate::api::Store::ref_from_sender(&self.client) diff --git a/src/store/readonly_mem.rs b/src/store/readonly_mem.rs index 0d9b19367..cb46228cd 100644 --- a/src/store/readonly_mem.rs +++ b/src/store/readonly_mem.rs @@ -59,6 +59,18 @@ impl Deref for ReadonlyMemStore { } } +impl From for crate::api::Store { + fn from(value: ReadonlyMemStore) -> Self { + crate::api::Store::from_sender(value.client) + } +} + +impl AsRef for ReadonlyMemStore { + fn as_ref(&self) -> &crate::api::Store { + crate::api::Store::ref_from_sender(&self.client) + } +} + struct Actor { commands: tokio::sync::mpsc::Receiver, tasks: JoinSet<()>,