About
link
description
Akropolis (AKRO) is a cryptocurrency and operates on the Ethereum platform. Akropolis has a current supply of 4,000,000,000 with 3,126,730,139.8809524 in circulation. The last known price of Akropolis is 0.01901216 USD and is down -2.54 over the last 24 hours. It is currently trading on 52 active market(s) with $14,093,738.37 traded over the last 24 hours. More information can be found at https://akropolis.io/.
Stats
Public Functions
7
Event Types
2
Code Size
12,916 bytes
Constants (1) keyboard_arrow_up
IMPLEMENTATION_SLOT Constant
bytes32 help
0x7050c9e0f4ca769c69bd3a8ef740bc37934f8e2c036e5a723fd8ee048ed3f8c3
Functions
transferOwnership keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function transferOwnership(address _newOwner) public onlyOwner {
require(_newOwner != address(0), "Empty address");
pendingOwner = _newOwner;
}
claimOwnership keyboard_arrow_up
claimBalanceOwnership keyboard_arrow_up
claimAllowanceOwnership keyboard_arrow_up
constructor keyboard_arrow_up
upgradeTo keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function upgradeTo(address newImplementation) public onlyOwner {
_upgradeTo(newImplementation);
}
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.
internal UpgradeabilityProxy._implementation keyboard_arrow_up
internal UpgradeabilityProxy._upgradeTo keyboard_arrow_up
internal UpgradeabilityProxy._setImplementation keyboard_arrow_up
Source Code
function _setImplementation(address newImplementation) private {
require(
AddressUtils.isContract(newImplementation),
"Cannot set a proxy implementation to a non-contract address"
);
bytes32 slot = IMPLEMENTATION_SLOT;
assembly {
sstore(slot, newImplementation)
}
}
internal Proxy._implementation keyboard_arrow_up
internal Proxy._delegate keyboard_arrow_up
Source Code
function _delegate(address implementation) internal {
assembly {
// Copy msg.data. We take full control of memory in this inline assembly
// block because it will not return to Solidity code. We overwrite the
// Solidity scratch pad at memory position 0.
calldatacopy(0, 0, calldatasize)
// Call the implementation.
// out and outsize are 0 because we don't know the size yet.
let result := delegatecall(gas, implementation, 0, calldatasize, 0, 0)
// Copy the returned data.
returndatacopy(0, 0, returndatasize)
switch result
// delegatecall returns 0 on error.
case 0 {
revert(0, returndatasize)
}
default {
return(0, returndatasize)
}
}
}