pub trait Transaction: Send + Sync {
Show 18 methods fn begin<'life0, 'async_trait>(
        &'life0 mut self
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; fn execute_query<'life0, 'async_trait, RequestCtx>(
        &'life0 mut self,
        query: String,
        params: HashMap<String, Value>
    ) -> Pin<Box<dyn Future<Output = Result<QueryResult, Error>> + Send + 'async_trait>>
    where
        RequestCtx: 'async_trait + RequestContext,
        'life0: 'async_trait,
        Self: 'async_trait
; fn create_node<'life0, 'life1, 'life2, 'life3, 'async_trait, RequestCtx>(
        &'life0 mut self,
        node_var: &'life1 NodeQueryVar,
        props: HashMap<String, Value>,
        options: Options,
        info: &'life2 Info,
        sg: &'life3 mut SuffixGenerator
    ) -> Pin<Box<dyn Future<Output = Result<Node<RequestCtx>, Error>> + Send + 'async_trait>>
    where
        RequestCtx: 'async_trait + RequestContext,
        'life0: 'async_trait,
        'life1: 'async_trait,
        'life2: 'async_trait,
        'life3: 'async_trait,
        Self: 'async_trait
; fn create_rels<'life0, 'life1, 'life2, 'async_trait, RequestCtx>(
        &'life0 mut self,
        src_query_fragment: QueryFragment,
        dst_query_fragment: QueryFragment,
        rel_var: &'life1 RelQueryVar,
        id_opt: Option<Value>,
        props: HashMap<String, Value>,
        options: Options,
        sg: &'life2 mut SuffixGenerator
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Rel<RequestCtx>>, Error>> + Send + 'async_trait>>
    where
        RequestCtx: 'async_trait + RequestContext,
        'life0: 'async_trait,
        'life1: 'async_trait,
        'life2: 'async_trait,
        Self: 'async_trait
; fn node_read_by_ids_fragment<RequestCtx: RequestContext>(
        &mut self,
        node_var: &NodeQueryVar,
        nodes: &[Node<RequestCtx>]
    ) -> Result<QueryFragment, Error>; fn node_read_fragment(
        &mut self,
        rel_query_fragments: Vec<QueryFragment>,
        node_var: &NodeQueryVar,
        props: HashMap<String, Comparison>,
        sg: &mut SuffixGenerator
    ) -> Result<QueryFragment, Error>; fn load_nodes<'life0, 'life1, 'life2, 'async_trait, RequestCtx>(
        &'life0 mut self,
        keys: &'life1 [NodeLoaderKey],
        info: &'life2 Info
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Node<RequestCtx>>, Error>> + Send + 'async_trait>>
    where
        RequestCtx: 'async_trait + RequestContext,
        'life0: 'async_trait,
        'life1: 'async_trait,
        'life2: 'async_trait,
        Self: 'async_trait
; fn read_nodes<'life0, 'life1, 'life2, 'async_trait, RequestCtx>(
        &'life0 mut self,
        node_var: &'life1 NodeQueryVar,
        query_fragment: QueryFragment,
        options: Options,
        info: &'life2 Info
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Node<RequestCtx>>, Error>> + Send + 'async_trait>>
    where
        RequestCtx: 'async_trait + RequestContext,
        'life0: 'async_trait,
        'life1: 'async_trait,
        'life2: 'async_trait,
        Self: 'async_trait
; fn rel_read_by_ids_fragment<RequestCtx: RequestContext>(
        &mut self,
        rel_var: &RelQueryVar,
        rels: &[Rel<RequestCtx>]
    ) -> Result<QueryFragment, Error>; fn rel_read_fragment(
        &mut self,
        src_fragment_opt: Option<QueryFragment>,
        dst_fragment_opt: Option<QueryFragment>,
        rel_var: &RelQueryVar,
        props: HashMap<String, Comparison>,
        sg: &mut SuffixGenerator
    ) -> Result<QueryFragment, Error>; fn load_rels<'life0, 'life1, 'async_trait, RequestCtx>(
        &'life0 mut self,
        keys: &'life1 [RelLoaderKey]
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Rel<RequestCtx>>, Error>> + Send + 'async_trait>>
    where
        RequestCtx: 'async_trait + RequestContext,
        'life0: 'async_trait,
        'life1: 'async_trait,
        Self: 'async_trait
; fn read_rels<'life0, 'life1, 'async_trait, RequestCtx>(
        &'life0 mut self,
        query_fragment: QueryFragment,
        rel_var: &'life1 RelQueryVar,
        options: Options
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Rel<RequestCtx>>, Error>> + Send + 'async_trait>>
    where
        RequestCtx: 'async_trait + RequestContext,
        'life0: 'async_trait,
        'life1: 'async_trait,
        Self: 'async_trait
; fn update_nodes<'life0, 'life1, 'life2, 'life3, 'async_trait, RequestCtx>(
        &'life0 mut self,
        query_fragment: QueryFragment,
        node_var: &'life1 NodeQueryVar,
        props: HashMap<String, Value>,
        options: Options,
        info: &'life2 Info,
        sg: &'life3 mut SuffixGenerator
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Node<RequestCtx>>, Error>> + Send + 'async_trait>>
    where
        RequestCtx: 'async_trait + RequestContext,
        'life0: 'async_trait,
        'life1: 'async_trait,
        'life2: 'async_trait,
        'life3: 'async_trait,
        Self: 'async_trait
; fn update_rels<'life0, 'life1, 'life2, 'async_trait, RequestCtx>(
        &'life0 mut self,
        query_fragment: QueryFragment,
        rel_var: &'life1 RelQueryVar,
        props: HashMap<String, Value>,
        options: Options,
        sg: &'life2 mut SuffixGenerator
    ) -> Pin<Box<dyn Future<Output = Result<Vec<Rel<RequestCtx>>, Error>> + Send + 'async_trait>>
    where
        RequestCtx: 'async_trait + RequestContext,
        'life0: 'async_trait,
        'life1: 'async_trait,
        'life2: 'async_trait,
        Self: 'async_trait
; fn delete_nodes<'life0, 'life1, 'async_trait>(
        &'life0 mut self,
        query_fragment: QueryFragment,
        node_var: &'life1 NodeQueryVar,
        options: Options
    ) -> Pin<Box<dyn Future<Output = Result<i32, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        'life1: 'async_trait,
        Self: 'async_trait
; fn delete_rels<'life0, 'life1, 'async_trait>(
        &'life0 mut self,
        query_fragment: QueryFragment,
        rel_var: &'life1 RelQueryVar,
        options: Options
    ) -> Pin<Box<dyn Future<Output = Result<i32, Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        'life1: 'async_trait,
        Self: 'async_trait
; fn commit<'life0, 'async_trait>(
        &'life0 mut self
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
; fn rollback<'life0, 'async_trait>(
        &'life0 mut self
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
    where
        'life0: 'async_trait,
        Self: 'async_trait
;
}

Required Methods

Implementors