Blockwell

EBCoin

ERC20

This contract is an ERC20 token.

Name EBCoin
Symbol EBC
Decimals 18
Total Supply 10,295,055,166 EBC

About

Stats

Public Functions 11
Event Types 8
Code Size 6,375 bytes

Library Use

Uses SafeMath for uint256.

Events (8) keyboard_arrow_up

Approval Event

Parameters help
_owner
address help
_spender
address help
_value
uint256 help

Burn Event

Parameters help
_from
address help
_value
uint256 help

ManagerChanged Event

Parameters help
_oldManager
address help
_newManager
address help

Mint Event

Parameters help
_to
address help
_value
uint256 help

OwnerChanged Event

Parameters help
_oldOwner
address help
_newOwner
address help

ReleaseTimeChanged Event

Parameters help
_owner
address help
_oldReleaseTime
uint256 help
_newReleaseTime
uint256 help

ReleasedChanged Event

Parameters help
_oldReleased
bool help
_newReleased
bool help

Transfer Event

Parameters help
_from
address help
_to
address help
_value
uint256 help

name Constant

string help
EBCoin

symbol Constant

string help
EBC

decimals Constant

uint8 help
18

totalSupply Variable

uint256 help

released Variable

bool help

manager Variable

address help

owner Variable

address help

releaseTime Variable

mapping(address => uint256) help

balances Variable

mapping(address => uint256) help
Internal Variable

allowed Variable

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

Functions Expand All Collapse All

changeOwner keyboard_arrow_up

Parameters help

Name Type
_newOwner
address help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function changeOwner(address _newOwner) public onlyOwner {
  require(_newOwner != address(0));

  address oldOwner = owner;
  if (oldOwner != _newOwner) {
    owner = _newOwner;

    OwnerChanged(oldOwner, _newOwner);
  }
}

changeManager keyboard_arrow_up

Parameters help

Name Type
_newManager
address help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function changeManager(address _newManager) public onlyOwner {
  require(_newManager != address(0));

  address oldManager = manager;
  if (oldManager != _newManager) {
    manager = _newManager;

    ManagerChanged(oldManager, _newManager);
  }
}

Parameters help

Name Type
_owner
address help

Properties

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

Parameters help

Name Type
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

canTransfer checks for the following:
Source Code
function transfer(address _to, uint256 _value)
  public
  canTransfer(msg.sender)
  returns (bool)
{
  require(_to != address(0));
  require(_value <= balances[msg.sender]);

  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
_owner
address help
_spender
address help

Properties

Visibility help public
Mutability help constant
Source Code
function allowance(address _owner, address _spender)
  public
  constant
  returns (uint256)
{
  return allowed[_owner][_spender];
}

Parameters help

Name Type
_from
address help
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

canTransfer checks for the following:
Source Code
function transferFrom(
  address _from,
  address _to,
  uint256 _value
) public canTransfer(_from) returns (bool) {
  require(_to != address(0));
  require(_value <= balances[_from]);
  require(_value <= allowed[_from][msg.sender]);

  balances[_from] = balances[_from].sub(_value);
  balances[_to] = balances[_to].add(_value);
  allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);

  Transfer(_from, _to, _value);

  return true;
}

Parameters help

Name Type
_spender
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function approve(address _spender, uint256 _value) public returns (bool) {
  allowed[msg.sender][_spender] = _value;

  Approval(msg.sender, _spender, _value);

  return true;
}

mint keyboard_arrow_up

Parameters help

Name Type
_to
address help
_value
uint256 help
_releaseTime
uint256 help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function mint(
  address _to,
  uint256 _value,
  uint256 _releaseTime
) public onlyOwnerOrManager returns (bool) {
  require(_to != address(0));

  totalSupply = totalSupply.add(_value);
  balances[_to] = balances[_to].add(_value);

  Mint(_to, _value);
  Transfer(0x0, _to, _value);

  setReleaseTime(_to, _releaseTime);

  return true;
}

burn keyboard_arrow_up

Parameters help

Name Type
_from
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function burn(address _from, uint256 _value)
  public
  onlyOwnerOrManager
  returns (bool)
{
  require(_from != address(0));
  require(_value <= balances[_from]);

  balances[_from] = balances[_from].sub(_value);
  totalSupply = totalSupply.sub(_value);

  Burn(_from, _value);

  return true;
}

setReleaseTime keyboard_arrow_up

Parameters help

Name Type
_owner
address help
_newReleaseTime
uint256 help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function setReleaseTime(address _owner, uint256 _newReleaseTime)
  public
  onlyOwnerOrManager
  returns (bool)
{
  require(_owner != address(0));

  uint256 oldReleaseTime = releaseTime[_owner];
  if (oldReleaseTime != _newReleaseTime) {
    releaseTime[_owner] = _newReleaseTime;

    ReleaseTimeChanged(_owner, oldReleaseTime, _newReleaseTime);

    return true;
  }

  return false;
}

setReleased keyboard_arrow_up

Parameters help

Name Type
_newReleased
bool help

Properties

Visibility help public
Mutability help transaction
Source Code
function setReleased(bool _newReleased)
  public
  onlyOwnerOrManager
  returns (bool)
{
  bool oldReleased = released;
  if (oldReleased != _newReleased) {
    released = _newReleased;

    ReleasedChanged(oldReleased, _newReleased);

    return true;
  }

  return false;
}

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.