Automatically merged updates to draft EIP(s) 777

Hi, I'm a bot! This change was automatically merged because:

 - It only modifies existing Draft or Last Call EIP(s)
 - The PR was approved or written by at least one author of each modified EIP
 - The build is passing
This commit is contained in:
Jacques Dafflon 2019-04-09 22:50:48 +02:00 committed by EIP Automerge Bot
parent 54051094c7
commit 429eb45d53
1 changed files with 8 additions and 6 deletions

View File

@ -27,7 +27,7 @@ when they receive tokens as well as to allow compatibility with already-deployed
## Motivation
This standard tries to improve the widely used [ERC20] token standard.
This standard tries to improve upon the widely used [ERC20] token standard.
The main advantages of this standard are:
1. Uses the same philosophy as Ether in that tokens are sent with `send(dest, value, data)`.
@ -41,7 +41,7 @@ The main advantages of this standard are:
(Rejection is done by `revert`ing in the hook function.)
4. The `tokensReceived` hook allows to send tokens to a contract and notify it in a single transaction,
unlike [ERC20] which require a double call (`approve`/`transferFrom`) to achieve this.
unlike [ERC20] which requires a double call (`approve`/`transferFrom`) to achieve this.
5. The holder can "authorize" and "revoke" operators which can send tokens on their behalf.
These operators are intended to be verified contracts
@ -205,7 +205,7 @@ The following rules MUST be applied regarding the *granularity*:
- The *granularity* value MUST be greater or equal to `1`.
- Any amount of tokens (in the internal denomination) minted, sent or burnt
- Any amount of tokens (in the internal denomination) minted, sent or burned
MUST be a multiple of the *granularity* value.
- Any operation that would result in a balance that's not a multiple of the *granularity* value
@ -823,7 +823,9 @@ If the *recipient* is a contract, which has not registered an `ERC777TokensRecip
then the token contract:
- MUST `revert` if the `tokensReceived` hook is called from a mint or send call.
- SHOULD accept if the `tokensReceived` hook is called from an ERC20 `transfer` or `transferFrom` call.
- SHOULD continue processing the transaction
if the `tokensReceived` hook is called from an ERC20 `transfer` or `transferFrom` call.
*NOTE*: A regular address MAY register a different address—the address of a contract—implementing
the interface on its behalf.
@ -987,8 +989,8 @@ when sending, minting and transferring token via [ERC777] and [ERC20]:
<code>ERC777TokensRecipient</code><br/>not registered
</td>
<td>regular address</td>
<td align="center">SHOULD accept</td>
<td rowspan="2" align="center">SHOULD accept</td>
<td align="center">continue</td>
<td rowspan="2" align="center">continue</td>
</tr>
<tr>
<td>contract</td>