mirror of
https://github.com/marcosh/crem.git
synced 2024-10-26 20:09:49 +03:00
22 lines
568 B
Haskell
22 lines
568 B
Haskell
{-# LANGUAGE DataKinds #-}
|
|
|
|
module Main where
|
|
|
|
import "base" Data.Functor.Identity
|
|
import "crem" Crem.BaseMachine
|
|
import "crem" Crem.Example.TheHobbit
|
|
import "crem" Crem.Render.Render
|
|
import "text" Data.Text.IO qualified as Text
|
|
|
|
main :: IO ()
|
|
main = do
|
|
let
|
|
initialState :: HobbitState 'TunnelLikeHall
|
|
initialState = TunnelLikeHallState
|
|
|
|
machine :: BaseMachineT Identity HobbitTopology HobbitCommand HobbitMessage
|
|
machine = hobbitMachine initialState
|
|
|
|
(Mermaid mermaid) = renderStateDiagram . baseMachineAsGraph $ machine
|
|
Text.putStrLn mermaid
|