Eximchain Token
ERC20
This contract is an ERC20 token.
Name
Eximchain Token
Symbol
EXC
Decimals
18
Total Supply
150,000,000 EXC
About
Stats
Public Functions
19
Event Types
9
Code Size
13,607 bytes
Events (9) keyboard_arrow_up
State Variables (11) keyboard_arrow_up
Functions
isOwner keyboard_arrow_up
initiateOwnershipTransfer keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Requirements help
Source Code
function initiateOwnershipTransfer(address _proposedOwner)
public
onlyOwner
returns (bool)
{
require(_proposedOwner != address(0));
require(_proposedOwner != address(this));
require(_proposedOwner != owner);
proposedOwner = _proposedOwner;
OwnershipTransferInitiated(proposedOwner);
return true;
}
completeOwnershipTransfer keyboard_arrow_up
finalize keyboard_arrow_up
isOps keyboard_arrow_up
isOwnerOrOps keyboard_arrow_up
setOpsAddress keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Requirements help
Source Code
function setOpsAddress(address _newOpsAddress) public onlyOwner returns (bool) {
require(_newOpsAddress != owner);
require(_newOpsAddress != address(this));
opsAddress = _newOpsAddress;
OpsAddressUpdated(opsAddress);
return true;
}
name keyboard_arrow_up
symbol keyboard_arrow_up
decimals keyboard_arrow_up
totalSupply keyboard_arrow_up
balanceOf keyboard_arrow_up
allowance keyboard_arrow_up
transfer keyboard_arrow_up
Source Code
function transfer(address _to, uint256 _value) public returns (bool success) {
require(!frozen);
return super.transfer(_to, _value);
}
transferFrom keyboard_arrow_up
Source Code
function transferFrom(
address _from,
address _to,
uint256 _value
) public returns (bool success) {
require(!frozen);
return super.transferFrom(_from, _to, _value);
}
approve keyboard_arrow_up
Source Code
function approve(address _spender, uint256 _value)
public
returns (bool success)
{
allowed[msg.sender][_spender] = _value;
Approval(msg.sender, _spender, _value);
return true;
}
burn keyboard_arrow_up
Requirements help
Source Code
function burn(uint256 _amount) public returns (bool) {
require(_amount > 0);
address account = msg.sender;
require(_amount <= balanceOf(account));
balances[account] = balances[account].sub(_amount);
tokenTotalSupply = tokenTotalSupply.sub(_amount);
TokensBurnt(account, _amount);
return true;
}
reclaimTokens keyboard_arrow_up
Parameters help
This function has no parameters.
Modifiers help
onlyOwner checks for the following:
Source Code
function reclaimTokens() public onlyOwner returns (bool) {
address account = address(this);
uint256 amount = balanceOf(account);
if (amount == 0) {
return false;
}
balances[account] = balances[account].sub(amount);
balances[owner] = balances[owner].add(amount);
Transfer(account, owner, amount);
TokensReclaimed(amount);
return true;
}
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.
internal FinalizableToken.validateTransfer keyboard_arrow_up
Requirements help
null
Source Code
function validateTransfer(address _sender, address _to) private view {
// Once the token is finalized, everybody can transfer tokens.
if (finalized) {
return;
}
if (isOwner(_to)) {
return;
}
// Before the token is finalized, only owner and ops are allowed to initiate transfers.
// This allows them to move tokens while the sale is still ongoing for example.
require(isOwnerOrOps(_sender));
}