Skip to content

跨合约调用(env) ​

阶段 A:同步调用。在嵌套调用之前,父合约的存储会刷入共享日志(可读到自己的写入)。MAX_CALL_DEPTH = 8。

call_contract 已上线 ​

text
call_contract(addr_ptr, addr_len, input_ptr, input_len, result_ptr, result_max) → i32

调用另一个 .app。嵌套调用中的 get_caller = 本合约。把结果字节写入 result_ptr。

返回: 写入的字节数,或 -1(超出深度 / 无调度器 / 参数无效)。

类比: CosmWasm WasmMsg::Execute(在那里会排队执行),NEAR promise_create(在那里是异步的)。

call_contract_with_value 计划中 ​

同上,另外附带 uNRO,作为子合约的附带存款。