哪些 Rust 数据结构是不确定的

ilb*_*gon 5 rust nearprotocol

编写智能合约时,确保使用的所有数据结构都是确定性的非常重要。

具体来说,如果使用HashMapHashSet,Rust 标准库是否存在可能的不确定性?

小智 3

由于 Wasm 运行时无法访问非确定性输入,因此整个执行是确定性的。HashSetHashMap使用可用源中的种子,如果 Wasm 编译没有可用源,则执行将始终相同。应该很容易确认。