about summary refs log tree commit diff
path: root/tvix/store/src/fuse/mod.rs
blob: a93f482ebff6f0d95bf38beb3db99b9701b5189d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
use crate::{
    blobservice::BlobService, directoryservice::DirectoryService, pathinfoservice::PathInfoService,
};

pub struct FUSE<BS: BlobService, DS: DirectoryService, PS: PathInfoService> {
    blob_service: BS,
    directory_service: DS,
    path_info_service: PS,
}

impl<BS: BlobService, DS: DirectoryService, PS: PathInfoService> FUSE<BS, DS, PS> {
    pub fn new(path_info_service: PS, directory_service: DS, blob_service: BS) -> Self {
        Self {
            blob_service,
            path_info_service,
            directory_service,
        }
    }
}

impl<BS: BlobService, DS: DirectoryService, PS: PathInfoService> fuser::Filesystem
    for FUSE<BS, DS, PS>
{
}