内容简介:Solidity 0.6.11 更新本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。
Solidity 0.6.11 更新
Solidity 0.6.11 更新:
Solidity v0.6.11
adds inheritance to NatSpec comments, improves debugging data output and fixes some minor issues with opening up calldata
for non-external functions.
Notable New Features
NatSpec Inheritance and on Events
NatSpec comments are a way to describe the behaviour of a function to end-users. It also allows to provide more detailed information to developers.
One regular use-case is that you document the behaviour of an interface and then implement the interface in a derived contract. Previously, you had to repeat the documentation in the derived contract. This is now obsolete: The compiler will automatically inherit the documentation of the base function if the derived function does not provide any NatSpec tag.
If you provide any of the tags ( @param
, @dev
, …), 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!
Furhermore, NatSpec is now supported on events.
// SPDX-License-Identifier: MIT
pragma 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);
}
}
The derived contract MyGathering
in the example code above will produce the following 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
}
Unit Denomination gwei
You can now use gwei
as a unit denomination alongside wei
, szabo
, finney
and ether
:
reqire(msg.value >= 10 gwei);
Solidity 0.6.11 更新:
Solidity v0.6.11
adds inheritance to NatSpec comments, improves debugging data output and fixes some minor issues with opening up calldata
for non-external functions.
Notable New Features
NatSpec Inheritance and on Events
NatSpec comments are a way to describe the behaviour of a function to end-users. It also allows to provide more detailed information to developers.
One regular use-case is that you document the behaviour of an interface and then implement the interface in a derived contract. Previously, you had to repeat the documentation in the derived contract. This is now obsolete: The compiler will automatically inherit the documentation of the base function if the derived function does not provide any NatSpec tag.
If you provide any of the tags ( @param
, @dev
, …), 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!
Furhermore, NatSpec is now supported on events.
// SPDX-License-Identifier: MIT
pragma 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);
}
}
The derived contract MyGathering
in the example code above will produce the following 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
}
Unit Denomination gwei
You can now use gwei
as a unit denomination alongside wei
, szabo
, finney
and ether
:
reqire(msg.value >= 10 gwei);
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。
- 发表于 24分钟前
- 阅读 ( 12 )
- 学分 ( 0 )
- 分类:Solidity
以上所述就是小编给大家介绍的《Solidity 0.6.11 更新》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
機器,平台,群眾
安德魯‧麥克費(Andrew McAfee)、艾瑞克‧布林優夫森(Erik Brynjolfsson) / 李芳齡 / 天下文化 / 2017-12-27 / TWD550
★★Amazon.com商業理財Top1 ★★ 全球暢銷書《第二次機器時代》作者最新力作 兩位MIT數位頂尖科學家歷時三年時間 走訪矽谷、華府、劍橋、紐約、倫敦、舊金山等科技政經重鎮 拜會許多領域精英進行交流,結合宏觀趨勢觀察, 指出人人都應關注的三重革命 科技正以空前速度改變每個產業及每個人的生活, 你該如何做,才能保持領先? 我們生活在一個奇特的......一起来看看 《機器,平台,群眾》 这本书的介绍吧!