Skip to main content

GraphStore

Trait GraphStore 

Source
pub trait GraphStore: Send + Sync {
Show 18 methods // Required methods fn insert_node<'life0, 'life1, 'async_trait>( &'life0 self, node: &'life1 Node, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn insert_node_with_vector<'life0, 'life1, 'async_trait>( &'life0 self, node: &'life1 NodeWithVector, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn get_node<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 NodeId, ) -> Pin<Box<dyn Future<Output = Result<Option<Node>, VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn delete_node<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 NodeId, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn insert_edge<'life0, 'life1, 'async_trait>( &'life0 self, edge: &'life1 Edge, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn insert_edge_with_vector<'life0, 'life1, 'async_trait>( &'life0 self, edge: &'life1 EdgeWithVector, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn get_edge<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 EdgeId, ) -> Pin<Box<dyn Future<Output = Result<Option<Edge>, VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn get_edges_for_node<'life0, 'life1, 'async_trait>( &'life0 self, node_id: &'life1 NodeId, ) -> Pin<Box<dyn Future<Output = Result<Vec<Edge>, VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn get_edges_targeting_node<'life0, 'life1, 'async_trait>( &'life0 self, node_id: &'life1 NodeId, ) -> Pin<Box<dyn Future<Output = Result<Vec<Edge>, VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn delete_edge<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 EdgeId, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn get_edge_vector<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 EdgeId, ) -> Pin<Box<dyn Future<Output = Result<Option<Vec<f32>>, VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn get_node_vector<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 NodeId, ) -> Pin<Box<dyn Future<Output = Result<Option<Vec<f32>>, VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn set_name_mapping<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, kind: &'life1 str, name: &'life2 str, node_id: &'life3 NodeId, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait; fn get_name_mapping<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, kind: &'life1 str, name: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<Option<NodeId>, VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn delete_name_mapping<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, kind: &'life1 str, name: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn search<'life0, 'life1, 'async_trait>( &'life0 self, request: &'life1 SearchQuery, ) -> Pin<Box<dyn Future<Output = Result<Vec<SearchResult>, VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; // Provided methods fn insert_nodes_with_vector<'life0, 'life1, 'async_trait>( &'life0 self, nodes: &'life1 [NodeWithVector], ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn insert_edges_with_vector<'life0, 'life1, 'async_trait>( &'life0 self, edges: &'life1 [EdgeWithVector], ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... }
}

Required Methods§

Source

fn insert_node<'life0, 'life1, 'async_trait>( &'life0 self, node: &'life1 Node, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn insert_node_with_vector<'life0, 'life1, 'async_trait>( &'life0 self, node: &'life1 NodeWithVector, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_node<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 NodeId, ) -> Pin<Box<dyn Future<Output = Result<Option<Node>, VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn delete_node<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 NodeId, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn insert_edge<'life0, 'life1, 'async_trait>( &'life0 self, edge: &'life1 Edge, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn insert_edge_with_vector<'life0, 'life1, 'async_trait>( &'life0 self, edge: &'life1 EdgeWithVector, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_edge<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 EdgeId, ) -> Pin<Box<dyn Future<Output = Result<Option<Edge>, VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_edges_for_node<'life0, 'life1, 'async_trait>( &'life0 self, node_id: &'life1 NodeId, ) -> Pin<Box<dyn Future<Output = Result<Vec<Edge>, VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_edges_targeting_node<'life0, 'life1, 'async_trait>( &'life0 self, node_id: &'life1 NodeId, ) -> Pin<Box<dyn Future<Output = Result<Vec<Edge>, VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn delete_edge<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 EdgeId, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_edge_vector<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 EdgeId, ) -> Pin<Box<dyn Future<Output = Result<Option<Vec<f32>>, VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn get_node_vector<'life0, 'life1, 'async_trait>( &'life0 self, id: &'life1 NodeId, ) -> Pin<Box<dyn Future<Output = Result<Option<Vec<f32>>, VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn set_name_mapping<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, kind: &'life1 str, name: &'life2 str, node_id: &'life3 NodeId, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

Source

fn get_name_mapping<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, kind: &'life1 str, name: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<Option<NodeId>, VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn delete_name_mapping<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, kind: &'life1 str, name: &'life2 str, ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

Source

fn search<'life0, 'life1, 'async_trait>( &'life0 self, request: &'life1 SearchQuery, ) -> Pin<Box<dyn Future<Output = Result<Vec<SearchResult>, VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Provided Methods§

Source

fn insert_nodes_with_vector<'life0, 'life1, 'async_trait>( &'life0 self, nodes: &'life1 [NodeWithVector], ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Source

fn insert_edges_with_vector<'life0, 'life1, 'async_trait>( &'life0 self, edges: &'life1 [EdgeWithVector], ) -> Pin<Box<dyn Future<Output = Result<(), VecGraphError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Implementors§