use crate::options::Options;
use super::Allocator;
pub trait Sealed {
type Allocator: Allocator;
fn allocator(&self) -> &Self::Allocator;
}
pub trait Constructor: Sealed {
type Checksumer;
type Id;
fn construct(
fid: Self::Id,
allocator: Self::Allocator,
checksumer: Self::Checksumer,
options: Options,
) -> Self;
}