Skip to main content

PersistentLayerStore

Trait PersistentLayerStore 

Source
pub trait PersistentLayerStore:
    'static
    + Send
    + Sync
    + Clone {
    type File: FileLoad + FileStore + Clone;

Show 30 methods // Required methods 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, id: [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; // Provided methods 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 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_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 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 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 { ... }
}

Required Associated Types§

Required Methods§

Source

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,

Source

fn create_named_directory<'life0, 'async_trait>( &'life0 self, id: [u32; 5], ) -> Pin<Box<dyn Future<Output = Result<[u32; 5]>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

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,

Source

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,

Source

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,

Provided Methods§

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§