Technical Reference
EAVRegistry
Source Revision 0x12ed8472…faf6fd
| Property | Value |
|---|---|
| Source Revision | 0x12ed8472a299e6dfdca4ecf528c1f7a30a86f03473529186d3fb8bce65faf6fd |
| Source URL | https://raw.githubusercontent.com/busytoby/atropa_pulsechain/600ba80043b98fa95b86a702396d434e17d0e440/sandbox/eavregistry.sol |
| Source commit | 600ba80043b98fa95b86a702396d434e17d0e440 |
| Source Status | Archived source snapshot; this does not establish deployed bytecode equivalence. |
| Compiler | solc 0.8.21; optimizer enabled with 200 runs |
| Compiler Configuration | {"evmVersion":"compiler-default","optimizer":{"enabled":true,"runs":200},"version":"0.8.25+commit.b61c2a91.Linux.g++"} |
| Compilation Closure Hash | 0x3874b7a23dffdec0ba15d585d2dbb19fa2a03155aae03b3640ab4a7b88013062 |
| Compilation Closure Files | 2 |
| Hash Generated | 2026-08-22T00:06:01Z |
Overview
Section titled “Overview”- Kind: Abstract Contract
- License: Sharia
- Solidity: ^0.8.25
- Source:
sandbox/eavregistry.sol
Inheritance Chain (C3 Linearized)
Section titled “Inheritance Chain (C3 Linearized)”No base contracts; this contract has no parents.
Immediate Parents
Section titled “Immediate Parents”None (root of its hierarchy).
State Variables
Section titled “State Variables”| Variable | Type | Visibility | Mutability | Initial Value | NatSpec |
|---|---|---|---|---|---|
_registry |
EAVRegistry.Registry |
internal | mutable | `` |
Structs
Section titled “Structs”Registry
Section titled “Registry”struct Registry { uint256[] keys; mapping(uint256 => EAV.Data) values; mapping(uint256 => uint256) indexOf; mapping(uint256 => bool) inserted;}Functions
Section titled “Functions”External & Public
Section titled “External & Public”GetKeyByIndex
Section titled “GetKeyByIndex”GetKeyByIndexfunction
function GetKeyByIndex(uint256 index) public view returns (uint256)- Visibility: public
- State Mutability: view
- Parameters: uint256 index
- Returns: uint256
Countfunction
function Count() public view returns (uint256)- Visibility: public
- State Mutability: view
- Returns: uint256
Contains
Section titled “Contains”Containsfunction
function Contains(uint256 key) public view returns (bool)- Visibility: public
- State Mutability: view
- Parameters: uint256 key
- Returns: bool
Addfunction
function Add(address host, string memory key, EAV.Data memory value) public- Visibility: public
- Parameters: address host, string memory key, EAV.Data memory value
Addfunction
function Add(uint256 key, EAV.Data memory value) public- Visibility: public
- Parameters: uint256 key, EAV.Data memory value
Remove
Section titled “Remove”Removefunction
function Remove(address host, string memory key) public- Visibility: public
- Parameters: address host, string memory key
Remove
Section titled “Remove”Removefunction
function Remove(uint256 key) public- Visibility: public
- Parameters: uint256 key
Compiled ABI
Section titled “Compiled ABI”The compiled ABI below is produced by solc 0.8.21 from the exact source bytes recorded in Source details. Consumers can paste it directly into ethers/web3/viem.
Click to expand JSON ABI
[ { "inputs": [ { "internalType": "address", "name": "host", "type": "address" }, { "internalType": "string", "name": "key", "type": "string" }, { "components": [ { "internalType": "string", "name": "Entity", "type": "string" }, { "internalType": "enum EAV.EAVDataType", "name": "Attribute", "type": "uint8" }, { "internalType": "bool", "name": "valueBool", "type": "bool" }, { "internalType": "uint256", "name": "valueInt", "type": "uint256" }, { "internalType": "address", "name": "valueAddress", "type": "address" }, { "internalType": "bytes", "name": "valueBytes", "type": "bytes" } ], "internalType": "struct EAV.Data", "name": "value", "type": "tuple" } ], "name": "Add", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "key", "type": "uint256" }, { "components": [ { "internalType": "string", "name": "Entity", "type": "string" }, { "internalType": "enum EAV.EAVDataType", "name": "Attribute", "type": "uint8" }, { "internalType": "bool", "name": "valueBool", "type": "bool" }, { "internalType": "uint256", "name": "valueInt", "type": "uint256" }, { "internalType": "address", "name": "valueAddress", "type": "address" }, { "internalType": "bytes", "name": "valueBytes", "type": "bytes" } ], "internalType": "struct EAV.Data", "name": "value", "type": "tuple" } ], "name": "Add", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "key", "type": "uint256" } ], "name": "Contains", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "Count", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "index", "type": "uint256" } ], "name": "GetKeyByIndex", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "key", "type": "uint256" } ], "name": "Remove", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "host", "type": "address" }, { "internalType": "string", "name": "key", "type": "string" } ], "name": "Remove", "outputs": [], "stateMutability": "nonpayable", "type": "function" }]