muchin 0.1.0

Support for composing large, interacting, complicated state machines
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
use crate::automaton::{Action, ActionKind, Uid};
use serde::{Deserialize, Serialize};
use std::time::Duration;
use type_uuid::TypeUuid;

#[derive(Clone, PartialEq, Eq, TypeUuid, Serialize, Deserialize, Debug)]
#[uuid = "1911e66d-e0e3-4efc-8952-c62f583059f6"]
pub enum TimeAction {
    UpdateCurrentTime,
    GetSystemTimeResult { uid: Uid, result: Duration },
}

impl Action for TimeAction {
    const KIND: ActionKind = ActionKind::Pure;
}