From b454faaea25bd6a48a3e7abdfaefc5aaa14932f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sosth=C3=A8ne=20Gu=C3=A9don?= Date: Wed, 24 Jul 2024 16:51:19 +0200 Subject: [PATCH] Add client trait for FsInfo syscall --- extensions/fs-info/src/lib.rs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/extensions/fs-info/src/lib.rs b/extensions/fs-info/src/lib.rs index 1479d1a..9026522 100644 --- a/extensions/fs-info/src/lib.rs +++ b/extensions/fs-info/src/lib.rs @@ -6,7 +6,11 @@ #![deny(unsafe_code)] use serde::{Deserialize, Serialize}; -use trussed::{serde_extensions::Extension, types::Location, Error}; +use trussed::{ + serde_extensions::{Extension, ExtensionClient, ExtensionResult}, + types::Location, + Error, +}; pub struct FsInfoExtension; @@ -74,3 +78,11 @@ impl Extension for FsInfoExtension { type Request = FsInfoExtensionRequest; type Reply = FsInfoExtensionReply; } + +pub type FsInfoResult<'a, R, C> = ExtensionResult<'a, FsInfoExtension, R, C>; + +pub trait FsInfoClient: ExtensionClient { + fn fs_info(&mut self, location: Location) -> FsInfoResult<'_, FsInfoReply, Self> { + self.extension(FsInfoRequest { location }) + } +}