16 个版本 (7 个重大更改)
0.11.3 | 2024年5月22日 |
---|---|
0.10.5 | 2024年5月22日 |
0.10.1 | 2024年3月28日 |
0.6.0 | 2023年11月27日 |
0.2.0 |
|
#1805 in 神奇豆
1.5MB
28K SLoC
此模块提供了使用 Rust 开发 Linera 应用的 SDK。
Linera 应用程序由两个 WebAssembly 二进制文件组成:一个合约和一个服务。这两个二进制文件都有权访问相同的应用程序和链特定存储。服务只有只读访问权限,而合约可以写入。存储应用于存储应用程序状态,该状态会跨块持久化。状态可以是一个自定义类型,该类型使用 linera-views
,这是一个允许懒加载状态选定部分的框架。如果应用程序的状态很大,并且不需要在每次执行时加载全部内容,则这很有用。
合约二进制文件应创建一个类型来实现 Contract
特性。该类型可以存储 ContractRuntime
和状态,并且必须通过使用 contract!
宏导出其实施。
服务二进制文件应创建一个类型来实现 Service
特性。该类型可以存储 ServiceRuntime
和状态,并且必须通过使用 service!
宏导出其实施。
示例
示例应用位于 examples
目录中。
贡献
请参阅 CONTRIBUTING 文件以了解如何提供帮助。
许可证
本项目可在 Apache 2.0 许可证 的条款下使用。
依赖项
~24–48MB
~860K SLoC