diff --git a/contracts/eos/eos.cpp b/contracts/eos/eos.cpp index 13193b288b9731c4ca0ecb1228486a71aefccf82..e188ee0ffa9feea4093ec46052ddae03a2bb0f14 100644 --- a/contracts/eos/eos.cpp +++ b/contracts/eos/eos.cpp @@ -1,13 +1,13 @@ -/** - @defgroup eoscontract eos contract - @brief Documents the interface to the EOS currency contract - @ingroup contracts - @section eoscontractdesc Description -*/ -namespace native { - +namespace native { + /** + @defgroup eoscontract EOS Contract + @brief Documents the interface to the EOS currency contract + @ingroup contracts + @{ + */ + /** * @ingroup contracts * @brief Defines the base class for all contracts @@ -17,47 +17,47 @@ namespace native { /** * @brief updates the code that will be executed for this contract * - *

Required Authority

+ *

Required Authority

* * Requires authority of *this* contract. * - *

Required Scope

+ *

Required Scope

* * Requires scope of *this* contract. * * @note the change in code does not take effect until the start of the next block */ void setcode( Bytes code, - Abi abi, - uint8_t vm = 0, + Abi abi, + uint8_t vm = 0, uint8_t vm_version = 0 ) final; /** * @brief updates the authority required for a named permission * - *

Required Authority

+ *

Required Authority

* * Requires authority of *this* contract. * - *

Required Scope

+ *

Required Scope

* * Requires scope of *this* contract. */ void setauth( Name permission, ///< the name for the permission being set - Name parent, ///< the parent permission to this permission + Name parent, ///< the parent permission to this permission Authority auth ///< the set of keys/accounts and threshold ); ) final; - + /** * @brief set the local named permission required for `this` account/contract to - * call `con::act(...)` + * call `con::act(...)` * - *

Required Authority

+ *

Required Authority

* * Requires authority of *this* contract. * - *

Required Scope

+ *

Required Scope

* * Requires scope of *this* contract. * @@ -69,46 +69,47 @@ namespace native { */ void setperm( Name con, Name act, Name myperm ); }; - + /** * @class eos - * + * @brief A *native* currency contract implemented with account named `eos` * @ingroup contracts * - * The EOS contract is a *native* currency contract implemented with account named `eos`. This contract enables - * users to transfer EOS tokens to each other. This contract is designed to work the @ref stakedcontract and + * @details The EOS contract is a *native* currency contract implemented with account named `eos`. This contract enables + * users to transfer EOS tokens to each other. This contract is designed to work the @ref stakedcontract and * @ref systemcontract when creating new accounts, claiming staked EOS. */ struct eos : public contract { /** @brief This action will transfer funds from one account to another. - + @pre `from`'s balance must be greaterthan or equal to `amount` transferred. - @pre The amount transferred must be greater than 0 + @pre The amount transferred must be greater than 0 @pre `to` and `from` may not be the same account. - +

Required Authority

- + This action requires the authority of the `from` account. - +

Required Scope

- + This action requires access to `from` and `to` account scopes. It does not require access to the `eos` scope which means that multiple transfers can execute in parallel as long as they don't have any overlapping scopes. - +

Required Recipients

- + This message requires that the accounts `from` and `to` are listed in the required recipients. This ensures other contracts are notified anytime EOS tokens are transferred. - + */ void transfer ( - AccountName from, ///< account from which EOS will be withdrawn + AccountName from, ///< account from which EOS will be withdrawn AccountName to, ///< account to receive EOS, may not be same as `from` - uint64_t amount ///< must be greater than 0 and less or equal to `from`'s balance + uint64_t amount ///< must be greater than 0 and less or equal to `from`'s balance ); }; /// class EOS + /// @} }