Trait graph_types::EntryEngine
source · pub trait EntryEngine<V>: GraphEngine {
type Provider: for<'p> ValueProvider<'p, V>;
// Provided methods
fn get_data<'a, 'p>(
&'a self,
data: &'p Self::Provider,
query: Query
) -> Result<<Self::Provider as ValueProvider<'p, V>>::ValueRef, GraphError> { ... }
fn mut_data(
&self,
data: &mut Self::Provider,
query: Query,
value: V
) -> Result<V, GraphError> { ... }
fn async_get_data<'a, 'p, 'async_trait>(
&'a self,
data: &'p Self::Provider,
query: Query
) -> Pin<Box<dyn Future<Output = Result<<Self::Provider as ValueProvider<'p, V>>::ValueRef, GraphError>> + Send + 'async_trait>>
where V: Send + 'async_trait,
Self: Sync + 'async_trait,
'a: 'async_trait,
'p: 'async_trait { ... }
fn async_mut_data<'a, 'p, 'async_trait>(
&'a self,
data: &'p mut Self::Provider,
query: Query,
value: V
) -> Pin<Box<dyn Future<Output = Result<V, GraphError>> + Send + 'async_trait>>
where V: Send + 'async_trait,
Self: Sync + 'async_trait,
'a: 'async_trait,
'p: 'async_trait { ... }
}
Expand description
A graph that has extra data associated with each node and edge.
Examples
use graph_types::{EntryEngine, GraphEngine, ListStorage};