pub struct ArchiveLayerStore<M, D> { /* private fields */ }Implementations§
Source§impl<M, D> ArchiveLayerStore<M, D>
impl<M, D> ArchiveLayerStore<M, D>
pub fn new(metadata_backend: M, data_backend: D) -> ArchiveLayerStore<M, D>
Trait Implementations§
Source§impl<M: Clone, D: Clone> Clone for ArchiveLayerStore<M, D>
impl<M: Clone, D: Clone> Clone for ArchiveLayerStore<M, D>
Source§fn clone(&self) -> ArchiveLayerStore<M, D>
fn clone(&self) -> ArchiveLayerStore<M, D>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<M: ArchiveMetadataBackend + Unpin + 'static, D: ArchiveBackend + 'static> PersistentLayerStore for ArchiveLayerStore<M, D>
impl<M: ArchiveMetadataBackend + Unpin + 'static, D: ArchiveBackend + 'static> PersistentLayerStore for ArchiveLayerStore<M, D>
type File = ArchiveLayerHandle<M, D>
fn directories<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<[u32; 5]>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn create_named_directory<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn directory_exists<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_file<'life0, 'life1, 'async_trait>(
&'life0 self,
directory: [u32; 5],
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Self::File>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn file_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
directory: [u32; 5],
file: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn finalize<'life0, 'async_trait>(
&'life0 self,
directory: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn layer_parent<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<[u32; 5]>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn create_directory<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn layer_has_rollup<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn layer_has_parent<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn base_layer_files<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<BaseLayerFiles<Self::File>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn child_layer_files<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<ChildLayerFiles<Self::File>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn write_parent_file<'life0, 'async_trait>(
&'life0 self,
dir_name: [u32; 5],
parent_name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn read_parent_file<'life0, 'async_trait>(
&'life0 self,
dir_name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn write_rollup_file<'life0, 'async_trait>(
&'life0 self,
dir_name: [u32; 5],
rollup_name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn read_rollup_file<'life0, 'async_trait>(
&'life0 self,
dir_name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn create_child_layer_files_with_cache<'life0, 'async_trait>(
&'life0 self,
parent: [u32; 5],
cache: Arc<dyn LayerCache>,
) -> Pin<Box<dyn Future<Output = Result<([u32; 5], Arc<InternalLayer>, ChildLayerFiles<Self::File>)>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn node_dictionary_files<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<DictionaryFiles<Self::File>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn predicate_dictionary_files<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<DictionaryFiles<Self::File>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn value_dictionary_files<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<TypedDictionaryFiles<Self::File>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn node_value_idmap_files<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<BitIndexFiles<Self::File>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn predicate_idmap_files<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<BitIndexFiles<Self::File>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn triple_addition_files<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<(Self::File, AdjacencyListFiles<Self::File>, AdjacencyListFiles<Self::File>)>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn triple_removal_files<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<(Self::File, AdjacencyListFiles<Self::File>, AdjacencyListFiles<Self::File>)>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn predicate_wavelet_addition_files<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<BitIndexFiles<Self::File>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn predicate_wavelet_removal_files<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<BitIndexFiles<Self::File>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn triple_addition_files_by_object<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<(Self::File, Self::File, AdjacencyListFiles<Self::File>, AdjacencyListFiles<Self::File>)>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn triple_removal_files_by_object<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<(Self::File, Self::File, AdjacencyListFiles<Self::File>, AdjacencyListFiles<Self::File>)>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn triple_layer_addition_count_files<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<(Self::File, Self::File, BitIndexFiles<Self::File>)>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn triple_layer_removal_count_files<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<(Self::File, Self::File, BitIndexFiles<Self::File>)>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Auto Trait Implementations§
impl<M, D> Freeze for ArchiveLayerStore<M, D>
impl<M, D> RefUnwindSafe for ArchiveLayerStore<M, D>where
M: RefUnwindSafe,
D: RefUnwindSafe,
impl<M, D> Send for ArchiveLayerStore<M, D>
impl<M, D> Sync for ArchiveLayerStore<M, D>
impl<M, D> Unpin for ArchiveLayerStore<M, D>
impl<M, D> UnsafeUnpin for ArchiveLayerStore<M, D>where
M: UnsafeUnpin,
D: UnsafeUnpin,
impl<M, D> UnwindSafe for ArchiveLayerStore<M, D>where
M: UnwindSafe,
D: UnwindSafe,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Casts the value.
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
Causes
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
Causes
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
Causes
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
Causes
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
Causes
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
Causes
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
Causes
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
Causes
self to use its UpperHex implementation when
Debug-formatted.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 moreSource§impl<F, T> LayerStore for T
impl<F, T> LayerStore for T
fn layers<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<[u32; 5]>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn get_layer_with_cache<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
cache: Arc<dyn LayerCache>,
) -> Pin<Box<dyn Future<Output = Result<Option<Arc<InternalLayer>>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn finalize_layer<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn get_layer_parent_name<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<[u32; 5]>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn get_node_dictionary<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<StringDict>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn get_predicate_dictionary<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<StringDict>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn get_value_dictionary<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<TypedDict>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn get_node_count<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<u64>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn get_predicate_count<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<u64>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn get_value_count<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<u64>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn get_node_value_idmap<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<IdMap>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn get_predicate_idmap<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<IdMap>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn create_base_layer<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn LayerBuilder>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn create_child_layer_with_cache<'life0, 'async_trait>(
&'life0 self,
parent: [u32; 5],
cache: Arc<dyn LayerCache>,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn LayerBuilder>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn perform_rollup<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
) -> Pin<Box<dyn Future<Output = Result<[u32; 5], Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn perform_rollup_upto_with_cache<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
upto: [u32; 5],
cache: Arc<dyn LayerCache>,
) -> Pin<Box<dyn Future<Output = Result<[u32; 5], Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn perform_imprecise_rollup_upto_with_cache<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
upto: [u32; 5],
cache: Arc<dyn LayerCache>,
) -> Pin<Box<dyn Future<Output = Result<[u32; 5], Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn register_rollup<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
rollup: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn squash<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
) -> Pin<Box<dyn Future<Output = Result<[u32; 5], Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn squash_upto<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
upto: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<[u32; 5], Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn merge_base_layer<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
layers: &'life1 [[u32; 5]],
temp_path: &'life2 Path,
) -> Pin<Box<dyn Future<Output = Result<[u32; 5], Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
T: 'async_trait,
fn layer_is_ancestor_of<'life0, 'async_trait>(
&'life0 self,
descendant: [u32; 5],
ancestor: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<bool, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_addition_exists<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
subject: u64,
predicate: u64,
object: u64,
) -> Pin<Box<dyn Future<Output = Result<bool, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_removal_exists<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
subject: u64,
predicate: u64,
object: u64,
) -> Pin<Box<dyn Future<Output = Result<bool, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_additions<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<OptInternalLayerTripleSubjectIterator, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_removals<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<OptInternalLayerTripleSubjectIterator, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_additions_s<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
subject: u64,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Iterator<Item = IdTriple> + Send>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_removals_s<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
subject: u64,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Iterator<Item = IdTriple> + Send>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_additions_sp<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
subject: u64,
predicate: u64,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Iterator<Item = IdTriple> + Send>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_removals_sp<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
subject: u64,
predicate: u64,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Iterator<Item = IdTriple> + Send>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_additions_p<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
predicate: u64,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Iterator<Item = IdTriple> + Send>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_removals_p<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
predicate: u64,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Iterator<Item = IdTriple> + Send>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_additions_o<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
object: u64,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Iterator<Item = IdTriple> + Send>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_removals_o<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
object: u64,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Iterator<Item = IdTriple> + Send>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_layer_addition_count<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<usize, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn triple_layer_removal_count<'life0, 'async_trait>(
&'life0 self,
layer: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<usize, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn retrieve_layer_stack_names<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Vec<[u32; 5]>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn retrieve_layer_stack_names_upto<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
upto: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Vec<[u32; 5]>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn get_layer<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Option<Arc<InternalLayer>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn create_child_layer<'life0, 'async_trait>(
&'life0 self,
parent: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<Box<dyn LayerBuilder>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn perform_rollup_upto<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
upto: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn perform_imprecise_rollup_upto<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
upto: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§fn rollup<'async_trait>(
self: Arc<Self>,
layer: Arc<InternalLayer>,
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
fn rollup<'async_trait>(
self: Arc<Self>,
layer: Arc<InternalLayer>,
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
Create a new rollup layer which rolls up all triples in the given layer, as well as all its ancestors. Read more
fn rollup_upto_with_cache<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
upto: [u32; 5],
cache: Arc<dyn LayerCache>,
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§fn rollup_upto<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
upto: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn rollup_upto<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
upto: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Create a new rollup layer which rolls up all triples in the given layer, as well as all ancestors up to (but not including) the given ancestor. Read more
fn imprecise_rollup_upto_with_cache<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
upto: [u32; 5],
cache: Arc<dyn LayerCache>,
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§fn imprecise_rollup_upto<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
upto: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn imprecise_rollup_upto<'life0, 'async_trait>(
&'life0 self,
layer: Arc<InternalLayer>,
upto: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Create a new rollup layer which rolls up all triples in the given layer, as well as all ancestors up to (but not including) the given ancestor. Read more
fn layer_changes<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<InternalTripleStackIterator>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn layer_changes_upto<'life0, 'async_trait>(
&'life0 self,
name: [u32; 5],
upto: [u32; 5],
) -> Pin<Box<dyn Future<Output = Result<InternalTripleStackIterator>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
Source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
Source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Casts the value.
Source§impl<T> Packable for Twhere
T: PersistentLayerStore,
impl<T> Packable for Twhere
T: PersistentLayerStore,
Source§fn export_layers<'life0, 'async_trait>(
&'life0 self,
layer_ids: Box<dyn Iterator<Item = [u32; 5]> + Send>,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
fn export_layers<'life0, 'async_trait>(
&'life0 self,
layer_ids: Box<dyn Iterator<Item = [u32; 5]> + Send>,
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
T: 'async_trait,
Export the given layers by creating a pack, a Vec that can later be used with
import_layers on a different store.Source§fn import_layers<'life0, 'life1, 'async_trait>(
&'life0 self,
pack: &'life1 [u8],
layer_ids: Box<dyn Iterator<Item = [u32; 5]> + Send>,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
T: 'async_trait,
fn import_layers<'life0, 'life1, 'async_trait>(
&'life0 self,
pack: &'life1 [u8],
layer_ids: Box<dyn Iterator<Item = [u32; 5]> + Send>,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
'life0: 'async_trait,
'life1: 'async_trait,
T: 'async_trait,
Import the specified layers from the given pack, a byte slice that was previously generated with
export_layers, on another store, and possibly even another machine). Read moreSource§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Pipes by value. This is generally the method you want to use. Read more
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
Borrows
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
Mutably borrows
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
Borrows
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
Mutably borrows
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
Borrows
self, then passes self.deref() into the pipe function.Source§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
Source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
Source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> StrictAs for T
impl<T> StrictAs for T
Source§fn strict_as<Dst>(self) -> Dstwhere
T: StrictCast<Dst>,
fn strict_as<Dst>(self) -> Dstwhere
T: StrictCast<Dst>,
Casts the value.
Source§impl<Src, Dst> StrictCastFrom<Src> for Dstwhere
Src: StrictCast<Dst>,
impl<Src, Dst> StrictCastFrom<Src> for Dstwhere
Src: StrictCast<Dst>,
Source§fn strict_cast_from(src: Src) -> Dst
fn strict_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Immutable access to the
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
Mutable access to the
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
Immutable access to the
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
Mutable access to the
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Immutable access to the
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Mutable access to the
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
Calls
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
Calls
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
Calls
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
Calls
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
Calls
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
Calls
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
Calls
.tap_deref() only in debug builds, and is erased in release
builds.Source§impl<T> UnwrappedAs for T
impl<T> UnwrappedAs for T
Source§fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
Source§fn unwrapped_cast_from(src: Src) -> Dst
fn unwrapped_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> WrappingAs for T
impl<T> WrappingAs for T
Source§fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
Source§fn wrapping_cast_from(src: Src) -> Dst
fn wrapping_cast_from(src: Src) -> Dst
Casts the value.