Blockwell

Trade Token X

ERC20

This contract is an ERC20 token.

Name Trade Token X
Symbol TIOx
Decimals 18
Total Supply 223,534,823 TIOx

About

Stats

Public Functions 13
Event Types 3
Code Size 13,121 bytes

Events (3) keyboard_arrow_up

Approval Event

Parameters help
owner
address help
spender
address help
value
uint256 help

OwnershipTransferred Event

Parameters help
previousOwner
address help
newOwner
address help

Transfer Event

Parameters help
from
address help
to
address help
value
uint256 help

name Variable

string help

symbol Variable

string help

decimals Variable

uint8 help

cap Variable

uint256 help

cap Variable

uint256 help

owner Variable

address help

_totalSupply Variable

uint256 help
Internal Variable

_balanceOf Variable

mapping(address => uint256) help
Internal Variable

_allowance Variable

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

Functions Expand All Collapse All

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help view
Source Code
function totalSupply() public view returns (uint256) {
  return _totalSupply;
}

Parameters help

Name Type
owner
address help

Properties

Visibility help public
Mutability help view
Source Code
function balanceOf(address owner) public view returns (uint256) {
  return _balanceOf[owner];
}

Parameters help

Name Type
to
address help
value
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function transfer(address to, uint256 value)
  public
  onlyValidAddress(to)
  onlySufficientBalance(msg.sender, value)
  returns (bool)
{
  _balanceOf[msg.sender] = _balanceOf[msg.sender].sub(value);
  _balanceOf[to] = _balanceOf[to].add(value);

  emit Transfer(msg.sender, to, value);

  return true;
}

Parameters help

Name Type
owner
address help
spender
address help

Properties

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

Parameters help

Name Type
from
address help
to
address help
value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function transferFrom(
  address from,
  address to,
  uint256 value
)
  public
  onlyValidAddress(to)
  onlySufficientBalance(from, value)
  onlySufficientAllowance(from, msg.sender, value)
  returns (bool)
{
  _balanceOf[from] = _balanceOf[from].sub(value);
  _balanceOf[to] = _balanceOf[to].add(value);
  _allowance[from][msg.sender] = _allowance[from][msg.sender].sub(value);

  emit Transfer(from, to, value);

  return true;
}

Parameters help

Name Type
spender
address help
value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function approve(address spender, uint256 value)
  public
  onlyValidAddress(spender)
  returns (bool)
{
  _allowance[msg.sender][spender] = value;

  emit Approval(msg.sender, spender, value);

  return true;
}

Parameters help

Name Type
spender
address help
addedValue
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function increaseAllowance(address spender, uint256 addedValue)
  public
  onlyValidAddress(spender)
  returns (bool)
{
  _allowance[msg.sender][spender] = _allowance[msg.sender][spender].add(
    addedValue
  );

  emit Approval(msg.sender, spender, _allowance[msg.sender][spender]);

  return true;
}

Parameters help

Name Type
spender
address help
subtractedValue
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function decreaseAllowance(address spender, uint256 subtractedValue)
  public
  onlyValidAddress(spender)
  onlySufficientAllowance(msg.sender, spender, subtractedValue)
  returns (bool)
{
  _allowance[msg.sender][spender] = _allowance[msg.sender][spender].sub(
    subtractedValue
  );

  emit Approval(msg.sender, spender, _allowance[msg.sender][spender]);

  return true;
}

Parameters help

Name Type
amount
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function burn(uint256 amount) public {
  _burn(msg.sender, amount);
}

Parameters help

Name Type
from
address help
amount
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function burnFrom(address from, uint256 amount)
  public
  onlyValidAddress(from)
  onlySufficientAllowance(from, msg.sender, amount)
{
  _allowance[from][msg.sender] = _allowance[from][msg.sender].sub(amount);

  _burn(from, amount);
}

Parameters help

Name Type
newOwner
address help

Properties

Visibility help public
Mutability help transaction
Source Code
function transferOwnership(address newOwner)
  public
  onlyOwner
  onlyValidAddress(newOwner)
{
  emit OwnershipTransferred(owner, newOwner);

  owner = newOwner;
}

Parameters help

Name Type
to
address help
amount
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function mint(address to, uint256 amount)
  public
  onlyOwner
  onlyValidAddress(to)
  onlyNotExceedingCap(amount)
  returns (bool)
{
  _mint(to, amount);

  return true;
}

Parameters help

Name Type
addresses
address[] help
amounts
uint256[] help

Properties

Visibility help public
Mutability help transaction
Source Code
function mintMany(address[] addresses, uint256[] amounts)
  public
  onlyOwner
  onlyNotExceedingCap(_sum(amounts))
  returns (bool)
{
  require(
    addresses.length == amounts.length,
    "Addresses array must be the same size as amounts array"
  );

  for (uint256 i = 0; i < addresses.length; i++) {
    _mint(addresses[i], amounts[i]);
  }

  return true;
}

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.

internal MintableToken._mint keyboard_arrow_up

Parameters help

Name Type
to
address help
amount
uint256 help

Properties

Visibility help internal
Mutability help transaction

Modifiers help

Source Code
function _mint(address to, uint256 amount) internal onlyValidAddress(to) {
  _totalSupply = _totalSupply.add(amount);
  _balanceOf[to] = _balanceOf[to].add(amount);

  emit Transfer(address(0), to, amount);
}

internal MintableToken._sum keyboard_arrow_up

Parameters help

Name Type
arr
uint256[] help

Properties

Visibility help internal
Mutability help pure
Source Code
function _sum(uint256[] arr) internal pure returns (uint256) {
  uint256 aggr = 0;
  for (uint256 i = 0; i < arr.length; i++) {
    aggr = aggr.add(arr[i]);
  }
  return aggr;
}

internal BurnableToken._burn keyboard_arrow_up

Parameters help

Name Type
from
address help
amount
uint256 help

Properties

Visibility help internal
Mutability help transaction
Source Code
function _burn(address from, uint256 amount)
  internal
  onlySufficientBalance(from, amount)
{
  _totalSupply = _totalSupply.sub(amount);
  _balanceOf[from] = _balanceOf[from].sub(amount);

  emit Transfer(from, address(0), amount);
}