diff --git a/vlib/datatypes/fsm/fsm.v b/vlib/datatypes/fsm/fsm.v index c6b68d90e6ef10..ff7047f04640c2 100644 --- a/vlib/datatypes/fsm/fsm.v +++ b/vlib/datatypes/fsm/fsm.v @@ -4,17 +4,24 @@ pub type EventHandlerFn = fn (receiver voidptr, from string, to string) pub type ConditionFn = fn (receiver voidptr, from string, to string) bool +fn dummy_event_handler_fn(receiver voidptr, from string, to string) { +} + +fn dummy_condition_fn(receiver voidptr, from string, to string) bool { + return true +} + struct State { mut: - entry_handler EventHandlerFn - run_handler EventHandlerFn - exit_handler EventHandlerFn + entry_handler EventHandlerFn = dummy_event_handler_fn + run_handler EventHandlerFn = dummy_event_handler_fn + exit_handler EventHandlerFn = dummy_event_handler_fn } struct Transition { mut: to string - condition_handler ConditionFn = unsafe { nil } + condition_handler ConditionFn = dummy_condition_fn } pub struct StateMachine {