1 个不稳定版本
0.1.0 | 2024年6月26日 |
---|
#16 in #事件处理
在 swimos 中使用
2.5MB
65K SLoC
代理模型和生命周期定义API
此crate提供了一种框架,用于构建由SwimOS运行时执行的代理实现。通常,将在swimos_agent_derive
crate中定义的proc宏用于生成代理规范和代理生命周期。
代理规范通过通道和存储来定义代理的结构。规范本身足以定义运行时的代理路由,但它将只有状态而没有相关行为。
代理生命周期与特定类型的代理(任何agent_model::AgentSpec
的实现)相关联。它通过将事件处理器附加到代理及其通道和存储定义的各种生命周期事件,为代理添加行为。随着代理由运行时执行,每当遇到这些事件之一时,生命周期将选择适当的事件处理器,然后执行它。
可以为同一代理规范定义多个生命周期实现,允许使用相同结构但在不同代理路由上使用不同行为。
依赖项
~10–17MB
~219K SLoC