Source: emel/graph/assembler/reuse_decision_pass/sm.hpp
stateDiagram-v2
direction TB
[*] --> deciding
deciding --> assemble_failed : completion_assemble_graph_ [phase_prefailed_] / mark_failed_prefailed_
deciding --> reuse_selected : completion_assemble_graph_ [phase_reuse_] / mark_reuse_
deciding --> rebuild_selected : completion_assemble_graph_ [phase_rebuild_] / mark_rebuild_
deciding --> assemble_failed : completion_assemble_graph_ [phase_prereq_failed_] / mark_failed_prereq_
deciding --> assemble_failed : completion_assemble_graph_ [phase_invalid_request_] / mark_failed_invalid_request_
reuse_selected --> terminate : [always] / none
rebuild_selected --> terminate : [always] / none
assemble_failed --> terminate : [always] / none
deciding --> unexpected_event : _ [always] / on_unexpected_
reuse_selected --> unexpected_event : _ [always] / on_unexpected_
rebuild_selected --> unexpected_event : _ [always] / on_unexpected_
assemble_failed --> unexpected_event : _ [always] / on_unexpected_
unexpected_event --> unexpected_event : _ [always] / on_unexpected_