Age | Commit message (Collapse) | Author | |
---|---|---|---|
2016-10-26 | Rework timeout handling | Raimo Niskanen | |
Handling of timers and timeouts has been cleaned up and generalized. Semantic change regarding state timeout zero: Previously if one state caused a state timeout zero and managed to stay in the same state to insert additional timeout zero(s) in the next state callback invocation, then there would be only one timeout zero event. The mindset was that the machine was faster then the timeout zero. This has changed with the mindset that all state callback invocations should be independent, so now the machine will get one state timeout zero event per started state timeout zero. Note that just using zero timeouts is fairly esoteric... | |||
2016-10-12 | Implement state timeouts | Raimo Niskanen | |
2016-09-30 | Change state entry events into state enter calls | Raimo Niskanen | |
2016-09-16 | Implement state entry events | Raimo Niskanen | |
2016-09-16 | Implement call/3 dirty_timeout | Raimo Niskanen | |
2016-08-17 | Clarify error values | Raimo Niskanen | |
2016-07-27 | Rewrite gen_statem TCs for M:callback_mode/0 | Raimo Niskanen | |
2016-04-27 | Fix callback mode after code change not used | Raimo Niskanen | |
2016-04-21 | Modify code_change/4 to return CallbackMode | Raimo Niskanen | |
Also move check of non-atom states in callback mode state_functions to where the state function is called. This gives homogenous diagnostics for state functions, code_change/4 and system_replace_state StateFun. Irregularities pointed out by James Fish. | |||
2016-04-12 | Fix missing short forms for event timeout | Raimo Niskanen | |
2016-03-02 | Change code_change/4 to {ok,State,Data} | Raimo Niskanen | |
2016-03-02 | Fixup sharpened test suite | Raimo Niskanen | |
2016-02-29 | Sharpen test suite | Raimo Niskanen | |
2016-02-29 | Remove the remove_event action and all alike | Raimo Niskanen | |
Removing events from the internal queues is not necessary with the choosen semantics of the event queue vs. hibernate. In an early implementation it was possible by combining hibernate with e.g. postpone to get an event in the queue that you would not see before processing the postponed event, and therefore should you decide to cancel a timer it was essential to be able to remove that unseen event from the queue. With the choosen semantics you will have to postpone or generate an event for it to be in the event queue, and if you e.g. postpone a timeout event and then cancel the timer it is your mistake. You have seen the event and should know better than to try to cancel the timer. So, the actions: remove_event, cancel_timer, demonitor and unlink are now removed. There have also been some cleanup of the timer handling code. | |||
2016-02-26 | Test the order for multiple next_event | Raimo Niskanen | |
2016-02-26 | ct:ify test suite | Raimo Niskanen | |
2016-02-26 | Allow actions without containing list | Raimo Niskanen | |
Type check atom state as early as possible | |||
2016-02-26 | Implement 'keep_state_and_data' and 'stop' | Raimo Niskanen | |
2016-02-25 | Remove {keep_state_and_data} | Raimo Niskanen | |
Correct typo reported by Luïc Hoguin. | |||
2016-02-24 | Ditch PrevState | Raimo Niskanen | |
StateName/4 -> StateName/3 handle_event/5 -> handle_event/4 | |||
2016-02-24 | Ditch State so StateName/5 -> StateName/4 | Raimo Niskanen | |
2016-02-23 | Add {stop_and_reply,Reason,Replies [,Data]) | Raimo Niskanen | |
Cleanup some error handling | |||
2016-02-22 | Make callback_option() mandatory | Raimo Niskanen | |
2016-02-19 | Update terminology to data(), transition_op(), etc | Raimo Niskanen | |
2016-02-19 | Add reply([Reply]) | Raimo Niskanen | |
2016-02-19 | Add {keep_state,...} and {keep_state_and_data,...} | Raimo Niskanen | |
2016-02-18 | Write some convenience helpers | Raimo Niskanen | |
2016-02-18 | Rename retry -> postpone | Raimo Niskanen | |
2016-02-18 | Rename insert_event -> next_event | Raimo Niskanen | |
2016-02-18 | Implement option callback_mode | Raimo Niskanen | |
2016-02-16 | Change to {next_state,...} and {stop,...} return format | Raimo Niskanen | |
2016-02-09 | New state machine | Raimo Niskanen | |