Download src/state_machine.ads from Snapkitty/sovereign-ada-rtx: direct link, hf CLI and curl.
- Browser
- Download file 835 Bytes
-
https://huggingface.co/Snapkitty/sovereign-ada-rtx/resolve/main/src/state_machine.ads
- Command line
-
hf download hf://Snapkitty/sovereign-ada-rtx/src/state_machine.ads
-
curl -L -o state_machine.ads https://huggingface.co/Snapkitty/sovereign-ada-rtx/resolve/main/src/state_machine.ads
835 Bytes
| with Core_Types; use Core_Types; | |
| with Errors; | |
| with Validation; | |
| package State_Machine is | |
| type Machine is limited private; | |
| procedure Init_Machine (M : in out Machine); | |
| procedure Reset_Machine (M : in out Machine); | |
| function Get_State (M : Machine) return App_State; | |
| function Transition (M : in out Machine; To : App_State; Log : in out Errors.Error_Log) return Status_Code; | |
| function Force_Error (M : in out Machine) return Status_Code; | |
| function Is_Terminal (M : Machine) return Boolean; | |
| function Can_Accept_Input (M : Machine) return Boolean; | |
| function Transition_Count (M : Machine) return Medium_Natural; | |
| private | |
| type Machine is record | |
| Current : App_State := Idle; | |
| Previous : App_State := Idle; | |
| Transition_Count : Medium_Natural := 0; | |
| end record; | |
| end State_Machine; | |