-
Notifications
You must be signed in to change notification settings - Fork 576
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merged by EIP-Bot.
- Loading branch information
Showing
2 changed files
with
26 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,10 @@ | ||
--- | ||
eip: 7208 | ||
title: On-Chain Data Container | ||
description: ERC interoperability by abstracting logic away from storage | ||
description: Interoperability by abstracting logic away from storage | ||
author: Rachid Ajaja <[email protected]>, Alexandros Athanasopulos (@Xaleee), Pavel Rubin (@pash7ka), Sebastian Galimberti Romano (@galimba) | ||
discussions-to: https://ethereum-magicians.org/t/erc-7208-on-chain-data-container/14778 | ||
status: Draft | ||
status: Review | ||
type: Standards Track | ||
category: ERC | ||
created: 2023-06-09 | ||
|
@@ -271,6 +271,8 @@ We present an **educational example** implementation showcasing two types of tok | |
**This example has not been audited and should not be used in production environments.** | ||
|
||
|
||
See [contracts](../assets/eip-7208/contracts/README.md) | ||
|
||
|
||
## Security Considerations | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
# Reference implementation of ERC-7208 and usage examples | ||
## List of contracts | ||
### Interfaces | ||
- [IDataIndex](./interfaces/IDataIndex.sol) - Interface of Data Index | ||
- [IDataObject](./interfaces/IDataObject.sol) - Interface of Data Object | ||
- [IDataPointRegistry](./interfaces/IDataPointRegistry.sol) - Interface of Data Point Registry | ||
- [IIDManager](./interfaces/IIDManager.sol) - Interface for buildinq and quering Data Index user identifiers | ||
|
||
### Implementation | ||
- [DataIndex](./DataIndex.sol) - Data Index (implements `IDataIndex` and `IIDManager`) | ||
- [DataPointRegistry](./DataPointRegistry.sol) - Data Point Registry (implements `IDataPointRegistry`) | ||
- [DataPoints](./utils/DataPoints.sol) - Library implementing DataPoint type and its encode/decode functions | ||
- [OmnichainAddresses](./utils/OmnichainAddresses.sol) - Library implementing OmnichainAddress type which combines address and chain id | ||
- [ChainidTools](./utils/ChainidTools.sol) - Library implementing utility functions to work with chain ids | ||
|
||
### Usage examples | ||
- [IFractionTransferEventEmitter](./interfaces/IFractionTransferEventEmitter.sol) - Interface used for DataManagers communication to emit ERC20 Transfer events | ||
- [IFungibleFractionsOperations](./interfaces/IFungibleFractionsOperations.sol) - Interface defines DataObject operations, which can be called by DataManager | ||
- [MinimalisticFungibleFractionsDO](./dataobjects/MinimalisticFungibleFractionsDO.sol) - DataObject implements data storage and related logic for token with Fungible Fractions (like ERC1155) | ||
- [MinimalisticERC1155WithERC20FractionsDataManager](./datamanagers/MinimalisticERC1155WithERC20FractionsDataManager.sol) - DataManager implements token with fungible fractions with ERC1155 interface, linked to a DataManager which implements ERC20 interface for same token | ||
- [MinimalisticERC20FractionDataManager](./datamanagers/MinimalisticERC20FractionDataManager.sol) - implements token with ERC20 interface, linked to a DataManager which implements ERC1155 interface for same token | ||
- [MinimalisticERC20FractionDataManagerFactory](./datamanagers/MinimalisticERC20FractionDataManagerFactory.sol) - factory of DataManagers implementing ERC20 interface for token with fungible fractions |