@ -4,7 +4,7 @@ import "./ERC20.sol";
|
||||
|
||||
/*
|
||||
|
||||
TransferableToken defines the generic interface and the implementation
|
||||
LimitedTransferToken defines the generic interface and the implementation
|
||||
to limit token transferability for different events.
|
||||
|
||||
It is intended to be used as a base class for other token contracts.
|
||||
@ -12,7 +12,7 @@ It is intended to be used as a base class for other token contracts.
|
||||
Over-writting transferableTokens(address holder, uint64 time) is the way to provide
|
||||
the specific logic for limitting token transferability for a holder over time.
|
||||
|
||||
TransferableToken has been designed to allow for different limitting factors,
|
||||
LimitedTransferToken has been designed to allow for different limitting factors,
|
||||
this can be achieved by recursively calling super.transferableTokens() until the
|
||||
base class is hit. For example:
|
||||
|
||||
@ -25,7 +25,7 @@ https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts/token/Ve
|
||||
|
||||
*/
|
||||
|
||||
contract TransferableToken is ERC20 {
|
||||
contract LimitedTransferToken is ERC20 {
|
||||
// Checks whether it can transfer or otherwise throws.
|
||||
modifier canTransfer(address _sender, uint _value) {
|
||||
if (_value > transferableTokens(_sender, uint64(now))) throw;
|
||||
@ -2,9 +2,9 @@ pragma solidity ^0.4.8;
|
||||
|
||||
|
||||
import "./StandardToken.sol";
|
||||
import "./TransferableToken.sol";
|
||||
import "./LimitedTransferToken.sol";
|
||||
|
||||
contract VestedToken is StandardToken, TransferableToken {
|
||||
contract VestedToken is StandardToken, LimitedTransferToken {
|
||||
struct TokenGrant {
|
||||
address granter;
|
||||
uint256 value;
|
||||
|
||||
Reference in New Issue
Block a user