2021-02-14 13:22:42 +01:00
|
|
|
@node Smart contract interfaces
|
|
|
|
@chapter Smart contract interfaces
|
|
|
|
|
|
|
|
|
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
@section Technology
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
CIC smart contracts are implemented using the @emph{solidity} programming language for the (Ethereum Virtual Machine (EVM).
|
2021-02-14 13:22:42 +01:00
|
|
|
|
|
|
|
|
2023-05-07 20:01:06 +02:00
|
|
|
@section Adopted standards
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-05-07 20:01:06 +02:00
|
|
|
@subsection Signing
|
|
|
|
|
|
|
|
|
|
|
|
@subsection ERC - Direct use
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
The following well-known solidity interfaces are used directly.
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-25 13:32:56 +01:00
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
@itemize @bullet
|
|
|
|
@item
|
|
|
|
@uref{https://eips.ethereum.org/EIPS/eip-20, ERC20 - Token Standard}
|
|
|
|
@item
|
|
|
|
@uref{https://eips.ethereum.org/EIPS/eip-165, ERC165 - Standard Interface Detection}
|
|
|
|
@item
|
|
|
|
@uref{https://eips.ethereum.org/EIPS/eip-173, ERC173 - Contract Ownership Standard}
|
|
|
|
@item
|
2023-05-07 20:01:06 +02:00
|
|
|
@uref{https://eips.ethereum.org/EIPS/eip-191, ERC191 - Signed Data Standard}
|
|
|
|
@item
|
|
|
|
@uref{https://eips.ethereum.org/EIPS/eip-712, ERC712 - Typed structured data hashing and signing}
|
|
|
|
@item
|
2023-03-25 12:14:46 +01:00
|
|
|
@uref{https://eips.ethereum.org/EIPS/eip-721, ERC721 - Non-Fungible Token Standard}
|
2023-03-26 10:58:23 +02:00
|
|
|
@item
|
|
|
|
@uref{https://eips.ethereum.org/EIPS/eip-5007, ERC5007 - Time NFT (EIP-721 Time Extension)}
|
|
|
|
@item
|
|
|
|
@uref{https://eips.ethereum.org/EIPS/eip-5192, ERC5192 - Minimal Soulbound NFTs}
|
2023-03-25 12:14:46 +01:00
|
|
|
@end itemize
|
2021-02-14 13:22:42 +01:00
|
|
|
|
|
|
|
|
2023-05-07 20:01:06 +02:00
|
|
|
@subsection ERCs Partial use
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-26 10:58:23 +02:00
|
|
|
The following well-known solidity interfaces are partially implemented in CIC native interfaces.
|
2023-03-25 12:14:46 +01:00
|
|
|
@itemize @dfn
|
2023-05-07 20:01:06 +02:00
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
@item
|
|
|
|
@uref{https://eips.ethereum.org/EIPS/eip-5679, ERC5679 - Token Minting and Burning} (See @code{Minter}, @code{Burner})
|
|
|
|
@end itemize
|
2021-02-14 13:22:42 +01:00
|
|
|
|
|
|
|
|
2023-03-25 13:32:56 +01:00
|
|
|
@section Native interfaces
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
@include accountsindex.sol.texi
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
@include burner.sol.texi
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-26 10:58:23 +02:00
|
|
|
@include chrono.sol.texi
|
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
@include declarator.sol.texi
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-26 13:04:31 +02:00
|
|
|
@include digest.sol.texi
|
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
@include expire.sol.texi
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
@include faucet.sol.texi
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
@include locator.sol.texi
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
@include minter.sol.texi
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
@include msg.sol.texi
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-25 12:14:46 +01:00
|
|
|
@include registry.sol.texi
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-03-25 13:32:56 +01:00
|
|
|
@include seal.sol.texi
|
2021-02-14 13:22:42 +01:00
|
|
|
|
2023-05-07 20:01:06 +02:00
|
|
|
@include tokenvend.sol.texi
|
|
|
|
|
|
|
|
@include tokenvote.sol.texi
|
|
|
|
|
2023-03-25 13:32:56 +01:00
|
|
|
@include writer.sol.texi
|