#near #gas #unit #protocols #values #ergonomically #u64

无std near-gas

一个小的crate,用于在Rust项目中优雅和高效地操作NEAR协议的gas单位值。

8个版本

0.3.0 2024年8月12日
0.2.7 2024年8月12日
0.2.5 2023年11月1日
0.2.4 2023年10月22日
0.1.3 2023年7月11日

#88 in 神奇豆子

Download history 647/week @ 2024-04-29 779/week @ 2024-05-06 850/week @ 2024-05-13 981/week @ 2024-05-20 961/week @ 2024-05-27 925/week @ 2024-06-03 897/week @ 2024-06-10 890/week @ 2024-06-17 983/week @ 2024-06-24 896/week @ 2024-07-01 741/week @ 2024-07-08 903/week @ 2024-07-15 964/week @ 2024-07-22 1765/week @ 2024-07-29 1367/week @ 2024-08-05 2228/week @ 2024-08-12

6,389 每月下载
用于 16 个crate(4个直接使用)

MIT/Apache

35KB
665

near-gas

Crates.io (downloads) Docs.rs Rust Version

near-gas是一个crate,用于在Rust项目中优雅地操作NEAR协议的gas单位。

这个crate包括NearGas类型和将数据转换为NearGas和u64类型值的构造函数。

near-gas示例

use near_gas::NearGas;

fn main() {
    let data = "12.657 tgas";

    let near_gas: NearGas = data.parse().unwrap();

    // Convert the value to the most precise "gas" unit
    assert_eq!(near_gas.as_gas(), 12657000000000);
    // Convert the value to "gigagas" unit
    assert_eq!(near_gas.as_ggas(), 12657);
    
    // Display Gas. It will print: "Here is 12.7 Tgas"
    println!("Here is {}", near_gas);

    // When `serde` feature is enabled, NearGas can be used in serde-serializable structs.
    // NearGas will be serialized to a gas-precision u64 value encoded as string.
    #[derive(serde::Serialize)]
    struct FunctionCallDetails {
        used_gas: NearGas,
    }

    let details = FunctionCallDetails { used_gas: near_gas };

    assert_eq!(serde_json::to_string(&details).unwrap(), r#"{"used_gas":"12657000000000"}"#);
}

近气信息

在您向网络发送的每笔交易中,NEAR都会向您收取费用(即gas费用)。这笔费用用于间接支付维护网络基础设施的人员的费用,并激励智能合约的开发者。 更多信息

近协议中的gas使用

crate功能

许可证

此项目根据MIT许可证Apache-2.0许可证许可。

依赖

~0–710KB
~15K SLoC