From c25e91f66056c5dca5c698c8881134f457fb354a Mon Sep 17 00:00:00 2001 From: Mihai Galos Date: Sun, 6 Mar 2022 16:20:30 +0100 Subject: [PATCH] Apply format --- vlib/statemachine/statemachine.v | 19 +++++++------- vlib/statemachine/statemachine_test.v | 38 ++++++++++++++------------- 2 files changed, 30 insertions(+), 27 deletions(-) diff --git a/vlib/statemachine/statemachine.v b/vlib/statemachine/statemachine.v index 88bf00e73d..dc92557b2e 100644 --- a/vlib/statemachine/statemachine.v +++ b/vlib/statemachine/statemachine.v @@ -1,6 +1,7 @@ module statemachine pub type EventHandlerFn = fn (receiver voidptr) + pub type ConditionFn = fn (receiver voidptr) bool struct State { @@ -12,14 +13,14 @@ mut: struct Transition { mut: - to string + to string condition ConditionFn } struct StateMachine { mut: - states map[string]State - transitions map[string]Transition + states map[string]State + transitions map[string]Transition current_state string } @@ -28,7 +29,7 @@ pub fn new() &StateMachine { } pub fn (mut s StateMachine) add_state(name string, entry EventHandlerFn, run EventHandlerFn, exit EventHandlerFn) { - s.states [name] = State{ + s.states[name] = State{ entry_handler: entry run_handler: run exit_handler: exit @@ -45,10 +46,10 @@ pub fn (mut s StateMachine) add_transition(from string, to string, condition Con } } -pub fn (mut s StateMachine) run(receiver voidptr){ - for from_state, transition in s.transitions{ +pub fn (mut s StateMachine) run(receiver voidptr) { + for from_state, transition in s.transitions { if from_state == s.current_state { - if transition.condition(receiver){ + if transition.condition(receiver) { s.change_state(receiver, s.transitions[from_state].to) } s.states[s.current_state].run_handler(receiver) @@ -56,10 +57,10 @@ pub fn (mut s StateMachine) run(receiver voidptr){ } } -pub fn (mut s StateMachine) change_state(receiver voidptr, newstate string){ +pub fn (mut s StateMachine) change_state(receiver voidptr, newstate string) { mut current_state := s.current_state s.states[current_state].exit_handler(receiver) current_state = newstate s.states[current_state].entry_handler(receiver) s.current_state = current_state -} \ No newline at end of file +} diff --git a/vlib/statemachine/statemachine_test.v b/vlib/statemachine/statemachine_test.v index 1d24c0454d..db71860802 100644 --- a/vlib/statemachine/statemachine_test.v +++ b/vlib/statemachine/statemachine_test.v @@ -8,9 +8,9 @@ mut: fn test_statemachine_works_when_single_transition() { mut receiver := &MyReceiver{} mut s := statemachine.new() - s.add_state("A",on_state_entry, on_state_run, on_state_exit) - s.add_state("B",on_state_entry, on_state_run, on_state_exit) - s.add_transition("A", "B", condition_transition) + s.add_state('A', on_state_entry, on_state_run, on_state_exit) + s.add_state('B', on_state_entry, on_state_run, on_state_exit) + s.add_transition('A', 'B', condition_transition) s.run(receiver) assert receiver.data.len == 3 @@ -19,36 +19,38 @@ fn test_statemachine_works_when_single_transition() { fn test_statemachine_works_when_typical() { mut receiver := &MyReceiver{} mut s := statemachine.new() - s.add_state("A",on_state_entry, on_state_run, on_state_exit) - s.add_state("B",on_state_entry, on_state_run, on_state_exit) - s.add_transition("A", "B", condition_transition) + s.add_state('A', on_state_entry, on_state_run, on_state_exit) + s.add_state('B', on_state_entry, on_state_run, on_state_exit) + s.add_transition('A', 'B', condition_transition) s.run(receiver) - assert receiver.data[0] == "on_state_exit" - assert receiver.data[1] == "on_state_entry" - assert receiver.data[2] == "on_state_run" + assert receiver.data[0] == 'on_state_exit' + assert receiver.data[1] == 'on_state_entry' + assert receiver.data[2] == 'on_state_run' } fn test_statemachine_works_when_final_state() { mut receiver := &MyReceiver{} mut s := statemachine.new() - s.add_state("A",on_state_entry, on_state_run, on_state_exit) - s.add_state("B",on_state_entry, on_state_run, on_state_exit) - s.add_transition("A", "B", condition_transition) + s.add_state('A', on_state_entry, on_state_run, on_state_exit) + s.add_state('B', on_state_entry, on_state_run, on_state_exit) + s.add_transition('A', 'B', condition_transition) s.run(receiver) s.run(receiver) assert receiver.data.len == 3 } -fn on_state_entry(mut receiver &MyReceiver) { - receiver.data << "on_state_entry" +fn on_state_entry(mut receiver MyReceiver) { + receiver.data << 'on_state_entry' } -fn on_state_run(mut receiver &MyReceiver) { - receiver.data << "on_state_run" + +fn on_state_run(mut receiver MyReceiver) { + receiver.data << 'on_state_run' } -fn on_state_exit(mut receiver &MyReceiver) { - receiver.data << "on_state_exit" + +fn on_state_exit(mut receiver MyReceiver) { + receiver.data << 'on_state_exit' } fn condition_transition(receiver &MyReceiver) bool {