Blockwell

IcxToken

ERC20

This contract is an ERC20 token.

Name IcxToken
Symbol ICX
Decimals
Total Supply NaN ICX

About

Stats

Public Functions 11
Event Types 6
Code Size 6,900 bytes

Library Use

Uses SafeMath for uint.

Events (6) keyboard_arrow_up

Approval Event

Parameters help
owner
address help
spender
address help
value
uint help

Locked Event

Parameters help
lockaddress
address help
status
bool help

TokenBurned Event

Parameters help
burnAddress
address help
amountOfTokens
uint help

TokenTransfer Event

Parameters help

Transfer Event

Parameters help
from
address help
to
address help
value
uint help

Unlocked Event

Parameters help
unlockedaddress
address help
status
bool help

walletAddress Variable

address help

creationTime Variable

uint help

lock Variable

bool help

tokenTransfer Variable

bool help

owner Variable

address help

unlockaddress Variable

mapping(address => bool) help

lockaddress Variable

mapping(address => bool) help

_balances Variable

mapping(address => uint) help
Internal Variable

_approvals Variable

mapping(address => mapping(address => uint)) help
Internal Variable

_supply Variable

uint help
Internal Variable

Functions Expand All Collapse All

lockAddress keyboard_arrow_up

Parameters help

Name Type
target
address help
status
bool help

Properties

Visibility help public
Mutability help transaction
Source Code
function lockAddress(address target, bool status) external isOwner {
  require(owner != target);
  lockaddress[target] = status;
  Locked(target, status);
}

unlockAddress keyboard_arrow_up

Parameters help

Name Type
target
address help
status
bool help

Properties

Visibility help public
Mutability help transaction
Source Code
function unlockAddress(address target, bool status) external isOwner {
  unlockaddress[target] = status;
  Unlocked(target, status);
}

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help constant
Source Code
function totalSupply() constant returns (uint256 supply) {
  return _supply;
}

Parameters help

Name Type
who
address help

Properties

Visibility help public
Mutability help constant
Source Code
function balanceOf(address who) constant returns (uint256 value) {
  return _balances[who];
}

Parameters help

Name Type
owner
address help
spender
address help

Properties

Visibility help public
Mutability help constant
Source Code
function allowance(address owner, address spender)
  constant
  returns (uint256 _allowance)
{
  return _approvals[owner][spender];
}

Parameters help

Name Type
to
address help
value
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

isTokenTransfer checks for the following:
checkLock checks for the following:
Source Code
function transfer(address to, uint256 value)
  isTokenTransfer
  checkLock
  returns (bool success)
{
  require(_balances[msg.sender] >= value);

  _balances[msg.sender] = _balances[msg.sender].sub(value);
  _balances[to] = _balances[to].add(value);
  Transfer(msg.sender, to, value);
  return true;
}

Parameters help

Name Type
from
address help
to
address help
value
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

isTokenTransfer checks for the following:
checkLock checks for the following:
Source Code
function transferFrom(
  address from,
  address to,
  uint256 value
) isTokenTransfer checkLock returns (bool success) {
  // if you don't have enough balance, throw
  require(_balances[from] >= value);
  // if you don't have approval, throw
  require(_approvals[from][msg.sender] >= value);
  // transfer and return true
  _approvals[from][msg.sender] = _approvals[from][msg.sender].sub(value);
  _balances[from] = _balances[from].sub(value);
  _balances[to] = _balances[to].add(value);
  Transfer(from, to, value);
  return true;
}

Parameters help

Name Type
spender
address help
value
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

isTokenTransfer checks for the following:
checkLock checks for the following:
Source Code
function approve(address spender, uint256 value)
  isTokenTransfer
  checkLock
  returns (bool success)
{
  _approvals[msg.sender][spender] = value;
  Approval(msg.sender, spender, value);
  return true;
}

burnTokens keyboard_arrow_up

Parameters help

Name Type
tokensAmount
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

isTokenTransfer checks for the following:
Source Code
function burnTokens(uint256 tokensAmount) external isTokenTransfer {
  require(_balances[msg.sender] >= tokensAmount);

  _balances[msg.sender] = _balances[msg.sender].sub(tokensAmount);
  _supply = _supply.sub(tokensAmount);
  TokenBurned(msg.sender, tokensAmount);
}

enableTokenTransfer keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function enableTokenTransfer() external onlyFromWallet {
  tokenTransfer = true;
  TokenTransfer();
}

disableTokenTransfer keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function disableTokenTransfer() external onlyFromWallet {
  tokenTransfer = false;
  TokenTransfer();
}

Internal Functions Expand All Collapse All

Internal functions are parts of the contract that can't be used directly, but instead are used by the public functions listed above.