This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
dido:public:ra:xapend:xapend.b_stds:defact:ethereum:eip:erc_0165 [2020/05/07 15:35] nick ↷ Page moved from dido:public:apdx.stds:defact:ethereum:eip:erc_0165 to dido:public:xapend.stds:defact:ethereum:eip:erc_0165 |
dido:public:ra:xapend:xapend.b_stds:defact:ethereum:eip:erc_0165 [2022/02/03 16:49] (current) 86.125.5.245 ↷ Links adapted because of a move operation |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ======== EIP 165: ERC-165 Standard Interface Detection ========= | + | ==== EIP 165: ERC-165 Standard Interface Detection ==== |
| - | [[dido:public:apdx.stds:defact:ethereum| Return to Ethereum ERCs ]] | + | [[dido:public:ra:xapend:xapend.b_stds:defact:ethereum:eip| Return to Ethereum ERCs ]] |
| - | : **Note**: The following is an excerpt from the official Ethereum site. It is provided here as a connivence and is not authoritative. Refer to the original document as the authoritative reference. | + | : **Note**: The following is an excerpt from the official Ethereum site. It is provided here as a convenience and is not authoritative. Refer to the original document as the authoritative reference. |
| <table> | <table> | ||
| Line 13: | Line 13: | ||
| | Specification | [[http://eips.ethereum.org/EIPS/eip-165#Specification]] | | | Specification | [[http://eips.ethereum.org/EIPS/eip-165#Specification]] | | ||
| | Category | ERC | | | Category | ERC | | ||
| - | | Requires | [[dido:public:apdx.stds:defact:ethereum:eip:erc_0214| EIP 214 ]] | | + | | Requires | [[dido:public:ra:xapend:xapend.b_stds:defact:ethereum:eip:erc_0214|EIP 214 ]] | |
| </table> | </table> | ||
| + | === Simple Summary === | ||
| + | : //Creates a standard method to publish and detect what interfaces a [[dido:public:ra:xapend:xapend.a_glossary:s:smart_contract|smart contract]] implements.// | ||
| - | ====== Simple Summary ====== | + | === Abstract === |
| - | : //Creates a standard method to publish and detect what interfaces a smart contract implements.// | + | |
| - | + | ||
| - | ====== Abstract ====== | + | |
| ://Herein, we standardize the following:// | ://Herein, we standardize the following:// | ||
| + | ://1. How interfaces are identified// | ||
| + | ://2. How a contract will publish the interfaces it implements// | ||
| + | ://3. How to detect if a contract implements ERC-165// | ||
| + | ://4. How to detect if a contract implements any given interface// | ||
| - | - //How interfaces are identified// | + | === Motivation === |
| - | - //How a contract will publish the interfaces it implements// | + | : // For some “standard interfaces” like the [[dido:public:ra:xapend:xapend.b_stds:defact:ethereum:eip:erc_0020| ERC-20]] token interface, it is sometimes useful to query whether a contract supports the interface and if yes, which version of the interface, in order to adapt the way in which the contract is to be interacted with. Specifically for ERC-20, a version [[dido:public:ra:xapend:xapend.a_glossary:i:id|identifier]] has already been proposed. This proposal standardizes the concept of interfaces and standardizes the identification (naming) of interfaces.// |
| - | - //How to detect if a contract implements ERC-165// | + | |
| - | - //How to detect if a contract implements any given interface// | + | |
| - | + | ||
| - | ====== Motivation ====== | + | |
| - | : // For some “standard interfaces” like the [[dido:public:apdx.stds:defact:ethereum:eip:erc_0020| ERC-20]] token interface, it is sometimes useful to query whether a contract supports the interface and if yes, which version of the interface, in order to adapt the way in which the contract is to be interacted with. Specifically for ERC-20, a version identifier has already been proposed. This proposal standardizes the concept of interfaces and standardizes the identification (naming) of interfaces.// | + | |