pub struct SnixDaemon {
pub(crate) blob_service: Arc<dyn BlobService>,
pub(crate) directory_service: Arc<dyn DirectoryService>,
pub(crate) path_info_service: Arc<dyn PathInfoService>,
}Fields§
§blob_service: Arc<dyn BlobService>§directory_service: Arc<dyn DirectoryService>§path_info_service: Arc<dyn PathInfoService>Implementations§
Source§impl SnixDaemon
impl SnixDaemon
pub fn new( blob_service: Arc<dyn BlobService>, directory_service: Arc<dyn DirectoryService>, path_info_service: Arc<dyn PathInfoService>, ) -> Self
Trait Implementations§
Source§impl NixDaemonIO for SnixDaemon
Implements NixDaemonIO backed by snix services.
impl NixDaemonIO for SnixDaemon
Implements NixDaemonIO backed by snix services.
async fn query_path_info( &self, path: &StorePath, ) -> Result<Option<UnkeyedValidPathInfo>>
async fn query_path_from_hash_part( &self, hash: &[u8], ) -> Result<Option<UnkeyedValidPathInfo>>
async fn add_to_store_nar<R>( &self, info: ValidPathInfo, reader: &mut R, _repair: bool, _dont_check_sigs: bool, ) -> Result<()>
async fn nar_from_path( &self, path: &StorePath, ) -> Result<Box<dyn AsyncBufRead + Unpin + Send>>
async fn build_paths( &self, _derived_paths: Vec<DerivedPath>, _mode: BuildMode, ) -> Result<()>
async fn build_paths_with_results( &self, _derived_paths: Vec<DerivedPath>, _mode: BuildMode, ) -> Result<Vec<KeyedBuildResult>>
async fn query_missing( &self, _derived_paths: Vec<DerivedPath>, ) -> Result<QueryMissingResult>
async fn query_derivation_output_map( &self, _drv_path: &StorePath, ) -> Result<BTreeMap<OutputName, Option<StorePath>>>
fn is_valid_path( &self, path: &StorePath, ) -> impl Future<Output = Result<bool, Error>> + Send
fn ensure_path( &self, path: &StorePath, ) -> impl Future<Output = Result<(), Error>> + Send
fn query_valid_paths( &self, request: &QueryValidPaths, ) -> impl Future<Output = Result<Vec<StorePath>, Error>> + Send
fn query_valid_derivers( &self, path: &StorePath, ) -> impl Future<Output = Result<Vec<StorePath>, Error>> + Send
Auto Trait Implementations§
impl Freeze for SnixDaemon
impl !RefUnwindSafe for SnixDaemon
impl Send for SnixDaemon
impl Sync for SnixDaemon
impl Unpin for SnixDaemon
impl UnsafeUnpin for SnixDaemon
impl !UnwindSafe for SnixDaemon
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestCreates a shared type from an unshared type.
§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].