Solidity
基於使用者提供的類型動態解碼響應
在 Solidity 中,我希望使用者預先提供響應的Solidity 類型,當響應到達時,我想根據使用者提供的類型對其進行解碼 - 基本上是各種動態解碼。
你可以想像這樣的事情:
abi.decode(responseData, (userProvidedType));
有沒有一種優雅的方式來做到這一點?
不幸的是沒有。你通常必須有一個巨大的 if/else 處理程序。您還可以擁有採用不同類型的不同功能,例如 hardhat 的控制台 ( https://github.com/NomicFoundation/hardhat/blob/main/packages/hardhat-c ore/console.sol )。例如:
function a(uint) {} function a(address){}