Blockwell

Blackmoon Crypto Token

ERC20

This contract is an ERC20 token.

Name Blackmoon Crypto Token
Symbol BMC
Decimals 8
Total Supply 60,000,000 BMC

About link description

Blackmoon (BMC) is a cryptocurrency token and operates on the Ethereum platform. Blackmoon has a current supply of 60,000,000 with 54,000,000 in circulation. The last known price of Blackmoon is $0.045223 USD and is up 7.27% over the last 24 hours. It is currently trading on 5 active market(s) with $337.86 traded over the last 24 hours. More information can be found at https://www.blackmoon.net.

Stats

Public Functions 28
Event Types 3
Code Size 16,677 bytes

Approval Event

Parameters help
from
address help
spender
address help
value
uint256 help

Transfer Event

Parameters help
from
address help
to
address help
value
uint256 help

UpgradeProposal Event

Parameters help
newVersion
address help

Functions Expand All Collapse All

totalSupply keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help constant
Source Code
    function totalSupply() constant returns(uint) {
        return bmcPlatform.totalSupply(smbl);
    }

balanceOf keyboard_arrow_up

Parameters help

Name Type
_owner
address help

Properties

Visibility help public
Mutability help constant
Source Code
    function balanceOf(address _owner) constant returns(uint) {
        return bmcPlatform.balanceOf(_owner, smbl);
    }

transfer keyboard_arrow_up

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) returns (bool success);

transferFrom keyboard_arrow_up

Parameters help

Name Type
_from
address help
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
    function transferFrom(address _from, address _to, uint256 _value) returns (bool success);

approve keyboard_arrow_up

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) returns (bool success);

allowance keyboard_arrow_up

Parameters help

Name Type
_from
address help
_spender
address help

Properties

Visibility help public
Mutability help constant
Source Code
    function allowance(address _from, address _spender) constant returns(uint) {
        return bmcPlatform.allowance(_from, _spender, smbl);
    }

init keyboard_arrow_up

Parameters help

Name Type
_bmcPlatform
BMCPlatform help
_symbol
string help
_name
string help

Properties

Visibility help public
Mutability help transaction
Source Code
    function init(BMCPlatform _bmcPlatform, string _symbol, string _name) returns(bool) {
        if (address(bmcPlatform) != 0x0) {
            return false;
        }
        bmcPlatform = _bmcPlatform;
        symbol = _symbol;
        smbl = stringToBytes32(_symbol);
        name = _name;
        return true;
    }

stringToBytes32 keyboard_arrow_up

Parameters help

Name Type
source
string help

Properties

Visibility help public
Mutability help transaction
Source Code
    function stringToBytes32(string memory source) returns (bytes32 result) {
        assembly {
           result := mload(add(source, 32))
        }
    }

decimals keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help constant
Source Code
    function decimals() constant returns(uint8) {
        return bmcPlatform.baseUnit(smbl);
    }

transfer keyboard_arrow_up

Parameters help

Name Type
_to
address help
_value
uint help

Properties

Visibility help public
Mutability help transaction
Source Code
    function transfer(address _to, uint _value) returns(bool) {
        if (_to != 0x0) {
          return _transferWithReference(_to, _value, "");
        }
        else {
            return false;
        }
    }

transferWithReference keyboard_arrow_up

Parameters help

Name Type
_to
address help
_value
uint help
_reference
string help

Properties

Visibility help public
Mutability help transaction
Source Code
    function transferWithReference(address _to, uint _value, string _reference) returns(bool) {
        if (_to != 0x0) {
            return _transferWithReference(_to, _value, _reference);
        }
        else {
            return false;
        }
    }

__transferWithReference keyboard_arrow_up

Parameters help

Name Type
_to
address help
_value
uint help
_reference
string help
_sender
address help

Properties

Visibility help public
Mutability help transaction

Modifiers help

onlyAccess checks for the following:
Source Code
    function __transferWithReference(address _to, uint _value, string _reference, address _sender) onlyAccess(_sender) returns(bool) {
        return bmcPlatform.proxyTransferWithReference(_to, _value, smbl, _reference, _sender) == OK;
    }

transferFrom keyboard_arrow_up

Parameters help

Name Type
_from
address help
_to
address help
_value
uint help

Properties

Visibility help public
Mutability help transaction
Source Code
    function transferFrom(address _from, address _to, uint _value) returns(bool) {
        if (_to != 0x0) {
            return _getAsset().__transferFromWithReference(_from, _to, _value, "", msg.sender);
         }
         else {
             return false;
         }
    }

__transferFromWithReference keyboard_arrow_up

Parameters help

Name Type
_from
address help
_to
address help
_value
uint help
_reference
string help
_sender
address help

Properties

Visibility help public
Mutability help transaction

Modifiers help

onlyAccess checks for the following:
Source Code
    function __transferFromWithReference(address _from, address _to, uint _value, string _reference, address _sender) onlyAccess(_sender) returns(bool) {
        return bmcPlatform.proxyTransferFromWithReference(_from, _to, _value, smbl, _reference, _sender) == OK;
    }

approve keyboard_arrow_up

Parameters help

Name Type
_spender
address help
_value
uint help

Properties

Visibility help public
Mutability help transaction
Source Code
    function approve(address _spender, uint _value) returns(bool) {
        if (_spender != 0x0) {
             return _getAsset().__approve(_spender, _value, msg.sender);
        }
        else {
            return false;
        }
    }

__approve keyboard_arrow_up

Parameters help

Name Type
_spender
address help
_value
uint help
_sender
address help

Properties

Visibility help public
Mutability help transaction

Modifiers help

onlyAccess checks for the following:
Source Code
    function __approve(address _spender, uint _value, address _sender) onlyAccess(_sender) returns(bool) {
        return bmcPlatform.proxyApprove(_spender, _value, smbl, _sender) == OK;
    }

emitTransfer keyboard_arrow_up

Parameters help

Name Type
_from
address help
_to
address help
_value
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

onlyBMCPlatform checks for the following:
Source Code
    function emitTransfer(address _from, address _to, uint _value) onlyBMCPlatform() {
        Transfer(_from, _to, _value);
    }

emitApprove keyboard_arrow_up

Parameters help

Name Type
_from
address help
_spender
address help
_value
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

onlyBMCPlatform checks for the following:
Source Code
    function emitApprove(address _from, address _spender, uint _value) onlyBMCPlatform() {
        Approval(_from, _spender, _value);
    }

constructor keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help payable
Source Code
    function () payable {
        _getAsset().__process.value(msg.value)(msg.data, msg.sender);
    }

getVersionFor keyboard_arrow_up

Parameters help

Name Type
_sender
address help

Properties

Visibility help public
Mutability help constant
Source Code
    function getVersionFor(address _sender) constant returns(address) {
        return userOptOutVersion[_sender] == 0 ? latestVersion : userOptOutVersion[_sender];
    }

getLatestVersion keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help constant
Source Code
    function getLatestVersion() constant returns(address) {
        return latestVersion;
    }

getPendingVersion keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help constant
Source Code
    function getPendingVersion() constant returns(address) {
        return pendingVersion;
    }

getPendingVersionTimestamp keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help constant
Source Code
    function getPendingVersionTimestamp() constant returns(uint) {
        return pendingVersionTimestamp;
    }

proposeUpgrade keyboard_arrow_up

Parameters help

Name Type
_newVersion
address help

Properties

Visibility help public
Mutability help transaction

Modifiers help

onlyAssetOwner checks for the following:
Source Code
    function proposeUpgrade(address _newVersion) onlyAssetOwner() returns(bool) {
        // Should not already be in the upgrading process.
        if (pendingVersion != 0x0) {
            return false;
        }
        // New version address should be other than 0x0.
        if (_newVersion == 0x0) {
            return false;
        }
        // Don't apply freeze-time for the initial setup.
        if (latestVersion == 0x0) {
            latestVersion = _newVersion;
            return true;
        }
        pendingVersion = _newVersion;
        pendingVersionTimestamp = now;
        UpgradeProposal(_newVersion);
        return true;
    }

purgeUpgrade keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction

Modifiers help

onlyAssetOwner checks for the following:
Source Code
    function purgeUpgrade() onlyAssetOwner() returns(bool) {
        if (pendingVersion == 0x0) {
            return false;
        }
        delete pendingVersion;
        delete pendingVersionTimestamp;
        return true;
    }

commitUpgrade keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
    function commitUpgrade() returns(bool) {
        if (pendingVersion == 0x0) {
            return false;
        }
        if (pendingVersionTimestamp + UPGRADE_FREEZE_TIME > now) {
            return false;
        }
        latestVersion = pendingVersion;
        delete pendingVersion;
        delete pendingVersionTimestamp;
        return true;
    }

optOut keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
    function optOut() returns(bool) {
        if (userOptOutVersion[msg.sender] != 0x0) {
            return false;
        }
        userOptOutVersion[msg.sender] = latestVersion;
        return true;
    }

optIn keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
    function optIn() returns(bool) {
        delete userOptOutVersion[msg.sender];
        return true;
    }