69个版本 (29个稳定版)

2.7.1 2024年8月13日
2.7.0-rc.32024年7月16日
2.6.3 2024年3月12日
2.5.0-dev.02023年12月26日
0.1.0 2023年1月4日

#1258 in 魔法豆

Download history 4990/week @ 2024-04-23 7594/week @ 2024-04-30 4976/week @ 2024-05-07 4384/week @ 2024-05-14 4927/week @ 2024-05-21 4622/week @ 2024-05-28 4486/week @ 2024-06-04 4748/week @ 2024-06-11 6061/week @ 2024-06-18 5577/week @ 2024-06-25 4186/week @ 2024-07-02 3010/week @ 2024-07-09 3621/week @ 2024-07-16 4757/week @ 2024-07-23 7079/week @ 2024-07-30 5150/week @ 2024-08-06

21,407 每月下载量
用于 12 个crate(5个直接使用)

自定义许可

4MB
57K SLoC

编译和运行cairo文件

cargo run --bin cairo-run -- --single-file /path/to/file.cairo

如果我们想运行经过gas测试的代码

cargo run --bin cairo-run -- --single-file /path/to/file.cairo --available-gas 200

我们目前只运行没有除隐式参数外的任何参数的 main 函数。

示例

// Calculates fib...
fn main() -> u128 {
    fib(1_u128, 1_u128, 100_u128)
}

fn fib(a: u128, b: u128, n: u128) -> u128 {
    if n == 0 {
        a
    } else {
        fib(b, a + b, n - 1_u128)
    }
}

更多信息

  • 当使用 --available-gas 编译时,如果代码中有循环,则会自动添加对 withdraw_gas_all 的调用。
  • 没有 --available-gas 值时,调用 withdraw_gas_all 的函数将无法编译。
  • 没有调用 withdraw_gas_all 的函数将无法使用 --available-gas 值编译。
  • 当运行返回数组的函数时,可能应该使用 --print-full-memory,以便真正看到数组中包含的值。

依赖项

~26–39MB
~592K SLoC