21 个版本 (4 个破坏性更新)

0.5.0-rc.12024 年 8 月 15 日
0.4.3 2024 年 5 月 23 日
0.3.1 2024 年 3 月 24 日
0.1.7 2023 年 12 月 3 日
0.1.0 2022 年 12 月 15 日

#90 in WebAssembly

Download history 80/week @ 2024-05-03 527/week @ 2024-05-10 1239/week @ 2024-05-17 501/week @ 2024-05-24 126/week @ 2024-05-31 169/week @ 2024-06-07 155/week @ 2024-06-14 131/week @ 2024-06-21 172/week @ 2024-06-28 179/week @ 2024-07-05 159/week @ 2024-07-12 225/week @ 2024-07-19 167/week @ 2024-07-26 355/week @ 2024-08-02 389/week @ 2024-08-09 251/week @ 2024-08-16

1,233 个月下载量

Apache-2.0

265KB
2.5K SLoC

Rust 2K SLoC // 0.1% comments TypeScript 338 SLoC // 0.1% comments Swift 36 SLoC // 0.2% comments Java 19 SLoC

Crux 时间能力

此 crate 包含了 Time 能力,可以用于从 Shell 获取当前时间。

关于如何使用该能力的示例,请参阅 集成测试

关于 Crux 能力

Crux 能力教导 Crux 在执行副作用时如何与 shell 交互。它们执行以下操作:

  1. 定义一个 Request 结构体来指示 Shell 如何代表 Core 执行副作用
  2. 定义一个 Response 结构体来存储 Shell 在副作用完成后返回的数据
  3. 声明一个或多个方便的方法来调用 Shell 的能力,每个方法都会创建一个 Command(描述效果及其后续操作),Crux 可以“执行”它

请注意,由于 Swift 没有命名空间,目前有一个要求确保 RequestResponse 的命名是明确的(例如 HttpRequestHttpResponse)。


lib.rs:

Crux 应用程序当前时间访问

Crux 将时钟上的当前时间视为副作用(尽管如果我们非常严格,它更多的是副作用的原因),并且必须从外部获取。此能力提供了一个简单的接口来获取它。

依赖项

~2.6–4MB
~80K SLoC