ebi_objects 0.3.182

Objects for Ebi - a stochastic process mining utility
Documentation
use crate::{
    StochasticNondeterministicFiniteAutomaton,
    ebi_objects::{
        deterministic_finite_automaton::DeterministicFiniteAutomaton,
        directly_follows_graph::DirectlyFollowsGraph, directly_follows_model::DirectlyFollowsModel,
        labelled_petri_net::LabelledPetriNet, lola_net::LolaNet, process_tree::ProcessTree,
        stochastic_deterministic_finite_automaton::StochasticDeterministicFiniteAutomaton,
        stochastic_directly_follows_model::StochasticDirectlyFollowsModel,
        stochastic_labelled_petri_net::StochasticLabelledPetriNet,
        stochastic_process_tree::StochasticProcessTree,
    },
};

impl From<LabelledPetriNet> for LolaNet {
    fn from(value: LabelledPetriNet) -> Self {
        log::info!("Convert LPN into Lola net.");
        Self(value)
    }
}

macro_rules! via_lpn {
    ($t:ident) => {
        impl From<$t> for LolaNet {
            fn from(value: $t) -> Self {
                let lpn: LabelledPetriNet = value.into();
                lpn.into()
            }
        }
    };
}

via_lpn!(StochasticLabelledPetriNet);
via_lpn!(DeterministicFiniteAutomaton);
via_lpn!(DirectlyFollowsModel);
via_lpn!(DirectlyFollowsGraph);
via_lpn!(StochasticDirectlyFollowsModel);
via_lpn!(ProcessTree);
via_lpn!(StochasticProcessTree);
via_lpn!(StochasticDeterministicFiniteAutomaton);
via_lpn!(StochasticNondeterministicFiniteAutomaton);