@settlemint/solidity-diamond-bond
Version:
Smart contract set to build an enterprise bond usecase in SettleMint
154 lines • 4.41 kB
JSON
{
"compiler": {
"version": "0.8.27+commit.40a35a09"
},
"language": "Solidity",
"output": {
"abi": [
{
"inputs": [
{
"internalType": "struct IDiamond.FacetCut[]",
"name": "_diamondCut",
"type": "tuple[]",
"components": [
{
"internalType": "address",
"name": "facetAddress",
"type": "address"
},
{
"internalType": "enum IDiamond.FacetCutAction",
"name": "action",
"type": "uint8"
},
{
"internalType": "bytes4[]",
"name": "functionSelectors",
"type": "bytes4[]"
}
],
"indexed": false
},
{
"internalType": "address",
"name": "_init",
"type": "address",
"indexed": false
},
{
"internalType": "bytes",
"name": "_calldata",
"type": "bytes",
"indexed": false
}
],
"type": "event",
"name": "DiamondCut",
"anonymous": false
},
{
"inputs": [
{
"internalType": "struct IDiamond.FacetCut[]",
"name": "_diamondCut",
"type": "tuple[]",
"components": [
{
"internalType": "address",
"name": "facetAddress",
"type": "address"
},
{
"internalType": "enum IDiamond.FacetCutAction",
"name": "action",
"type": "uint8"
},
{
"internalType": "bytes4[]",
"name": "functionSelectors",
"type": "bytes4[]"
}
]
},
{
"internalType": "address",
"name": "_init",
"type": "address"
},
{
"internalType": "bytes",
"name": "_calldata",
"type": "bytes"
}
],
"stateMutability": "nonpayable",
"type": "function",
"name": "diamondCut"
}
],
"devdoc": {
"kind": "dev",
"methods": {
"diamondCut((address,uint8,bytes4[])[],address,bytes)": {
"params": {
"_calldata": "A function call, including function selector and arguments _calldata is executed with delegatecall on _init",
"_diamondCut": "Contains the facet addresses and function selectors",
"_init": "The address of the contract or facet to execute _calldata"
}
}
},
"version": 1
},
"userdoc": {
"kind": "user",
"methods": {
"diamondCut((address,uint8,bytes4[])[],address,bytes)": {
"notice": "Add/replace/remove any number of functions and optionally execute a function with delegatecall"
}
},
"version": 1
}
},
"settings": {
"remappings": [
"@openzeppelin/=node_modules/@openzeppelin/",
"@prb/math/=node_modules/@prb/math/",
"eth-gas-reporter/=node_modules/eth-gas-reporter/",
"forge-std/=lib/forge-std/src/",
"hardhat/=node_modules/hardhat/"
],
"optimizer": {
"enabled": true,
"runs": 10000
},
"metadata": {
"bytecodeHash": "ipfs"
},
"compilationTarget": {
"contracts/interfaces/IDiamondCut.sol": "IDiamondCut"
},
"evmVersion": "cancun",
"libraries": {},
"viaIR": true
},
"sources": {
"contracts/interfaces/IDiamond.sol": {
"keccak256": "0xf6ea8172fc4ca7f19387dcab713a7c2d3c7453540ec8ea9bbf8fa29fce272d4b",
"urls": [
"bzz-raw://57c74c3e17114c0aa5982815aab8cff5264c00317af1abe3620ee8acaca49ff9",
"dweb:/ipfs/Qma45nAPXZU1MCDfuEBe1Fub6Qd7oumdyEqonGeqsPHXMQ"
],
"license": "FSL-1.1-MIT"
},
"contracts/interfaces/IDiamondCut.sol": {
"keccak256": "0xe30dd72352453957dbc5d9f6b96369b1630c7abac4c2eb6fd49fc858317f99e3",
"urls": [
"bzz-raw://55940b6e5e3ae666f6851b2deac40b10173a2636fcef15dbe7e44b94542e9cfa",
"dweb:/ipfs/QmeVaPtmffSzEz3x4NgAJVjdjMTosM85JyCcX3eGF1Qpo1"
],
"license": "FSL-1.1-MIT"
}
},
"version": 1
}