ERC20
This contract is an ERC20 token.
Name
DockToken
Symbol
DOCK
Decimals
18
Total Supply
1,000,000,000 DOCK
About
Identical Contracts
The following contracts have identical source code.
Stats
Public Functions
10
Event Types
3
Code Size
22,215 bytes
Constants (6) keyboard_arrow_up
State Variables (7) keyboard_arrow_up
Functions
transferOwnership keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function transferOwnership(address newOwner) public onlyOwner {
require(newOwner != address(0));
OwnershipTransferred(owner, newOwner);
owner = newOwner;
}
balanceOf keyboard_arrow_up
transfer keyboard_arrow_up
Modifiers help
onlyWhenTransferAllowed checks for the following:
One or more of the following:
-
tokenOfferingAddr
must be equal to
the sender's address
- OR
adminAddr
must be equal to
the sender's address
- ORtransferEnabled must be true
Requirements help
Source Code
function transfer(address to, uint256 value)
public
onlyWhenTransferAllowed
validDestination(to)
returns (bool)
{
return super.transfer(to, value);
}
allowance keyboard_arrow_up
transferFrom keyboard_arrow_up
Modifiers help
onlyWhenTransferAllowed checks for the following:
One or more of the following:
-
tokenOfferingAddr
must be equal to
the sender's address
- OR
adminAddr
must be equal to
the sender's address
- ORtransferEnabled must be true
Requirements help
Source Code
function transferFrom(
address from,
address to,
uint256 value
) public onlyWhenTransferAllowed validDestination(to) returns (bool) {
return super.transferFrom(from, to, value);
}
approve keyboard_arrow_up
Source Code
function approve(address _spender, uint256 _value) public returns (bool) {
allowed[msg.sender][_spender] = _value;
Approval(msg.sender, _spender, _value);
return true;
}
increaseApproval keyboard_arrow_up
Source Code
function increaseApproval(address _spender, uint256 _addedValue)
public
returns (bool)
{
allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(
_addedValue
);
Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
decreaseApproval keyboard_arrow_up
Source Code
function decreaseApproval(address _spender, uint256 _subtractedValue)
public
returns (bool)
{
uint256 oldValue = allowed[msg.sender][_spender];
if (_subtractedValue > oldValue) {
allowed[msg.sender][_spender] = 0;
} else {
allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
}
Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
setTokenOffering keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
onlyTokenOfferingAddrNotSet checks for the following:
Requirements help
Source Code
function setTokenOffering(address offeringAddr, uint256 amountForSale)
external
onlyOwner
onlyTokenOfferingAddrNotSet
{
require(!transferEnabled);
uint256 amount = (amountForSale == 0)
? TOKEN_OFFERING_ALLOWANCE
: amountForSale;
require(amount <= TOKEN_OFFERING_ALLOWANCE);
approve(offeringAddr, amount);
tokenOfferingAddr = offeringAddr;
}
Internal Functions
Internal functions are parts of the contract that can't be used directly, but instead are used by the public functions listed above.