18 个版本 (10 个破坏性版本)
0.11.0 | 2023 年 9 月 19 日 |
---|---|
0.10.0 | 2023 年 7 月 20 日 |
0.9.0 | 2023 年 4 月 12 日 |
0.8.1 | 2022 年 11 月 23 日 |
0.1.0 | 2021 年 7 月 23 日 |
在 WebAssembly 中排名第 497
每月下载量 280
在 dtbh_interface 中使用
15KB
234 行
wasmCloud 数字生成器接口
这是 wasmCloud 内置接口的定义,该接口保证所有运行时宿主都支持,wasmcloud:builtin:numbergen
。数字生成器接口提供创建随机数、给定范围内的随机数以及全局唯一标识符(GUID)等功能。
功能提供者实现
没有外部实现此提供者,因为所有 wasmcloud:builtin:numbergen
合同的实现都直接构建到宿主运行时中。
此接口定义了每个我们支持的宿主运行时都附带的自定义 wasmCloud 内置日志接口。使用此接口的演员必须在他们的声明列表中包含功能合同 wasmcloud:builtin:numbergen
(wash claims sign --cap wasmcloud:builtin:numbergen
)。
示例用法
🦀 Rust
use wasmbus_rpc::actor::prelude::*;
use wasmcloud_interface_logging::info;
use wasmcloud_interface_numbergen::{generate_guid, random_32, random_in_range};
async fn generate_random() -> Result<(), RpcError> {
// Generate a Globally Unique ID (GUID)
let guid: String = generate_guid().await?;
info!("Generated GUID: {}", guid);
// Generate a random u32
let random_num: u32 = random_32().await?;
info!("Generated number: {}", random_num);
// Generate a random u32 within an inclusive range
let random_range: u32 = random_in_range(0, 55).await?;
info!("Generated number between 0 and 55: {}", random_range);
Ok(())
}
🐭 Golang
import numbergen "github.com/wasmcloud/interfaces/numbergen/tinygo"
func GenerateThings(ctx *actor.Context) (string, error) {
client := numbergen.NewProviderNumberGen()
// Generate a random U32
randNum, _ := client.Random32(ctx)
// Generate a random U32 within an inclusive range
randNum010, _ := client.RandomInRange(ctx, numbergen.RangeLimit{Min: 0, Max: 10})
// Generate a Globally Unique ID (GUID)
guid, _ := client.GenerateGuid(ctx)
return "", nil
}
依赖项
~12–30MB
~490K SLoC