macro-machines 0.8.4

State machine macros with logging and graphviz DOT file generation
Documentation
digraph {
  rankdir=LR
  node [shape=record, style=rounded, fontname="Sans Bold"]
  edge [fontname="Sans"]
  subgraph cluster_Door {
    label=<Door<FONT FACE="Mono"><BR/><BR/>
open_count : u64 &#61; u64::default&#40;&#41;<BR ALIGN="LEFT"/>@ door<BR ALIGN="CENTER"/>
      </FONT><BR/>>
    shape=record
    style=rounded
    fontname="Sans Bold Italic"
    INITIAL [label="", shape=circle, width=0.2, style=filled, fillcolor=black]
    Closed [label=<<B>Closed</B>|<FONT FACE="Mono"><BR/>
knock_count : u64 &#61; u64::default&#40;&#41;<BR ALIGN="LEFT"/></FONT>>]
    Opened [label=<<B>Opened</B>>]
    INITIAL -> Closed
    "Closed" -> "Closed" [label=<<FONT FACE="Sans Italic">Knock</FONT><FONT FACE="Mono"><BR/>&#123; *knock_count &#43;&#61; 1; &#125;</FONT>>]
    "Closed" -> "Opened" [label=<<FONT FACE="Sans Italic">Open</FONT><FONT FACE="Mono"><BR/>&#123; *open_count &#43;&#61; 1; &#125;</FONT>>]
    "Opened" -> "Closed" [label=<<FONT FACE="Sans Italic">Close</FONT>>]
    TERMINAL [label="", shape=doublecircle, width=0.2,
      style=filled, fillcolor=black]
    Closed -> TERMINAL
  }
}