@@ -87,27 +87,26 @@ internal class _StateMachineHandlerInfo<S: StateType, E: StateEventType>
8787
8888public class StateMachine < S: StateType , E: StateEventType >
8989{
90- public typealias HandlerOrder = UInt8
91- public typealias Handler = ( HandlerContext -> Void )
92- public typealias HandlerContext = ( event: Event , transition: Transition , order: HandlerOrder , userInfo: Any ? )
90+ public typealias State = S
91+ public typealias Event = E
92+
93+ public typealias Transition = StateTransition < State >
94+ public typealias TransitionChain = StateTransitionChain < State >
9395
94- internal typealias State = S
95- internal typealias Event = E
96- internal typealias Transition = StateTransition < State >
97- internal typealias TransitionChain = StateTransitionChain < State >
96+ public typealias Route = StateRoute < State >
97+ public typealias RouteID = StateMachineRouteID < State , Event >
98+ public typealias RouteChain = StateRouteChain < State >
9899
99- internal typealias Route = StateRoute < State >
100- internal typealias RouteKey = String
101- internal typealias RouteID = StateMachineRouteID < State , Event >
102- internal typealias RouteChain = StateRouteChain < State >
100+ public typealias Condition = Route . Condition
103101
104- internal typealias Condition = Route . Condition
102+ public typealias HandlerOrder = UInt8
103+ public typealias Handler = ( HandlerContext -> Void )
104+ public typealias HandlerContext = ( event: Event , transition: Transition , order: HandlerOrder , userInfo: Any ? )
105+ public typealias HandlerID = StateMachineHandlerID < State , Event >
105106
106- internal typealias HandlerKey = String
107- internal typealias HandlerID = StateMachineHandlerID < State , Event >
108- internal typealias HandlerInfo = _StateMachineHandlerInfo < State , Event >
109- // NOTE: don't use tuple due to Array's copying behavior for closure
110- // private typealias HandlerInfo = (order: HandlerOrder, handlerKey: HandlerKey, handler: Handler)
107+ private typealias RouteKey = String
108+ private typealias HandlerKey = String
109+ private typealias HandlerInfo = _StateMachineHandlerInfo < State , Event >
111110
112111 private typealias TransitionRouteDictionary = [ Transition : [ RouteKey : Condition ? ] ]
113112
0 commit comments