Solidity 0.6.11 更新
摘要:Solidity v0.6.11[1] 为 NatSpec 注释添加了继承性,改进了调试数据输出,并修复了为非外部函数打开 calldata 的一些小问题。
Solidity v0.6.11[1] 为 NatSpec 注释添加了继承性,改进了调试数据输出,并修复了为非外部函数打开 calldata
的一些小问题。
值得关注的改进
文档注释防范(NatSpec)支持了继承及事件
NatSpec 注释是一种向最终用户描述函数行为的方式。以便为开发者提供更详细的信息。
一个常见的用例是用来记录接口的行为,然后在派生合约(子合约)中实现该接口。以前,必须派生合约中复制文档。现在不需要了,如果派生函数不提供任何 NatSpec 标签,则编译器将自动继承父合约函数的文档。
如果在派生合约函数中使用了任何标签(@param
, @dev
, …),则不会继承,在这种情况下,下一个发行版将提供一项功能,以明确地从某个特定父合约继承,因此请继续关注!
If you provide any of the tags (), then nothing will be inherited. The next release will provide a feature to explicitly inherit from a certain base also in that case, so stay tuned!
此外,事件现在支持 NatSpec。
// SPDX-License-Identifier: MITpragma solidity ^0.6.11;interface Gathering { /// The address `participant` just registered for the gathering. event Registered(address participant); /// Registers `msg.sender` to take part in the gathering. function register() external;} contract MyGathering is Gathering { mapping(address => bool) public participants; function register() public override { participants[msg.sender] = true; emit Registered(msg.sender); }}
在以上示例的派生合约 MyGathering
会生成一下的用户文档(userdoc):
{ "events": { "Registered(address)": { "notice": "The address `participant` just registered for the gathering." } }, "kind": "user", "methods": { "register()": { "notice": "Registers `msg.sender` to take part in the gathering." } }, "version": 1}
新的单位面值 gwei
现在可以使用 gwei
作为单位了,就像使用 wei
, szabo
, finney
和 ether
一样 :
reqire(msg.value >= 10 gwei);
参考资料
[1]
Solidity v0.6.11: https://github.com/ethereum/solidity/releases/tag/v0.6.11
本文作者:Tiny 熊
来源链接:mp.weixin.qq.com
- 免责声明
- 世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
- 风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
- 世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。