Module procedure

Source
Expand description

Procedure tools encapsulate snark-tool’s functionality to procedures runnable in chain.

§Basic usage

Creation of basic procedure chain:

// how to create chain of procedures
fn main() {
    let read_config = ReadProcedureConfig::new(
        "path-to-file.g6".to_string(),
        read::G6_FORMAT.to_string(),
        None,
    );
    let read = ReadProcedureBuilder::build(read_config);
    let colour_config = ColourProcedureConfig::default();
    let colour = ColourProcedureBuilder::build(colour_config);
    let counter_config = CounterProcedureConfig::new(true);
    let counter = CounterProcedureBuilder::build(counter_config);

     let mut procedures = vec![];
    procedures.push(read);
    procedures.push(colour);
    procedures.push(counter);

    let chain = ProcedureChain::from_procedures(procedures).unwrap();
    let mut graphs_with_properties: Vec<(SimpleGraph, GraphProperties)> = vec![];
    let _result = chain.run(&mut graphs_with_properties);
}

Modules§

basic_procedures
configuration
error
helpers
procedure
procedure_builder
procedure_chain
procedure_registry