@etherisc/gif-next 0.0.2-f9905e1 → 0.0.2-fe77319

Sign up to get free protection for your applications and to get access to all the features.
Files changed (77) hide show
  1. package/artifacts/contracts/components/Component.sol/Component.dbg.json +1 -1
  2. package/artifacts/contracts/components/Component.sol/InstanceLinked.dbg.json +1 -1
  3. package/artifacts/contracts/components/IPool.sol/IPoolComponent.dbg.json +1 -1
  4. package/artifacts/contracts/components/IProduct.sol/IProductComponent.dbg.json +1 -1
  5. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +1 -1
  6. package/artifacts/contracts/components/Product.sol/Product.dbg.json +1 -1
  7. package/artifacts/contracts/experiment/A.sol/A.dbg.json +4 -0
  8. package/artifacts/contracts/experiment/{inheritance/A.sol → A.sol}/A.json +5 -5
  9. package/artifacts/contracts/experiment/A.sol/AShared.dbg.json +4 -0
  10. package/artifacts/contracts/experiment/{inheritance/A.sol → A.sol}/AShared.json +3 -3
  11. package/artifacts/contracts/experiment/B.sol/B.dbg.json +4 -0
  12. package/artifacts/contracts/experiment/{inheritance/B.sol → B.sol}/B.json +2 -2
  13. package/artifacts/contracts/experiment/C.sol/C.dbg.json +4 -0
  14. package/artifacts/contracts/experiment/{inheritance/C.sol → C.sol}/C.json +2 -2
  15. package/artifacts/contracts/experiment/IA.sol/IA.dbg.json +4 -0
  16. package/artifacts/contracts/experiment/{inheritance/IA.sol → IA.sol}/IA.json +1 -1
  17. package/artifacts/contracts/experiment/IA.sol/ISharedA.dbg.json +4 -0
  18. package/artifacts/contracts/experiment/{inheritance/IA.sol → IA.sol}/ISharedA.json +1 -1
  19. package/artifacts/contracts/experiment/IB.sol/IB.dbg.json +4 -0
  20. package/artifacts/contracts/experiment/{inheritance/IB.sol → IB.sol}/IB.json +1 -1
  21. package/artifacts/contracts/experiment/IC.sol/IC.dbg.json +4 -0
  22. package/artifacts/contracts/experiment/{inheritance/IC.sol → IC.sol}/IC.json +1 -1
  23. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  24. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  25. package/artifacts/contracts/instance/access/Access.sol/AccessModule.dbg.json +1 -1
  26. package/artifacts/contracts/instance/access/IAccess.sol/IAccess.dbg.json +1 -1
  27. package/artifacts/contracts/instance/access/IAccess.sol/IAccessCheckRole.dbg.json +1 -1
  28. package/artifacts/contracts/instance/access/IAccess.sol/IAccessComponentTypeRoles.dbg.json +1 -1
  29. package/artifacts/contracts/instance/access/IAccess.sol/IAccessModule.dbg.json +1 -1
  30. package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentModule.dbg.json +1 -1
  31. package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentOwnerService.dbg.json +1 -1
  32. package/artifacts/contracts/instance/component/IComponent.sol/IComponent.dbg.json +1 -1
  33. package/artifacts/contracts/instance/component/IComponent.sol/IComponentContract.dbg.json +1 -1
  34. package/artifacts/contracts/instance/component/IComponent.sol/IComponentModule.dbg.json +1 -1
  35. package/artifacts/contracts/instance/component/IComponent.sol/IComponentOwnerService.dbg.json +1 -1
  36. package/artifacts/contracts/instance/component/IComponent.sol/IInstanceLinked.dbg.json +1 -1
  37. package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicy.dbg.json +1 -1
  38. package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicyModule.dbg.json +1 -1
  39. package/artifacts/contracts/instance/policy/PolicyModule.sol/PolicyModule.dbg.json +1 -1
  40. package/artifacts/contracts/instance/pool/IPoolModule.sol/IPool.dbg.json +1 -1
  41. package/artifacts/contracts/instance/pool/IPoolModule.sol/IPoolModule.dbg.json +1 -1
  42. package/artifacts/contracts/instance/pool/PoolModule.sol/PoolModule.dbg.json +1 -1
  43. package/artifacts/contracts/instance/product/IProductService.sol/IProductModule.dbg.json +1 -1
  44. package/artifacts/contracts/instance/product/IProductService.sol/IProductService.dbg.json +1 -1
  45. package/artifacts/contracts/instance/product/ProductService.sol/ProductModule.dbg.json +1 -1
  46. package/artifacts/contracts/instance/product/ProductService.sol/ProductService.dbg.json +1 -1
  47. package/artifacts/contracts/registry/IRegistry.sol/IOwnable.dbg.json +1 -1
  48. package/artifacts/contracts/registry/IRegistry.sol/IRegisterable.dbg.json +1 -1
  49. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  50. package/artifacts/contracts/registry/IRegistry.sol/IRegistryLinked.dbg.json +1 -1
  51. package/artifacts/contracts/registry/Registry.sol/Registerable.dbg.json +1 -1
  52. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  53. package/artifacts/contracts/registry/Registry.sol/RegistryLinked.dbg.json +1 -1
  54. package/contracts/experiment/{inheritance/B.sol → B.sol} +1 -1
  55. package/contracts/experiment/{inheritance/C.sol → C.sol} +1 -1
  56. package/package.json +1 -1
  57. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
  58. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
  59. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
  60. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
  61. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
  62. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
  63. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
  64. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
  65. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
  66. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
  67. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
  68. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
  69. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
  70. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +0 -10
  71. package/contracts/experiment/types/TypeA.sol +0 -42
  72. package/contracts/experiment/types/TypeB.sol +0 -24
  73. package/contracts/types/ChainId.sol +0 -24
  74. /package/contracts/experiment/{inheritance/A.sol → A.sol} +0 -0
  75. /package/contracts/experiment/{inheritance/IA.sol → IA.sol} +0 -0
  76. /package/contracts/experiment/{inheritance/IB.sol → IB.sol} +0 -0
  77. /package/contracts/experiment/{inheritance/IC.sol → IC.sol} +0 -0
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "_format": "hh-sol-artifact-1",
3
3
  "contractName": "A",
4
- "sourceName": "contracts/experiment/inheritance/A.sol",
4
+ "sourceName": "contracts/experiment/A.sol",
5
5
  "abi": [
6
6
  {
7
7
  "inputs": [],
@@ -98,7 +98,7 @@
98
98
  "inputs": [
99
99
  {
100
100
  "internalType": "uint256",
101
- "name": "newB",
101
+ "name": "newA",
102
102
  "type": "uint256"
103
103
  }
104
104
  ],
@@ -111,7 +111,7 @@
111
111
  "inputs": [
112
112
  {
113
113
  "internalType": "uint256",
114
- "name": "newC",
114
+ "name": "newA",
115
115
  "type": "uint256"
116
116
  }
117
117
  ],
@@ -121,8 +121,8 @@
121
121
  "type": "function"
122
122
  }
123
123
  ],
124
- "bytecode": "0x608060405234801561001057600080fd5b50602a600081905550600180819055506002808190555061044c806100366000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063d46300fd11610066578063d46300fd1461010e578063d4febc861461012c578063e2c11f201461014a578063ee919d5014610168578063eeb4914e1461018457610093565b806309cdcf9b14610098578063a1c51915146100b4578063a2375d1e146100d2578063b9c23ae9146100f0575b600080fd5b6100b260048036038101906100ad919061037d565b6101a0565b005b6100bc6101aa565b6040516100c991906103b9565b60405180910390f35b6100da6101b4565b6040516100e791906103b9565b60405180910390f35b6100f86101be565b60405161010591906103b9565b60405180910390f35b610116610239565b60405161012391906103b9565b60405180910390f35b610134610242565b60405161014191906103b9565b60405180910390f35b6101526102b8565b60405161015f91906103b9565b60405180910390f35b610182600480360381019061017d919061037d565b61032e565b005b61019e6004803603810190610199919061037d565b610338565b005b8060018190555050565b6000600154905090565b6000600254905090565b6000803090508073ffffffffffffffffffffffffffffffffffffffff1663a1c519156040518163ffffffff1660e01b8152600401602060405180830381865afa15801561020f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061023391906103e9565b91505090565b60008054905090565b60003073ffffffffffffffffffffffffffffffffffffffff1663d46300fd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561028f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b391906103e9565b905090565b60003073ffffffffffffffffffffffffffffffffffffffff1663d46300fd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610305573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032991906103e9565b905090565b8060008190555050565b8060028190555050565b600080fd5b6000819050919050565b61035a81610347565b811461036557600080fd5b50565b60008135905061037781610351565b92915050565b60006020828403121561039357610392610342565b5b60006103a184828501610368565b91505092915050565b6103b381610347565b82525050565b60006020820190506103ce60008301846103aa565b92915050565b6000815190506103e381610351565b92915050565b6000602082840312156103ff576103fe610342565b5b600061040d848285016103d4565b9150509291505056fea26469706673582212209ecbb5691a41763284d320d845a1bd4160c0196ec6162fb41ecc8c8d518d42f464736f6c63430008140033",
125
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c8063d46300fd11610066578063d46300fd1461010e578063d4febc861461012c578063e2c11f201461014a578063ee919d5014610168578063eeb4914e1461018457610093565b806309cdcf9b14610098578063a1c51915146100b4578063a2375d1e146100d2578063b9c23ae9146100f0575b600080fd5b6100b260048036038101906100ad919061037d565b6101a0565b005b6100bc6101aa565b6040516100c991906103b9565b60405180910390f35b6100da6101b4565b6040516100e791906103b9565b60405180910390f35b6100f86101be565b60405161010591906103b9565b60405180910390f35b610116610239565b60405161012391906103b9565b60405180910390f35b610134610242565b60405161014191906103b9565b60405180910390f35b6101526102b8565b60405161015f91906103b9565b60405180910390f35b610182600480360381019061017d919061037d565b61032e565b005b61019e6004803603810190610199919061037d565b610338565b005b8060018190555050565b6000600154905090565b6000600254905090565b6000803090508073ffffffffffffffffffffffffffffffffffffffff1663a1c519156040518163ffffffff1660e01b8152600401602060405180830381865afa15801561020f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061023391906103e9565b91505090565b60008054905090565b60003073ffffffffffffffffffffffffffffffffffffffff1663d46300fd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561028f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b391906103e9565b905090565b60003073ffffffffffffffffffffffffffffffffffffffff1663d46300fd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610305573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032991906103e9565b905090565b8060008190555050565b8060028190555050565b600080fd5b6000819050919050565b61035a81610347565b811461036557600080fd5b50565b60008135905061037781610351565b92915050565b60006020828403121561039357610392610342565b5b60006103a184828501610368565b91505092915050565b6103b381610347565b82525050565b60006020820190506103ce60008301846103aa565b92915050565b6000815190506103e381610351565b92915050565b6000602082840312156103ff576103fe610342565b5b600061040d848285016103d4565b9150509291505056fea26469706673582212209ecbb5691a41763284d320d845a1bd4160c0196ec6162fb41ecc8c8d518d42f464736f6c63430008140033",
124
+ "bytecode": "0x608060405234801561001057600080fd5b50602a600081905550600180819055506002808190555061044c806100366000396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c8063d46300fd11610066578063d46300fd1461010e578063d4febc861461012c578063e2c11f201461014a578063ee919d5014610168578063eeb4914e1461018457610093565b806309cdcf9b14610098578063a1c51915146100b4578063a2375d1e146100d2578063b9c23ae9146100f0575b600080fd5b6100b260048036038101906100ad919061037d565b6101a0565b005b6100bc6101aa565b6040516100c991906103b9565b60405180910390f35b6100da6101b4565b6040516100e791906103b9565b60405180910390f35b6100f86101be565b60405161010591906103b9565b60405180910390f35b610116610239565b60405161012391906103b9565b60405180910390f35b610134610242565b60405161014191906103b9565b60405180910390f35b6101526102b8565b60405161015f91906103b9565b60405180910390f35b610182600480360381019061017d919061037d565b61032e565b005b61019e6004803603810190610199919061037d565b610338565b005b8060018190555050565b6000600154905090565b6000600254905090565b6000803090508073ffffffffffffffffffffffffffffffffffffffff1663a1c519156040518163ffffffff1660e01b8152600401602060405180830381865afa15801561020f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061023391906103e9565b91505090565b60008054905090565b60003073ffffffffffffffffffffffffffffffffffffffff1663d46300fd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561028f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b391906103e9565b905090565b60003073ffffffffffffffffffffffffffffffffffffffff1663d46300fd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610305573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032991906103e9565b905090565b8060008190555050565b8060028190555050565b600080fd5b6000819050919050565b61035a81610347565b811461036557600080fd5b50565b60008135905061037781610351565b92915050565b60006020828403121561039357610392610342565b5b60006103a184828501610368565b91505092915050565b6103b381610347565b82525050565b60006020820190506103ce60008301846103aa565b92915050565b6000815190506103e381610351565b92915050565b6000602082840312156103ff576103fe610342565b5b600061040d848285016103d4565b9150509291505056fea26469706673582212202d931bc33f86e9a5286a0a8ad07e1a8664ee116f92363c21d53c6e11073a5a2a64736f6c63430008140033",
125
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100935760003560e01c8063d46300fd11610066578063d46300fd1461010e578063d4febc861461012c578063e2c11f201461014a578063ee919d5014610168578063eeb4914e1461018457610093565b806309cdcf9b14610098578063a1c51915146100b4578063a2375d1e146100d2578063b9c23ae9146100f0575b600080fd5b6100b260048036038101906100ad919061037d565b6101a0565b005b6100bc6101aa565b6040516100c991906103b9565b60405180910390f35b6100da6101b4565b6040516100e791906103b9565b60405180910390f35b6100f86101be565b60405161010591906103b9565b60405180910390f35b610116610239565b60405161012391906103b9565b60405180910390f35b610134610242565b60405161014191906103b9565b60405180910390f35b6101526102b8565b60405161015f91906103b9565b60405180910390f35b610182600480360381019061017d919061037d565b61032e565b005b61019e6004803603810190610199919061037d565b610338565b005b8060018190555050565b6000600154905090565b6000600254905090565b6000803090508073ffffffffffffffffffffffffffffffffffffffff1663a1c519156040518163ffffffff1660e01b8152600401602060405180830381865afa15801561020f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061023391906103e9565b91505090565b60008054905090565b60003073ffffffffffffffffffffffffffffffffffffffff1663d46300fd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561028f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b391906103e9565b905090565b60003073ffffffffffffffffffffffffffffffffffffffff1663d46300fd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610305573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032991906103e9565b905090565b8060008190555050565b8060028190555050565b600080fd5b6000819050919050565b61035a81610347565b811461036557600080fd5b50565b60008135905061037781610351565b92915050565b60006020828403121561039357610392610342565b5b60006103a184828501610368565b91505092915050565b6103b381610347565b82525050565b60006020820190506103ce60008301846103aa565b92915050565b6000815190506103e381610351565b92915050565b6000602082840312156103ff576103fe610342565b5b600061040d848285016103d4565b9150509291505056fea26469706673582212202d931bc33f86e9a5286a0a8ad07e1a8664ee116f92363c21d53c6e11073a5a2a64736f6c63430008140033",
126
126
  "linkReferences": {},
127
127
  "deployedLinkReferences": {}
128
128
  }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "_format": "hh-sol-artifact-1",
3
3
  "contractName": "AShared",
4
- "sourceName": "contracts/experiment/inheritance/A.sol",
4
+ "sourceName": "contracts/experiment/A.sol",
5
5
  "abi": [
6
6
  {
7
7
  "inputs": [],
@@ -35,8 +35,8 @@
35
35
  "type": "function"
36
36
  }
37
37
  ],
38
- "bytecode": "0x608060405234801561001057600080fd5b50602a600081905550610150806100286000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063d46300fd1461003b578063ee919d5014610059575b600080fd5b610043610075565b60405161005091906100a1565b60405180910390f35b610073600480360381019061006e91906100ed565b61007e565b005b60008054905090565b8060008190555050565b6000819050919050565b61009b81610088565b82525050565b60006020820190506100b66000830184610092565b92915050565b600080fd5b6100ca81610088565b81146100d557600080fd5b50565b6000813590506100e7816100c1565b92915050565b600060208284031215610103576101026100bc565b5b6000610111848285016100d8565b9150509291505056fea2646970667358221220b19da4bc39436f1edf031edacd0d6adab41e232298c993923afda29910f1f99664736f6c63430008140033",
39
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063d46300fd1461003b578063ee919d5014610059575b600080fd5b610043610075565b60405161005091906100a1565b60405180910390f35b610073600480360381019061006e91906100ed565b61007e565b005b60008054905090565b8060008190555050565b6000819050919050565b61009b81610088565b82525050565b60006020820190506100b66000830184610092565b92915050565b600080fd5b6100ca81610088565b81146100d557600080fd5b50565b6000813590506100e7816100c1565b92915050565b600060208284031215610103576101026100bc565b5b6000610111848285016100d8565b9150509291505056fea2646970667358221220b19da4bc39436f1edf031edacd0d6adab41e232298c993923afda29910f1f99664736f6c63430008140033",
38
+ "bytecode": "0x608060405234801561001057600080fd5b50602a600081905550610150806100286000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063d46300fd1461003b578063ee919d5014610059575b600080fd5b610043610075565b60405161005091906100a1565b60405180910390f35b610073600480360381019061006e91906100ed565b61007e565b005b60008054905090565b8060008190555050565b6000819050919050565b61009b81610088565b82525050565b60006020820190506100b66000830184610092565b92915050565b600080fd5b6100ca81610088565b81146100d557600080fd5b50565b6000813590506100e7816100c1565b92915050565b600060208284031215610103576101026100bc565b5b6000610111848285016100d8565b9150509291505056fea2646970667358221220826c344856745ae98ad9c154b4a8bee55e55fc3323c8fba296136a694c2448a664736f6c63430008140033",
39
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063d46300fd1461003b578063ee919d5014610059575b600080fd5b610043610075565b60405161005091906100a1565b60405180910390f35b610073600480360381019061006e91906100ed565b61007e565b005b60008054905090565b8060008190555050565b6000819050919050565b61009b81610088565b82525050565b60006020820190506100b66000830184610092565b92915050565b600080fd5b6100ca81610088565b81146100d557600080fd5b50565b6000813590506100e7816100c1565b92915050565b600060208284031215610103576101026100bc565b5b6000610111848285016100d8565b9150509291505056fea2646970667358221220826c344856745ae98ad9c154b4a8bee55e55fc3323c8fba296136a694c2448a664736f6c63430008140033",
40
40
  "linkReferences": {},
41
41
  "deployedLinkReferences": {}
42
42
  }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "_format": "hh-sol-artifact-1",
3
3
  "contractName": "B",
4
- "sourceName": "contracts/experiment/inheritance/B.sol",
4
+ "sourceName": "contracts/experiment/B.sol",
5
5
  "abi": [
6
6
  {
7
7
  "inputs": [],
@@ -59,7 +59,7 @@
59
59
  "inputs": [
60
60
  {
61
61
  "internalType": "uint256",
62
- "name": "newB",
62
+ "name": "newA",
63
63
  "type": "uint256"
64
64
  }
65
65
  ],
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "_format": "hh-sol-artifact-1",
3
3
  "contractName": "C",
4
- "sourceName": "contracts/experiment/inheritance/C.sol",
4
+ "sourceName": "contracts/experiment/C.sol",
5
5
  "abi": [
6
6
  {
7
7
  "inputs": [],
@@ -72,7 +72,7 @@
72
72
  "inputs": [
73
73
  {
74
74
  "internalType": "uint256",
75
- "name": "newC",
75
+ "name": "newA",
76
76
  "type": "uint256"
77
77
  }
78
78
  ],
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "_format": "hh-sol-artifact-1",
3
3
  "contractName": "IA",
4
- "sourceName": "contracts/experiment/inheritance/IA.sol",
4
+ "sourceName": "contracts/experiment/IA.sol",
5
5
  "abi": [
6
6
  {
7
7
  "inputs": [],
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "_format": "hh-sol-artifact-1",
3
3
  "contractName": "ISharedA",
4
- "sourceName": "contracts/experiment/inheritance/IA.sol",
4
+ "sourceName": "contracts/experiment/IA.sol",
5
5
  "abi": [
6
6
  {
7
7
  "inputs": [],
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "_format": "hh-sol-artifact-1",
3
3
  "contractName": "IB",
4
- "sourceName": "contracts/experiment/inheritance/IB.sol",
4
+ "sourceName": "contracts/experiment/IB.sol",
5
5
  "abi": [
6
6
  {
7
7
  "inputs": [],
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "_format": "hh-sol-artifact-1",
3
3
  "contractName": "IC",
4
- "sourceName": "contracts/experiment/inheritance/IC.sol",
4
+ "sourceName": "contracts/experiment/IC.sol",
5
5
  "abi": [
6
6
  {
7
7
  "inputs": [],
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
3
+ "buildInfo": "../../../build-info/28a5f33217876dc65b5c269e323df8a0.json"
4
4
  }
@@ -15,7 +15,7 @@ abstract contract B is ISharedA, IB {
15
15
 
16
16
  // access own state
17
17
  function getB() external view override returns(uint256) { return _x; }
18
- function setB(uint256 newB) external override { _x = newB; }
18
+ function setB(uint256 newA) external override { _x = newA; }
19
19
 
20
20
  // access state from parent contract A
21
21
  function getAfromB() external view override returns(uint256) { return this.getA(); }
@@ -15,7 +15,7 @@ abstract contract C is ISharedA, IC {
15
15
 
16
16
  // access own state
17
17
  function getC() external view override returns(uint256) { return _x; }
18
- function setC(uint256 newC) external override { _x = newC; }
18
+ function setC(uint256 newA) external override { _x = newA; }
19
19
 
20
20
  // access state from parent contract A
21
21
  function getAfromC() external view override returns(uint256) { return this.getA(); }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etherisc/gif-next",
3
- "version": "0.0.2-f9905e1",
3
+ "version": "0.0.2-fe77319",
4
4
  "description": "This is the repository for the next version of the Generic Insurance Framework (GIF) smart contracts. ",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
4
- }
@@ -1,10 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "TypeALib",
4
- "sourceName": "contracts/experiment/types/TypeA.sol",
5
- "abi": [],
6
- "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220631fcbb9cdf05c22d0340bcc90e8220e3513b6efe9d2460153613f0ee92bc95b64736f6c63430008140033",
7
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220631fcbb9cdf05c22d0340bcc90e8220e3513b6efe9d2460153613f0ee92bc95b64736f6c63430008140033",
8
- "linkReferences": {},
9
- "deployedLinkReferences": {}
10
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
4
- }
@@ -1,10 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "TypeBLib",
4
- "sourceName": "contracts/experiment/types/TypeB.sol",
5
- "abi": [],
6
- "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ba12bbf5b38107a97ab834773cb7cc766833169e48de20a43a90102809418e7964736f6c63430008140033",
7
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ba12bbf5b38107a97ab834773cb7cc766833169e48de20a43a90102809418e7964736f6c63430008140033",
8
- "linkReferences": {},
9
- "deployedLinkReferences": {}
10
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/f211b802294e8958d4ab3ed8cbf2371f.json"
4
- }
@@ -1,10 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "ChainIdLib",
4
- "sourceName": "contracts/types/ChainId.sol",
5
- "abi": [],
6
- "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220834afee6f90bd20143d82475fe6713238237b9c6714c9ef8e26d210a9190099a64736f6c63430008140033",
7
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220834afee6f90bd20143d82475fe6713238237b9c6714c9ef8e26d210a9190099a64736f6c63430008140033",
8
- "linkReferences": {},
9
- "deployedLinkReferences": {}
10
- }
@@ -1,42 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- /*
5
- # chisel session for user defined types
6
-
7
- import {TypeA, toTypeA} from "./contracts/experiment/types/TypeA.sol";
8
- TypeA a = toTypeA(1);
9
- TypeA b = toTypeA(2);
10
- uint(a.toInt())
11
- uint(b.toInt())
12
- a == b
13
- a != b
14
-
15
- import {TypeB, toTypeB} from "./contracts/experiment/types/TypeB.sol";
16
- TypeB x = toTypeB(33);
17
- uint(x.toInt())
18
- a == x; // -> error
19
- a.toInt() == x.toInt() // -> no error
20
- */
21
-
22
- // bytes5 allows for chain ids up to 13 digits
23
- type TypeA is uint248;
24
-
25
- // type bindings
26
- using {
27
- eqTypeA as ==,
28
- neTypeA as !=,
29
- TypeALib.toInt
30
- } for TypeA global;
31
-
32
- // general pure free functions
33
- function toTypeA(uint256 typeA) pure returns(TypeA) { return TypeA.wrap(uint248(typeA)); }
34
-
35
- // pure free functions for operators
36
- function eqTypeA(TypeA a, TypeA b) pure returns(bool isSame) { return TypeA.unwrap(a) == TypeA.unwrap(b); }
37
- function neTypeA(TypeA a, TypeA b) pure returns(bool isDifferent) { return TypeA.unwrap(a) != TypeA.unwrap(b); }
38
-
39
- // library functions that operate on user defined type
40
- library TypeALib {
41
- function toInt(TypeA typeA) internal pure returns(uint256) { return uint256(TypeA.unwrap(typeA)); }
42
- }
@@ -1,24 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- // bytes5 allows for chain ids up to 13 digits
5
- type TypeB is uint248;
6
-
7
- // type bindings
8
- using {
9
- eqTypeB as ==,
10
- addTypeB as +,
11
- TypeBLib.toInt
12
- } for TypeB global;
13
-
14
- // general pure free functions
15
- function toTypeB(uint256 x) pure returns(TypeB) { return TypeB.wrap(uint248(x)); }
16
-
17
- // pure free functions for operators
18
- function eqTypeB(TypeB a, TypeB b) pure returns(bool isSame) { return TypeB.unwrap(a) == TypeB.unwrap(b); }
19
- function addTypeB(TypeB a, TypeB b) pure returns(TypeB sum) { return TypeB.wrap(TypeB.unwrap(a) + TypeB.unwrap(b)); }
20
-
21
- // library functions that operate on user defined type
22
- library TypeBLib {
23
- function toInt(TypeB b) internal pure returns(uint256) { return uint256(TypeB.unwrap(b)); }
24
- }
@@ -1,24 +0,0 @@
1
- // SPDX-License-Identifier: Apache-2.0
2
- pragma solidity ^0.8.19;
3
-
4
- // bytes5 allows for chain ids up to 13 digits
5
- type ChainId is bytes5;
6
-
7
- // type bindings
8
- using {
9
- eqChainId as ==,
10
- neChainId as !=,
11
- ChainIdLib.toInt
12
- } for ChainId global;
13
-
14
- // general pure free functions
15
- function toChainId(uint256 chainId) pure returns(ChainId) { return ChainId.wrap(bytes5(uint40(chainId))); }
16
-
17
- // pure free functions for operators
18
- function eqChainId(ChainId a, ChainId b) pure returns(bool isSame) { return ChainId.unwrap(a) == ChainId.unwrap(b); }
19
- function neChainId(ChainId a, ChainId b) pure returns(bool isDifferent) { return ChainId.unwrap(a) != ChainId.unwrap(b); }
20
-
21
- // library functions that operate on user defined type
22
- library ChainIdLib {
23
- function toInt(ChainId chainId) internal pure returns(uint256) { return uint256(uint40(ChainId.unwrap(chainId))); }
24
- }