Buggyra Coin Zero
ERC20
This contract is an ERC20 token.
Name
Buggyra Coin Zero
Symbol
BCZERO
Decimals
18
Total Supply
10,000,000,000 BCZERO
About
Stats
Public Functions
14
Event Types
6
Code Size
10,722 bytes
Library Use
Uses SafeMath for uint.
Events (6) keyboard_arrow_up
State Variables (19) keyboard_arrow_up
Functions
transferOwnership keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function transferOwnership(address _newOwner) public onlyOwner {
require(address(0) != _newOwner);
newOwner = _newOwner;
}
acceptOwnership keyboard_arrow_up
balanceOf keyboard_arrow_up
allowance keyboard_arrow_up
transfer keyboard_arrow_up
Requirements help
Source Code
function transfer(address _to, uint256 _value) public returns (bool) {
require(_to != address(0));
require(balances[msg.sender] >= _value);
balances[msg.sender] = balances[msg.sender].sub(_value);
balances[_to] = balances[_to].add(_value);
emit Transfer(msg.sender, _to, _value);
return true;
}
transferFrom keyboard_arrow_up
approve keyboard_arrow_up
Source Code
function approve(address _spender, uint256 _value) public returns (bool) {
allowed[msg.sender][_spender] = _value;
emit Approval(msg.sender, _spender, _value);
return true;
}
enableExchange keyboard_arrow_up
Requirements help
Source Code
function enableExchange(uint256 _tokenPrice) public payable {
require(!exchangeEnabled);
require(exchangeEnableCost == msg.value);
exchangeEnabled = true;
tokenPrice = _tokenPrice;
commissionAddress.transfer(msg.value);
emit TokenExchangeEnabled(msg.sender, _tokenPrice);
}
enableCodeExport keyboard_arrow_up
Parameters help
This function has no parameters.
Requirements help
Source Code
function enableCodeExport() public payable {
require(!codeExportEnabled);
require(codeExportCost == msg.value);
codeExportEnabled = true;
commissionAddress.transfer(msg.value);
emit TokenExportEnabled(msg.sender, msg.value);
}
swapTokens keyboard_arrow_up
Parameters help
This function has no parameters.
Requirements help
exchangeEnabled must be true
Source Code
function swapTokens() public payable {
require(exchangeEnabled);
uint256 tokensToSend;
tokensToSend = (msg.value * (10**decimals)) / tokenPrice;
require(balances[owner] >= tokensToSend);
balances[msg.sender] += tokensToSend;
balances[owner] -= tokensToSend;
owner.transfer(msg.value);
emit Transfer(owner, msg.sender, tokensToSend);
emit TransferSold(msg.sender, tokensToSend);
}
mintToken keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function mintToken(address _target, uint256 _mintedAmount) public onlyOwner() {
balances[_target] += _mintedAmount;
totalSupply += _mintedAmount;
emit Transfer(0, _target, _mintedAmount);
}
transferFrom keyboard_arrow_up
Requirements help
Source Code
function transferFrom(
address _from,
address _to,
uint256 _value
) public returns (bool success) {
require(_to != address(0));
require(balances[_from] >= _value); // Check if the sender has enough
require(_value <= allowed[_from][msg.sender]); // Check if allowed is greater or equal
balances[_from] = balances[_from].sub(_value); // Subtract from the sender
balances[_to] = balances[_to].add(_value); // Add the same to the recipient
allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value); // adjust allowed
emit Transfer(_from, _to, _value);
return true;
}
increaseApproval keyboard_arrow_up
Source Code
function increaseApproval(address _spender, uint256 _addedValue)
public
returns (bool success)
{
allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(
_addedValue
);
emit 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 success)
{
uint256 oldValue = allowed[msg.sender][_spender];
if (_subtractedValue > oldValue) {
allowed[msg.sender][_spender] = 0;
} else {
allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
}
emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
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.