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};

Required Associated Types§

source

type Provider: for<'p> ValueProvider<'p, V>

Arguments
  • index:
  • data:

returns: Result<<Self::Provider as ValueProvider>::ValueRef, GraphError>

Examples
use graph_types::{EntryEngine, GraphEngine, ListStorage};

Provided Methods§

source

fn get_data<'a, 'p>( &'a self, data: &'p Self::Provider, query: Query ) -> Result<<Self::Provider as ValueProvider<'p, V>>::ValueRef, GraphError>

Arguments
  • index:
  • data:

returns: Result<<Self::Provider as ValueProvider>::ValueRef, GraphError>

Examples
use graph_types::{EntryEngine, GraphEngine, ListStorage};
source

fn mut_data( &self, data: &mut Self::Provider, query: Query, value: V ) -> Result<V, GraphError>

Arguments
  • index:
  • data:

returns: Result<<Self::Provider as ValueProvider>::ValueRef, GraphError>

Examples
use graph_types::{EntryEngine, GraphEngine, ListStorage};
source

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,

Arguments
  • index:
  • data:

returns: Result<<Self::Provider as ValueProvider>::ValueRef, GraphError>

Examples
use graph_types::{EntryEngine, GraphEngine, ListStorage};
source

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,

Arguments
  • index:
  • data:

returns: Result<<Self::Provider as ValueProvider>::ValueRef, GraphError>

Examples
use graph_types::{EntryEngine, GraphEngine, ListStorage};

Implementors§