mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Uniform output in functions and constructor NatSpec
This commit is contained in:
parent
e306fdc251
commit
aa65e9423c
@ -11,7 +11,7 @@ Compiler Features:
|
|||||||
|
|
||||||
|
|
||||||
Bugfixes:
|
Bugfixes:
|
||||||
|
* NatSpec: Constructors and functions have consistent userdoc output.
|
||||||
|
|
||||||
### 0.6.7 (unreleased)
|
### 0.6.7 (unreleased)
|
||||||
|
|
||||||
|
@ -71,7 +71,7 @@ So for the following contract snippet
|
|||||||
the position of ``data[4][9].b`` is at ``keccak256(uint256(9) . keccak256(uint256(4) . uint256(1))) + 1``::
|
the position of ``data[4][9].b`` is at ``keccak256(uint256(9) . keccak256(uint256(4) . uint256(1))) + 1``::
|
||||||
|
|
||||||
|
|
||||||
pragma solidity >=0.4.0 <0.7.0;
|
pragma solidity >=0.4.0 <0.8.0;
|
||||||
|
|
||||||
|
|
||||||
contract C {
|
contract C {
|
||||||
@ -171,7 +171,7 @@ value and reference types, types that are encoded packed, and nested types.
|
|||||||
|
|
||||||
.. code::
|
.. code::
|
||||||
|
|
||||||
pragma solidity >=0.4.0 <0.7.0;
|
pragma solidity >=0.4.0 <0.8.0;
|
||||||
contract A {
|
contract A {
|
||||||
struct S {
|
struct S {
|
||||||
uint128 a;
|
uint128 a;
|
||||||
|
@ -42,8 +42,12 @@ Json::Value Natspec::userDocumentation(ContractDefinition const& _contractDef)
|
|||||||
{
|
{
|
||||||
string value = extractDoc(constructorDefinition->annotation().docTags, "notice");
|
string value = extractDoc(constructorDefinition->annotation().docTags, "notice");
|
||||||
if (!value.empty())
|
if (!value.empty())
|
||||||
|
{
|
||||||
// add the constructor, only if we have any documentation to add
|
// add the constructor, only if we have any documentation to add
|
||||||
methods["constructor"] = Json::Value(value);
|
Json::Value user;
|
||||||
|
user["notice"] = Json::Value(value);
|
||||||
|
methods["constructor"] = user;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
string notice = extractDoc(_contractDef.annotation().docTags, "notice");
|
string notice = extractDoc(_contractDef.annotation().docTags, "notice");
|
||||||
|
@ -849,16 +849,18 @@ BOOST_AUTO_TEST_CASE(dev_documenting_no_param_description)
|
|||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(user_constructor)
|
BOOST_AUTO_TEST_CASE(user_constructor)
|
||||||
{
|
{
|
||||||
char const *sourceCode = R"(
|
char const* sourceCode = R"(
|
||||||
contract test {
|
contract test {
|
||||||
/// @notice this is a really nice constructor
|
/// @notice this is a really nice constructor
|
||||||
constructor(uint a, uint second) public { }
|
constructor(uint a, uint second) public { }
|
||||||
}
|
}
|
||||||
)";
|
)";
|
||||||
|
|
||||||
char const *natspec = R"ABCDEF({
|
char const* natspec = R"ABCDEF({
|
||||||
"methods" : {
|
"methods": {
|
||||||
"constructor" : "this is a really nice constructor"
|
"constructor" : {
|
||||||
|
"notice": "this is a really nice constructor"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})ABCDEF";
|
})ABCDEF";
|
||||||
|
|
||||||
@ -867,7 +869,7 @@ BOOST_AUTO_TEST_CASE(user_constructor)
|
|||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(user_constructor_and_function)
|
BOOST_AUTO_TEST_CASE(user_constructor_and_function)
|
||||||
{
|
{
|
||||||
char const *sourceCode = R"(
|
char const* sourceCode = R"(
|
||||||
contract test {
|
contract test {
|
||||||
/// @notice this is a really nice constructor
|
/// @notice this is a really nice constructor
|
||||||
constructor(uint a, uint second) public { }
|
constructor(uint a, uint second) public { }
|
||||||
@ -876,12 +878,14 @@ BOOST_AUTO_TEST_CASE(user_constructor_and_function)
|
|||||||
}
|
}
|
||||||
)";
|
)";
|
||||||
|
|
||||||
char const *natspec = R"ABCDEF({
|
char const* natspec = R"ABCDEF({
|
||||||
"methods" : {
|
"methods" : {
|
||||||
"mul(uint256,uint256)" : {
|
"mul(uint256,uint256)" : {
|
||||||
"notice" : "another multiplier"
|
"notice" : "another multiplier"
|
||||||
},
|
},
|
||||||
"constructor" : "this is a really nice constructor"
|
"constructor" : {
|
||||||
|
"notice" : "this is a really nice constructor"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})ABCDEF";
|
})ABCDEF";
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user