ERC20
This contract is an ERC20 token.
Name
PTest2
Symbol
PT2
Decimals
18
Total Supply
250,000,000 PT2
About
Stats
Public Functions
26
Event Types
11
Code Size
14,514 bytes
Library Use
Uses SafeMath for uint256.
Events (11) keyboard_arrow_up
State Variables (10) keyboard_arrow_up
Functions
paused keyboard_arrow_up
isFrozen keyboard_arrow_up
isAdmin keyboard_arrow_up
addAdmin keyboard_arrow_up
removeAdmin keyboard_arrow_up
constructor keyboard_arrow_up
tokensAvailable keyboard_arrow_up
setPrice keyboard_arrow_up
withdrawTokens keyboard_arrow_up
withdraw keyboard_arrow_up
pause keyboard_arrow_up
unpause keyboard_arrow_up
freeze keyboard_arrow_up
unfreeze keyboard_arrow_up
multiFreeze keyboard_arrow_up
multiUnfreeze keyboard_arrow_up
totalSupply 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
whenNotPaused
returns (bool)
{
_transfer(msg.sender, to, value);
return true;
}
multiTransfer keyboard_arrow_up
Requirements help
Source Code
function multiTransfer(address[] to, uint256[] value)
public
whenNotPaused
returns (bool)
{
require(to.length > 0, "To array must not be empty");
require(value.length == to.length, "Arrays must be of equal length");
for (uint256 i = 0; i < to.length; i++) {
if (!isFrozen(to[i])) {
_transfer(msg.sender, to[i], value[i]);
} else {
emit MultiTransferPrevented(msg.sender, to[i], value[i]);
}
}
return true;
}
approve keyboard_arrow_up
Modifiers help
isNotFrozen checks for the following:
whenNotPaused checks for the following:
Source Code
function approve(address spender, uint256 value)
public
isNotFrozen
whenNotPaused
returns (bool)
{
require(spender != address(0));
allowed[msg.sender][spender] = value;
emit Approval(msg.sender, spender, value);
return true;
}
transferFrom keyboard_arrow_up
Requirements help
Source Code
function transferFrom(
address from,
address to,
uint256 value
) public whenNotPaused returns (bool) {
allowed[from][msg.sender] = allowed[from][msg.sender].sub(value);
_transfer(from, to, value);
return true;
}
multiTransferFrom keyboard_arrow_up
Requirements help
Source Code
function multiTransferFrom(
address from,
address[] to,
uint256[] value
) public whenNotPaused returns (bool) {
require(to.length > 0, "To array must not be empty");
require(value.length == to.length, "Arrays must be of equal length");
for (uint256 i = 0; i < to.length; i++) {
if (!isFrozen(to[i])) {
allowed[from][msg.sender] = allowed[from][msg.sender].sub(value[i]);
_transfer(from, to[i], value[i]);
} else {
emit MultiTransferPrevented(from, to[i], value[i]);
}
}
return true;
}
increaseAllowance keyboard_arrow_up
Modifiers help
isNotFrozen checks for the following:
whenNotPaused checks for the following:
Source Code
function increaseAllowance(address spender, uint256 addedValue)
public
isNotFrozen
whenNotPaused
returns (bool)
{
require(spender != address(0));
allowed[msg.sender][spender] = allowed[msg.sender][spender].add(addedValue);
emit Approval(msg.sender, spender, allowed[msg.sender][spender]);
return true;
}
decreaseAllowance keyboard_arrow_up
Modifiers help
isNotFrozen checks for the following:
whenNotPaused checks for the following:
Source Code
function decreaseAllowance(address spender, uint256 subtractedValue)
public
isNotFrozen
whenNotPaused
returns (bool)
{
require(spender != address(0));
allowed[msg.sender][spender] = allowed[msg.sender][spender].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.
internal PrideToken._transfer keyboard_arrow_up
Requirements help
Source Code
function _transfer(
address from,
address to,
uint256 value
) internal {
require(to != address(0));
require(!isFrozen(from), "From must not be frozen");
require(!isFrozen(to), "To must not be frozen");
balances[from] = balances[from].sub(value);
balances[to] = balances[to].add(value);
emit Transfer(from, to, value);
}