StateMachine
public class StateMachine : @unchecked Sendable
有限状态机
-
状态类
See moreDeclaration
Swift
public class State : @unchecked Sendable -
状态事件类
See moreDeclaration
Swift
public class Event : @unchecked Sendable -
状态转换器
See moreDeclaration
Swift
public class Transition : @unchecked Sendable -
状态列表,只读
Declaration
Swift
public private(set) var states: [State] { get } -
事件列表,只读
Declaration
Swift
public private(set) var events: [Event] { get } -
当前状态,只读
Declaration
Swift
public private(set) var state: State? { get } -
初始化状态,未激活时可写
Declaration
Swift
public var initialState: State? { get set } -
是否已激活
Declaration
Swift
public private(set) var isActive: Bool { get } -
初始化方法
Declaration
Swift
public init() -
添加状态,未激活时生效
Declaration
Swift
public func addState(_ object: State)Parameters
object状态对象
-
批量添加状态,未激活时生效
Declaration
Swift
public func addStates(_ objects: [State])Parameters
objects状态数组
-
从名称获取状态
Declaration
Swift
public func stateNamed(_ name: String) -> State?Parameters
name状态名称
Return Value
状态对象
-
当前状态判断
Declaration
Swift
public func isState(_ object: Any?) -> BoolParameters
object状态名称或对象
Return Value
判断结果
-
添加事件,未激活时生效
Declaration
Swift
public func addEvent(_ event: Event)Parameters
event事件对象
-
批量添加事件,未激活时生效
Declaration
Swift
public func addEvents(_ events: [Event])Parameters
events事件数组
-
从名称获取事件
Declaration
Swift
public func eventNamed(_ name: String) -> Event?Parameters
name事件名称
Return Value
事件对象
-
激活并锁定状态机,锁定后不能修改初始状态、添加状态和事件
Declaration
Swift
public func activate() -
事件是否可触发
Declaration
Swift
public func canFireEvent(_ name: Any?) -> BoolParameters
name事件名称或对象
Return Value
是否可触发
-
触发事件,未激活时自动激活
Declaration
Swift
@discardableResult @MainActor public func fireEvent(_ name: Any?, object: Any? = nil) -> BoolParameters
name事件名称或对象
object附加参数,默认nil
Return Value
触发状态
View on GitHub