Pair (ZEN-20)
This documentation covers ZEN-20 functionality for denominating pool tokens. For ZeniqSwap-specific functionality, see Pair.
Events
Approval​
event Approval(address indexed owner, address indexed spender, uint value);
Emitted each time an approval occurs via approve or permit.
Transfer​
event Transfer(address indexed from, address indexed to, uint value);
Emitted each time a transfer occurs via transfer, transferFrom, mint, or burn.
Read-Only Functions
name​
function name() external pure returns (string memory);
Returns ZeniqSwap
for all pairs.
symbol​
function symbol() external pure returns (string memory);
Returns UNI-
for all pairs.
decimals​
function decimals() external pure returns (uint8);
Returns 18
for all pairs.
totalSupply​
function totalSupply() external view returns (uint);
Returns the total amount of pool tokens for a pair.
balanceOf​
function balanceOf(address owner) external view returns (uint);
Returns the amount of pool tokens owned by an address.
allowance​
function allowance(address owner, address spender) external view returns (uint);
Returns the amount of liquidity tokens owned by an address that a spender is allowed to transfer via transferFrom.
DOMAIN_SEPARATOR​
function DOMAIN_SEPARATOR() external view returns (bytes32);
Returns a domain separator for use in permit.
PERMIT_TYPEHASH​
function PERMIT_TYPEHASH() external view returns (bytes32);
Returns a typehash for use in permit.
nonces​
function nonces(address owner) external view returns (uint);
Returns the current nonce for an address for use in permit.
State-Changing Functions
approve​
function approve(address spender, uint value) external returns (bool);
Lets msg.sender
set their allowance for a spender.
- Emits Approval.
transfer​
function transfer(address to, uint value) external returns (bool);
Lets msg.sender
send pool tokens to an address.
- Emits Transfer.
transferFrom​
function transferFrom(address from, address to, uint value) external returns (bool);
Sends pool tokens from one address to another.
- Requires approval.
- Emits Transfer.
permit​
function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external;
Sets the allowance for a spender where approval is granted via a signature.
- Emits Approval.
Interface
pragma solidity >=0.5.0;
interface IZeniqSwapERC20 {
event Approval(address indexed owner, address indexed spender, uint value);
event Transfer(address indexed from, address indexed to, uint value);
function name() external pure returns (string memory);
function symbol() external pure returns (string memory);
function decimals() external pure returns (uint8);
function totalSupply() external view returns (uint);
function balanceOf(address owner) external view returns (uint);
function allowance(address owner, address spender) external view returns (uint);
function approve(address spender, uint value) external returns (bool);
function transfer(address to, uint value) external returns (bool);
function transferFrom(address from, address to, uint value) external returns (bool);
function DOMAIN_SEPARATOR() external view returns (bytes32);
function PERMIT_TYPEHASH() external pure returns (bytes32);
function nonces(address owner) external view returns (uint);
function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external;
}