Skip to main content

ExportSource

Trait ExportSource 

Source
pub trait ExportSource {
    // Required methods
    fn for_each_node(
        &self,
        each: &mut dyn FnMut(NodeInfo) -> Result<(), CliError>,
    ) -> Result<(), CliError>;
    fn for_each_edge(
        &self,
        each: &mut dyn FnMut(ExportEdge) -> Result<(), CliError>,
    ) -> Result<(), CliError>;
    fn label_of(&self, key: &str) -> Option<String>;
}
Expand description

Where an export reads the store from: node by node and edge by edge, so an export holds one record at a time (see mushroomdb::GraphDb::for_each_node_for_export). Nodes arrive sorted by key and edges by (edge_type, src, dst).

Required Methods§

Source

fn for_each_node( &self, each: &mut dyn FnMut(NodeInfo) -> Result<(), CliError>, ) -> Result<(), CliError>

Source

fn for_each_edge( &self, each: &mut dyn FnMut(ExportEdge) -> Result<(), CliError>, ) -> Result<(), CliError>

Source

fn label_of(&self, key: &str) -> Option<String>

The label of the node key.

Dyn Compatibility§

This trait is dyn compatible.

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

Implementations on Foreign Types§

Source§

impl ExportSource for GraphDb<RealFs>

Source§

fn for_each_node( &self, each: &mut dyn FnMut(NodeInfo) -> Result<(), CliError>, ) -> Result<(), CliError>

Source§

fn for_each_edge( &self, each: &mut dyn FnMut(ExportEdge) -> Result<(), CliError>, ) -> Result<(), CliError>

Source§

fn label_of(&self, key: &str) -> Option<String>

Implementors§