@latticexyz/world-modules 2.0.0-main-87235a21 → 2.0.0-main-85218618

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/out/ArrayLib.sol/ArrayLib.json +255 -255
  2. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.json +264 -227
  3. package/out/CallboundDelegations.sol/CallboundDelegations.json +2595 -2595
  4. package/out/DelegationControl.sol/DelegationControl.json +193 -143
  5. package/out/Hooks.sol/Hooks.json +45 -45
  6. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.json +64 -64
  7. package/out/IBalanceTransferSystem.sol/IBalanceTransferSystem.json +53 -53
  8. package/out/IBaseWorld.sol/IBaseWorld.json +136 -91
  9. package/out/IBatchCallSystem.sol/IBatchCallSystem.json +51 -51
  10. package/out/ICoreSystem.sol/ICoreSystem.json +6 -6
  11. package/out/IDelegationControl.sol/IDelegationControl.json +138 -108
  12. package/out/IModule.sol/IModule.json +181 -151
  13. package/out/IModuleInstallationSystem.sol/IModuleInstallationSystem.json +34 -34
  14. package/out/ISystemHook.sol/ISystemHook.json +192 -152
  15. package/out/IUniqueEntitySystem.sol/IUniqueEntitySystem.json +13 -13
  16. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.json +172 -124
  17. package/out/IWorldErrors.sol/IWorldErrors.json +346 -256
  18. package/out/IWorldKernel.sol/IWorldCall.json +312 -272
  19. package/out/IWorldKernel.sol/IWorldKernel.json +339 -276
  20. package/out/IWorldKernel.sol/IWorldModuleInstallation.json +297 -271
  21. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.json +201 -201
  22. package/out/KeysInTable.sol/KeysInTable.json +10668 -10668
  23. package/out/KeysInTableHook.sol/KeysInTableHook.json +862 -862
  24. package/out/KeysInTableModule.sol/KeysInTableModule.json +607 -558
  25. package/out/KeysWithValue.sol/KeysWithValue.json +3828 -3828
  26. package/out/KeysWithValueHook.sol/KeysWithValueHook.json +1014 -1014
  27. package/out/KeysWithValueModule.sol/KeysWithValueModule.json +496 -447
  28. package/out/Module.sol/Module.json +192 -125
  29. package/out/ResourceIds.sol/ResourceIds.json +45 -45
  30. package/out/Schema.sol/SchemaInstance.json +30 -30
  31. package/out/Schema.sol/SchemaLib.json +30 -30
  32. package/out/SchemaType.sol/SchemaType.json +276 -276
  33. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.json +372 -329
  34. package/out/StoreHook.sol/StoreHook.json +358 -358
  35. package/out/StoreHooks.sol/StoreHooks.json +45 -45
  36. package/out/System.sol/System.json +84 -41
  37. package/out/Tables.sol/Tables.json +73 -73
  38. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.json +168 -131
  39. package/out/TimeboundDelegations.sol/TimeboundDelegations.json +1986 -1986
  40. package/out/UniqueEntity.sol/UniqueEntity.json +1402 -1402
  41. package/out/UniqueEntityModule.sol/UniqueEntityModule.json +393 -350
  42. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.json +138 -102
  43. package/out/UsedKeysIndex.sol/UsedKeysIndex.json +2722 -2722
  44. package/out/WorldContext.sol/WorldContextConsumer.json +780 -683
  45. package/out/WorldContext.sol/WorldContextProvider.json +743 -683
  46. package/out/WorldResourceId.sol/WorldResourceIdInstance.json +777 -765
  47. package/out/WorldResourceId.sol/WorldResourceIdLib.json +777 -765
  48. package/out/constants.sol/constants.json +115 -115
  49. package/out/getKeysInTable.sol/getKeysInTable.json +564 -564
  50. package/out/getKeysWithValue.sol/getKeysWithValue.json +264 -264
  51. package/out/getTargetTableId.sol/getTargetTableId.json +163 -163
  52. package/out/getUniqueEntity.sol/getUniqueEntity.json +88 -88
  53. package/out/hasKey.sol/hasKey.json +130 -130
  54. package/out/index.sol/index.json +53 -53
  55. package/out/interfaces/IBaseWorld.sol/IBaseWorld.json +205 -160
  56. package/out/query.sol/query.json +1154 -1154
  57. package/out/revertWithBytes.sol/revertWithBytes.json +15 -15
  58. package/out/src/Bytes.sol/Bytes.json +1332 -1332
  59. package/out/src/FieldLayout.sol/FieldLayoutInstance.json +697 -697
  60. package/out/src/FieldLayout.sol/FieldLayoutLib.json +697 -697
  61. package/out/src/IStore.sol/IStore.json +53 -53
  62. package/out/src/IWorldKernel.sol/IWorldCall.json +313 -273
  63. package/out/src/IWorldKernel.sol/IWorldKernel.json +340 -277
  64. package/out/src/IWorldKernel.sol/IWorldModuleInstallation.json +298 -272
  65. package/out/src/Memory.sol/Memory.json +89 -89
  66. package/out/src/PackedCounter.sol/PackedCounterInstance.json +923 -923
  67. package/out/src/PackedCounter.sol/PackedCounterLib.json +923 -923
  68. package/out/src/ResourceId.sol/ResourceIdInstance.json +112 -112
  69. package/out/src/ResourceId.sol/ResourceIdLib.json +112 -112
  70. package/out/src/Schema.sol/SchemaInstance.json +787 -787
  71. package/out/src/Schema.sol/SchemaLib.json +787 -787
  72. package/out/src/Slice.sol/SliceInstance.json +429 -429
  73. package/out/src/Slice.sol/SliceLib.json +429 -429
  74. package/out/src/StoreCore.sol/StoreCore.json +4455 -4455
  75. package/out/src/StoreCore.sol/StoreCoreInternal.json +4455 -4455
  76. package/out/src/StoreSwitch.sol/StoreSwitch.json +2454 -2454
  77. package/out/src/WorldContext.sol/WorldContextConsumer.json +780 -683
  78. package/out/src/WorldContext.sol/WorldContextProvider.json +743 -683
  79. package/out/src/WorldResourceId.sol/WorldResourceIdInstance.json +777 -765
  80. package/out/src/WorldResourceId.sol/WorldResourceIdLib.json +777 -765
  81. package/out/storeHookTypes.sol/storeHookTypes.json +115 -115
  82. package/out/storeResourceTypes.sol/storeResourceTypes.json +12 -12
  83. package/out/tables/ResourceIds.sol/ResourceIds.json +1746 -1746
  84. package/out/tables/Tables.sol/Tables.json +7288 -7288
  85. package/out/tightcoder/EncodeArray.sol/EncodeArray.json +3246 -3246
  86. package/out/types.sol/types.json +39 -39
  87. package/out/world/src/IERC165.sol/IERC165.json +63 -57
  88. package/out/worldResourceTypes.sol/worldResourceTypes.json +87 -87
  89. package/package.json +8 -8
@@ -68,7 +68,7 @@
68
68
  "call(bytes32,bytes)": "3ae7af08",
69
69
  "callFrom(address,bytes32,bytes)": "894ecc58"
70
70
  },
71
- "rawMetadata": "{\"compiler\":{\"version\":\"0.8.21+commit.d9974bed\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"call\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"callFrom\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"call(bytes32,bytes)\":{\"notice\":\"Call the system at the given system ID. If the system is not public, the caller must have access to the namespace or name (encoded in the system ID).\"},\"callFrom(address,bytes32,bytes)\":{\"notice\":\"Call the system at the given system ID on behalf of the given delegator. If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID).\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":\"IWorldCall\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xb36724e0369ad053579ec04b9b51707dd8dcc4a72b38404cebdf018ce40bf202\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d8745e1632b7ee94f128600837a36ae53fabaf73c506b0c6d1cae70ea2e9b086\",\"dweb:/ipfs/QmXuMqmybWjEPqWEx91DTM7KAUyxAmDcsj7riBfCfA427N\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x4a61aefe72d6035b1e9aca7841aab44ebd26f8706bdbb447f382046fa94753b6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f715743739e4f8f8a98d78397025a92299ecb3b5dde88cc53bc1ab72bf531fa6\",\"dweb:/ipfs/QmVsYAupGWZUemE4t6xjLqztGHadQ8cyo9E4mT5ZDKUmTs\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0xb2c27c7b8f974f1e3c70dd82c92f35f5bbd2887e16afe454e6dbc38300a51feb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6cbdbcc95835f67030eebdebeaf0bfd6faa612381179e7f7be8b9d3c00b20878\",\"dweb:/ipfs/QmNeZU5MmRQqhcLxN6BA2BQvgEst8yg67F4VQoPJEEK6kg\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0x1a113ae394de69ca1db7e9acb1886eaee3967dcfed46fc78497e77bc26dd778f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://091e04dc9e8d5b3a492d1d39a6d06fd5b4bad3c282bd4c06a38d92bec3422513\",\"dweb:/ipfs/QmbfMi1bH9RAs4JMDxKmhVqpAoyoVgN9nd7o11SakJC1zQ\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0x94ea093fda2be088097d66cc615b048a7a21d54a52b82cee9fdb76b31bedbb09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ed989ab47a35f8ca01f5b9f6f42f075687ce41e2f26c647cc27031421f5179e8\",\"dweb:/ipfs/QmT6Xc4A2CGzGa7eL3NimPFXBW4Jy4jFBFFCw1QU6aGo61\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0xf3c2037a2899d81a15d5e13c7101337fcf01fcb321cec418e36da5617d52c99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://565b53005697c2cb4ce744f4b192545e3b059d42ea97075fe022a47d0d38cb7f\",\"dweb:/ipfs/QmbGVQuozeLMwUic7LanodXacPiBfomKS8ERnkVFi9vSYz\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0xc2e28cb4daa77de640228f7b3b5c98423e6c39a8b8f68af5a56b076cad7025de\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7ae7e0798dc66368f6dc56992cd1fe3046dd51bcb6fcc3b04b7fd0d48b9557bc\",\"dweb:/ipfs/QmXKJLLGjVaDBRhbvT47Mxkt2jFEBShvHLAtt3CZYVEbqF\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0x979e418af3d0d3a1866240bed58d2792f0718cc1803a1476ec8c93af5577cae3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c68cfe48ce67fe83f4b000c954891821d1fae31bfdd36de37a12637c8a1864f7\",\"dweb:/ipfs/QmUX9tHSMTeScbiacKX2T16gLV6aPKDU1Q3eDiNxqmVNa1\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0x36c772d51a5da46fcddf88831194d6d331083b8c8246fa79107c4b697c258d77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2d2656374c398a2b075d5f26d2ab2c3ea315c99912e52d8030d50f5f8fdda8ac\",\"dweb:/ipfs/QmSG8uJr2ZbFVnht5cTG6xb6XbB6f3kvnznks4BdeAMYET\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0x88f844f2c43757c819c8f140b30254f07c3484e12cce573879d43b2ee6a23f8b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://55a9095094c2b7b1043020681696380cfc3cffd1f264a70bacb44fccd0fc0a8a\",\"dweb:/ipfs/QmfPdLPr9hfV8X8yfHhEf2HmEWAnA4d1c6EHEjHMdeM7ML\"]}},\"version\":1}",
71
+ "rawMetadata": "{\"compiler\":{\"version\":\"0.8.21+commit.d9974bed\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"call\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"callFrom\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"This interface defines the contract for executing calls on the World's systems.\",\"kind\":\"dev\",\"methods\":{\"call(bytes32,bytes)\":{\"details\":\"If the system is not public, the caller must have access to the namespace or name (encoded in the system ID).\",\"params\":{\"callData\":\"The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.\",\"systemId\":\"The ID of the system to be called.\"},\"returns\":{\"_0\":\"The abi encoded return data from the called system.\"}},\"callFrom(address,bytes32,bytes)\":{\"details\":\"If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID).\",\"params\":{\"callData\":\"The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.\",\"delegator\":\"The address on whose behalf the call is made.\",\"systemId\":\"The ID of the system to be called.\"},\"returns\":{\"_0\":\"The abi encoded return data from the called system.\"}}},\"title\":\"World Call Interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"call(bytes32,bytes)\":{\"notice\":\"Call the system at the given system ID.\"},\"callFrom(address,bytes32,bytes)\":{\"notice\":\"Call the system at the given system ID on behalf of the given delegator.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":\"IWorldCall\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xb36724e0369ad053579ec04b9b51707dd8dcc4a72b38404cebdf018ce40bf202\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d8745e1632b7ee94f128600837a36ae53fabaf73c506b0c6d1cae70ea2e9b086\",\"dweb:/ipfs/QmXuMqmybWjEPqWEx91DTM7KAUyxAmDcsj7riBfCfA427N\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x4a61aefe72d6035b1e9aca7841aab44ebd26f8706bdbb447f382046fa94753b6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f715743739e4f8f8a98d78397025a92299ecb3b5dde88cc53bc1ab72bf531fa6\",\"dweb:/ipfs/QmVsYAupGWZUemE4t6xjLqztGHadQ8cyo9E4mT5ZDKUmTs\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0xb2c27c7b8f974f1e3c70dd82c92f35f5bbd2887e16afe454e6dbc38300a51feb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6cbdbcc95835f67030eebdebeaf0bfd6faa612381179e7f7be8b9d3c00b20878\",\"dweb:/ipfs/QmNeZU5MmRQqhcLxN6BA2BQvgEst8yg67F4VQoPJEEK6kg\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0x7997ebbdee6a2493f28e7032c7a8b906ade40f807d95734e2653c8f1b023ff47\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c8ca41bb2619bf27e5bf886d1322f0e2dffd096c49f7ae6e716541dd1e1ddce5\",\"dweb:/ipfs/Qmb8zATUWWTtiWaSLjbAe6PGnJPes9ANvEyk7pYoWR3P3Y\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0xec02d49b84a882c9cf01e4e5c16f890ed7c52db945fd43a6f97ffe87730ba0d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8f8ee1a3aaac5789b36808bdae2e26e32d1664583a6b21680b5721f04d81bbc3\",\"dweb:/ipfs/Qmd4L3vGQiavSCe9g2k7riyA6cer3ruuxRFehAJCSxNRfw\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0xc3e7975e5785574543229eac51e3441f4185863d7f5346c0ae08a27b4541f8a7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62cc0dc109e6e5475bb07fb95643a31c74337c23521db0557a36dad6117a1e83\",\"dweb:/ipfs/Qmb8jbE1XQTUdreKFr4Jw3xmjctaLuReRZjPxZKQ2uW9p4\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0x9dc133cb55dc23fd6fcbbef8078bb4ea9bf67d698400cf89fc62b905b60cf5eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7c1a57df7052218483eafe72d873660f39a73e2e06c1b14ad8a579d85b94bc6c\",\"dweb:/ipfs/Qme7dnjvADGZyM2L7nZ51nSjsjXXF9isTVCpWaUCd1cEGs\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xb7bfae2890004001221b3902d185c14cfea0e606d16914f6b7f81cf112aa9417\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://acfd0d09166fc1bf16a8a5c80fbae1bd42426b2fcbab3c492bc836ea5c0375fb\",\"dweb:/ipfs/QmTzZWHVBkx8hipFVpgEwAbZpr4c6hfr7yf7R71JojT3NK\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0x36c772d51a5da46fcddf88831194d6d331083b8c8246fa79107c4b697c258d77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2d2656374c398a2b075d5f26d2ab2c3ea315c99912e52d8030d50f5f8fdda8ac\",\"dweb:/ipfs/QmSG8uJr2ZbFVnht5cTG6xb6XbB6f3kvnznks4BdeAMYET\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0xe31ee781596541f60ed71ef327c9d26ffc899e7fb3f4991c67406518bfc00746\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f7b864fea8c77833a322b16c4673f110d5065d0cafcedecd07895699cf4258c2\",\"dweb:/ipfs/QmRkzXVjMLwQFWxjEjgfdXVPAp6SU4zfxPo4NJcmz8HwH9\"]}},\"version\":1}",
72
72
  "metadata": {
73
73
  "compiler": {
74
74
  "version": "0.8.21+commit.d9974bed"
@@ -132,17 +132,39 @@
132
132
  ],
133
133
  "devdoc": {
134
134
  "kind": "dev",
135
- "methods": {},
135
+ "methods": {
136
+ "call(bytes32,bytes)": {
137
+ "details": "If the system is not public, the caller must have access to the namespace or name (encoded in the system ID).",
138
+ "params": {
139
+ "callData": "The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.",
140
+ "systemId": "The ID of the system to be called."
141
+ },
142
+ "returns": {
143
+ "_0": "The abi encoded return data from the called system."
144
+ }
145
+ },
146
+ "callFrom(address,bytes32,bytes)": {
147
+ "details": "If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID).",
148
+ "params": {
149
+ "callData": "The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.",
150
+ "delegator": "The address on whose behalf the call is made.",
151
+ "systemId": "The ID of the system to be called."
152
+ },
153
+ "returns": {
154
+ "_0": "The abi encoded return data from the called system."
155
+ }
156
+ }
157
+ },
136
158
  "version": 1
137
159
  },
138
160
  "userdoc": {
139
161
  "kind": "user",
140
162
  "methods": {
141
163
  "call(bytes32,bytes)": {
142
- "notice": "Call the system at the given system ID. If the system is not public, the caller must have access to the namespace or name (encoded in the system ID)."
164
+ "notice": "Call the system at the given system ID."
143
165
  },
144
166
  "callFrom(address,bytes32,bytes)": {
145
- "notice": "Call the system at the given system ID on behalf of the given delegator. If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID)."
167
+ "notice": "Call the system at the given system ID on behalf of the given delegator."
146
168
  }
147
169
  },
148
170
  "version": 1
@@ -192,42 +214,42 @@
192
214
  "license": "MIT"
193
215
  },
194
216
  "node_modules/@latticexyz/world/src/IERC165.sol": {
195
- "keccak256": "0x1a113ae394de69ca1db7e9acb1886eaee3967dcfed46fc78497e77bc26dd778f",
217
+ "keccak256": "0x7997ebbdee6a2493f28e7032c7a8b906ade40f807d95734e2653c8f1b023ff47",
196
218
  "urls": [
197
- "bzz-raw://091e04dc9e8d5b3a492d1d39a6d06fd5b4bad3c282bd4c06a38d92bec3422513",
198
- "dweb:/ipfs/QmbfMi1bH9RAs4JMDxKmhVqpAoyoVgN9nd7o11SakJC1zQ"
219
+ "bzz-raw://c8ca41bb2619bf27e5bf886d1322f0e2dffd096c49f7ae6e716541dd1e1ddce5",
220
+ "dweb:/ipfs/Qmb8zATUWWTtiWaSLjbAe6PGnJPes9ANvEyk7pYoWR3P3Y"
199
221
  ],
200
222
  "license": "MIT"
201
223
  },
202
224
  "node_modules/@latticexyz/world/src/IModule.sol": {
203
- "keccak256": "0x94ea093fda2be088097d66cc615b048a7a21d54a52b82cee9fdb76b31bedbb09",
225
+ "keccak256": "0xec02d49b84a882c9cf01e4e5c16f890ed7c52db945fd43a6f97ffe87730ba0d3",
204
226
  "urls": [
205
- "bzz-raw://ed989ab47a35f8ca01f5b9f6f42f075687ce41e2f26c647cc27031421f5179e8",
206
- "dweb:/ipfs/QmT6Xc4A2CGzGa7eL3NimPFXBW4Jy4jFBFFCw1QU6aGo61"
227
+ "bzz-raw://8f8ee1a3aaac5789b36808bdae2e26e32d1664583a6b21680b5721f04d81bbc3",
228
+ "dweb:/ipfs/Qmd4L3vGQiavSCe9g2k7riyA6cer3ruuxRFehAJCSxNRfw"
207
229
  ],
208
230
  "license": "MIT"
209
231
  },
210
232
  "node_modules/@latticexyz/world/src/IWorldErrors.sol": {
211
- "keccak256": "0xf3c2037a2899d81a15d5e13c7101337fcf01fcb321cec418e36da5617d52c99c",
233
+ "keccak256": "0xc3e7975e5785574543229eac51e3441f4185863d7f5346c0ae08a27b4541f8a7",
212
234
  "urls": [
213
- "bzz-raw://565b53005697c2cb4ce744f4b192545e3b059d42ea97075fe022a47d0d38cb7f",
214
- "dweb:/ipfs/QmbGVQuozeLMwUic7LanodXacPiBfomKS8ERnkVFi9vSYz"
235
+ "bzz-raw://62cc0dc109e6e5475bb07fb95643a31c74337c23521db0557a36dad6117a1e83",
236
+ "dweb:/ipfs/Qmb8jbE1XQTUdreKFr4Jw3xmjctaLuReRZjPxZKQ2uW9p4"
215
237
  ],
216
238
  "license": "MIT"
217
239
  },
218
240
  "node_modules/@latticexyz/world/src/IWorldKernel.sol": {
219
- "keccak256": "0xc2e28cb4daa77de640228f7b3b5c98423e6c39a8b8f68af5a56b076cad7025de",
241
+ "keccak256": "0x9dc133cb55dc23fd6fcbbef8078bb4ea9bf67d698400cf89fc62b905b60cf5eb",
220
242
  "urls": [
221
- "bzz-raw://7ae7e0798dc66368f6dc56992cd1fe3046dd51bcb6fcc3b04b7fd0d48b9557bc",
222
- "dweb:/ipfs/QmXKJLLGjVaDBRhbvT47Mxkt2jFEBShvHLAtt3CZYVEbqF"
243
+ "bzz-raw://7c1a57df7052218483eafe72d873660f39a73e2e06c1b14ad8a579d85b94bc6c",
244
+ "dweb:/ipfs/Qme7dnjvADGZyM2L7nZ51nSjsjXXF9isTVCpWaUCd1cEGs"
223
245
  ],
224
246
  "license": "MIT"
225
247
  },
226
248
  "node_modules/@latticexyz/world/src/WorldResourceId.sol": {
227
- "keccak256": "0x979e418af3d0d3a1866240bed58d2792f0718cc1803a1476ec8c93af5577cae3",
249
+ "keccak256": "0xb7bfae2890004001221b3902d185c14cfea0e606d16914f6b7f81cf112aa9417",
228
250
  "urls": [
229
- "bzz-raw://c68cfe48ce67fe83f4b000c954891821d1fae31bfdd36de37a12637c8a1864f7",
230
- "dweb:/ipfs/QmUX9tHSMTeScbiacKX2T16gLV6aPKDU1Q3eDiNxqmVNa1"
251
+ "bzz-raw://acfd0d09166fc1bf16a8a5c80fbae1bd42426b2fcbab3c492bc836ea5c0375fb",
252
+ "dweb:/ipfs/QmTzZWHVBkx8hipFVpgEwAbZpr4c6hfr7yf7R71JojT3NK"
231
253
  ],
232
254
  "license": "MIT"
233
255
  },
@@ -240,10 +262,10 @@
240
262
  "license": "MIT"
241
263
  },
242
264
  "node_modules/@latticexyz/world/src/worldResourceTypes.sol": {
243
- "keccak256": "0x88f844f2c43757c819c8f140b30254f07c3484e12cce573879d43b2ee6a23f8b",
265
+ "keccak256": "0xe31ee781596541f60ed71ef327c9d26ffc899e7fb3f4991c67406518bfc00746",
244
266
  "urls": [
245
- "bzz-raw://55a9095094c2b7b1043020681696380cfc3cffd1f264a70bacb44fccd0fc0a8a",
246
- "dweb:/ipfs/QmfPdLPr9hfV8X8yfHhEf2HmEWAnA4d1c6EHEjHMdeM7ML"
267
+ "bzz-raw://f7b864fea8c77833a322b16c4673f110d5065d0cafcedecd07895699cf4258c2",
268
+ "dweb:/ipfs/QmRkzXVjMLwQFWxjEjgfdXVPAp6SU4zfxPo4NJcmz8HwH9"
247
269
  ],
248
270
  "license": "MIT"
249
271
  }
@@ -252,32 +274,32 @@
252
274
  },
253
275
  "ast": {
254
276
  "absolutePath": "node_modules/@latticexyz/world/src/IWorldKernel.sol",
255
- "id": 38561,
277
+ "id": 38613,
256
278
  "exportedSymbols": {
257
279
  "IModule": [
258
- 60813
280
+ 60893
259
281
  ],
260
282
  "IWorldCall": [
261
- 38529
283
+ 38580
262
284
  ],
263
285
  "IWorldErrors": [
264
- 60892
286
+ 60987
265
287
  ],
266
288
  "IWorldKernel": [
267
- 38560
289
+ 38612
268
290
  ],
269
291
  "IWorldModuleInstallation": [
270
- 38504
292
+ 38554
271
293
  ],
272
294
  "ResourceId": [
273
- 26191
295
+ 26238
274
296
  ]
275
297
  },
276
298
  "nodeType": "SourceUnit",
277
- "src": "32:1868:94",
299
+ "src": "32:3258:94",
278
300
  "nodes": [
279
301
  {
280
- "id": 38488,
302
+ "id": 38537,
281
303
  "nodeType": "PragmaDirective",
282
304
  "src": "32:25:94",
283
305
  "nodes": [],
@@ -289,23 +311,23 @@
289
311
  ]
290
312
  },
291
313
  {
292
- "id": 38490,
314
+ "id": 38539,
293
315
  "nodeType": "ImportDirective",
294
316
  "src": "59:50:94",
295
317
  "nodes": [],
296
318
  "absolutePath": "node_modules/@latticexyz/world/src/IWorldErrors.sol",
297
319
  "file": "./IWorldErrors.sol",
298
320
  "nameLocation": "-1:-1:-1",
299
- "scope": 38561,
300
- "sourceUnit": 60893,
321
+ "scope": 38613,
322
+ "sourceUnit": 60988,
301
323
  "symbolAliases": [
302
324
  {
303
325
  "foreign": {
304
- "id": 38489,
326
+ "id": 38538,
305
327
  "name": "IWorldErrors",
306
328
  "nodeType": "Identifier",
307
329
  "overloadedDeclarations": [],
308
- "referencedDeclaration": 60892,
330
+ "referencedDeclaration": 60987,
309
331
  "src": "68:12:94",
310
332
  "typeDescriptions": {}
311
333
  },
@@ -315,23 +337,23 @@
315
337
  "unitAlias": ""
316
338
  },
317
339
  {
318
- "id": 38492,
340
+ "id": 38541,
319
341
  "nodeType": "ImportDirective",
320
342
  "src": "110:40:94",
321
343
  "nodes": [],
322
344
  "absolutePath": "node_modules/@latticexyz/world/src/IModule.sol",
323
345
  "file": "./IModule.sol",
324
346
  "nameLocation": "-1:-1:-1",
325
- "scope": 38561,
326
- "sourceUnit": 60814,
347
+ "scope": 38613,
348
+ "sourceUnit": 60894,
327
349
  "symbolAliases": [
328
350
  {
329
351
  "foreign": {
330
- "id": 38491,
352
+ "id": 38540,
331
353
  "name": "IModule",
332
354
  "nodeType": "Identifier",
333
355
  "overloadedDeclarations": [],
334
- "referencedDeclaration": 60813,
356
+ "referencedDeclaration": 60893,
335
357
  "src": "119:7:94",
336
358
  "typeDescriptions": {}
337
359
  },
@@ -341,23 +363,23 @@
341
363
  "unitAlias": ""
342
364
  },
343
365
  {
344
- "id": 38494,
366
+ "id": 38543,
345
367
  "nodeType": "ImportDirective",
346
368
  "src": "151:51:94",
347
369
  "nodes": [],
348
370
  "absolutePath": "node_modules/@latticexyz/world/src/WorldResourceId.sol",
349
371
  "file": "./WorldResourceId.sol",
350
372
  "nameLocation": "-1:-1:-1",
351
- "scope": 38561,
352
- "sourceUnit": 39104,
373
+ "scope": 38613,
374
+ "sourceUnit": 39171,
353
375
  "symbolAliases": [
354
376
  {
355
377
  "foreign": {
356
- "id": 38493,
378
+ "id": 38542,
357
379
  "name": "ResourceId",
358
380
  "nodeType": "Identifier",
359
381
  "overloadedDeclarations": [],
360
- "referencedDeclaration": 26191,
382
+ "referencedDeclaration": 26238,
361
383
  "src": "160:10:94",
362
384
  "typeDescriptions": {}
363
385
  },
@@ -367,63 +389,63 @@
367
389
  "unitAlias": ""
368
390
  },
369
391
  {
370
- "id": 38504,
392
+ "id": 38554,
371
393
  "nodeType": "ContractDefinition",
372
- "src": "204:296:94",
394
+ "src": "354:420:94",
373
395
  "nodes": [
374
396
  {
375
- "id": 38503,
397
+ "id": 38553,
376
398
  "nodeType": "FunctionDefinition",
377
- "src": "427:71:94",
399
+ "src": "701:71:94",
378
400
  "nodes": [],
379
401
  "documentation": {
380
- "id": 38495,
402
+ "id": 38545,
381
403
  "nodeType": "StructuredDocumentation",
382
- "src": "243:181:94",
383
- "text": " Install the given root module in the World.\n Requires the caller to own the root namespace.\n The module is delegatecalled and installed in the root namespace."
404
+ "src": "393:305:94",
405
+ "text": " @notice Install the given root module in the World.\n @dev Requires the caller to own the root namespace. The module is delegatecalled and installed in the root namespace.\n @param module The module to be installed.\n @param args The arguments provided for the module installation."
384
406
  },
385
407
  "functionSelector": "af068c9e",
386
408
  "implemented": false,
387
409
  "kind": "function",
388
410
  "modifiers": [],
389
411
  "name": "installRootModule",
390
- "nameLocation": "436:17:94",
412
+ "nameLocation": "710:17:94",
391
413
  "parameters": {
392
- "id": 38501,
414
+ "id": 38551,
393
415
  "nodeType": "ParameterList",
394
416
  "parameters": [
395
417
  {
396
418
  "constant": false,
397
- "id": 38498,
419
+ "id": 38548,
398
420
  "mutability": "mutable",
399
421
  "name": "module",
400
- "nameLocation": "462:6:94",
422
+ "nameLocation": "736:6:94",
401
423
  "nodeType": "VariableDeclaration",
402
- "scope": 38503,
403
- "src": "454:14:94",
424
+ "scope": 38553,
425
+ "src": "728:14:94",
404
426
  "stateVariable": false,
405
427
  "storageLocation": "default",
406
428
  "typeDescriptions": {
407
- "typeIdentifier": "t_contract$_IModule_$60813",
429
+ "typeIdentifier": "t_contract$_IModule_$60893",
408
430
  "typeString": "contract IModule"
409
431
  },
410
432
  "typeName": {
411
- "id": 38497,
433
+ "id": 38547,
412
434
  "nodeType": "UserDefinedTypeName",
413
435
  "pathNode": {
414
- "id": 38496,
436
+ "id": 38546,
415
437
  "name": "IModule",
416
438
  "nameLocations": [
417
- "454:7:94"
439
+ "728:7:94"
418
440
  ],
419
441
  "nodeType": "IdentifierPath",
420
- "referencedDeclaration": 60813,
421
- "src": "454:7:94"
442
+ "referencedDeclaration": 60893,
443
+ "src": "728:7:94"
422
444
  },
423
- "referencedDeclaration": 60813,
424
- "src": "454:7:94",
445
+ "referencedDeclaration": 60893,
446
+ "src": "728:7:94",
425
447
  "typeDescriptions": {
426
- "typeIdentifier": "t_contract$_IModule_$60813",
448
+ "typeIdentifier": "t_contract$_IModule_$60893",
427
449
  "typeString": "contract IModule"
428
450
  }
429
451
  },
@@ -431,13 +453,13 @@
431
453
  },
432
454
  {
433
455
  "constant": false,
434
- "id": 38500,
456
+ "id": 38550,
435
457
  "mutability": "mutable",
436
458
  "name": "args",
437
- "nameLocation": "483:4:94",
459
+ "nameLocation": "757:4:94",
438
460
  "nodeType": "VariableDeclaration",
439
- "scope": 38503,
440
- "src": "470:17:94",
461
+ "scope": 38553,
462
+ "src": "744:17:94",
441
463
  "stateVariable": false,
442
464
  "storageLocation": "memory",
443
465
  "typeDescriptions": {
@@ -445,10 +467,10 @@
445
467
  "typeString": "bytes"
446
468
  },
447
469
  "typeName": {
448
- "id": 38499,
470
+ "id": 38549,
449
471
  "name": "bytes",
450
472
  "nodeType": "ElementaryTypeName",
451
- "src": "470:5:94",
473
+ "src": "744:5:94",
452
474
  "typeDescriptions": {
453
475
  "typeIdentifier": "t_bytes_storage_ptr",
454
476
  "typeString": "bytes"
@@ -457,15 +479,15 @@
457
479
  "visibility": "internal"
458
480
  }
459
481
  ],
460
- "src": "453:35:94"
482
+ "src": "727:35:94"
461
483
  },
462
484
  "returnParameters": {
463
- "id": 38502,
485
+ "id": 38552,
464
486
  "nodeType": "ParameterList",
465
487
  "parameters": [],
466
- "src": "497:0:94"
488
+ "src": "771:0:94"
467
489
  },
468
- "scope": 38504,
490
+ "scope": 38554,
469
491
  "stateMutability": "nonpayable",
470
492
  "virtual": false,
471
493
  "visibility": "external"
@@ -476,74 +498,80 @@
476
498
  "canonicalName": "IWorldModuleInstallation",
477
499
  "contractDependencies": [],
478
500
  "contractKind": "interface",
501
+ "documentation": {
502
+ "id": 38544,
503
+ "nodeType": "StructuredDocumentation",
504
+ "src": "204:149:94",
505
+ "text": " @title World Module Installation Interface\n @dev This interface defines the contract responsible for managing root modules installation."
506
+ },
479
507
  "fullyImplemented": false,
480
508
  "linearizedBaseContracts": [
481
- 38504
509
+ 38554
482
510
  ],
483
511
  "name": "IWorldModuleInstallation",
484
- "nameLocation": "214:24:94",
485
- "scope": 38561,
512
+ "nameLocation": "364:24:94",
513
+ "scope": 38613,
486
514
  "usedErrors": [],
487
515
  "usedEvents": []
488
516
  },
489
517
  {
490
- "id": 38529,
518
+ "id": 38580,
491
519
  "nodeType": "ContractDefinition",
492
- "src": "502:646:94",
520
+ "src": "903:1234:94",
493
521
  "nodes": [
494
522
  {
495
- "id": 38515,
523
+ "id": 38566,
496
524
  "nodeType": "FunctionDefinition",
497
- "src": "699:98:94",
525
+ "src": "1360:98:94",
498
526
  "nodes": [],
499
527
  "documentation": {
500
- "id": 38505,
528
+ "id": 38556,
501
529
  "nodeType": "StructuredDocumentation",
502
- "src": "527:169:94",
503
- "text": " Call the system at the given system ID.\n If the system is not public, the caller must have access to the namespace or name (encoded in the system ID)."
530
+ "src": "928:429:94",
531
+ "text": " @notice Call the system at the given system ID.\n @dev If the system is not public, the caller must have access to the namespace or name (encoded in the system ID).\n @param systemId The ID of the system to be called.\n @param callData The data to pass with the call,\n function selector (4 bytes) followed by the ABI encoded parameters.\n @return The abi encoded return data from the called system."
504
532
  },
505
533
  "functionSelector": "3ae7af08",
506
534
  "implemented": false,
507
535
  "kind": "function",
508
536
  "modifiers": [],
509
537
  "name": "call",
510
- "nameLocation": "708:4:94",
538
+ "nameLocation": "1369:4:94",
511
539
  "parameters": {
512
- "id": 38511,
540
+ "id": 38562,
513
541
  "nodeType": "ParameterList",
514
542
  "parameters": [
515
543
  {
516
544
  "constant": false,
517
- "id": 38508,
545
+ "id": 38559,
518
546
  "mutability": "mutable",
519
547
  "name": "systemId",
520
- "nameLocation": "724:8:94",
548
+ "nameLocation": "1385:8:94",
521
549
  "nodeType": "VariableDeclaration",
522
- "scope": 38515,
523
- "src": "713:19:94",
550
+ "scope": 38566,
551
+ "src": "1374:19:94",
524
552
  "stateVariable": false,
525
553
  "storageLocation": "default",
526
554
  "typeDescriptions": {
527
- "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26191",
555
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26238",
528
556
  "typeString": "ResourceId"
529
557
  },
530
558
  "typeName": {
531
- "id": 38507,
559
+ "id": 38558,
532
560
  "nodeType": "UserDefinedTypeName",
533
561
  "pathNode": {
534
- "id": 38506,
562
+ "id": 38557,
535
563
  "name": "ResourceId",
536
564
  "nameLocations": [
537
- "713:10:94"
565
+ "1374:10:94"
538
566
  ],
539
567
  "nodeType": "IdentifierPath",
540
- "referencedDeclaration": 26191,
541
- "src": "713:10:94"
568
+ "referencedDeclaration": 26238,
569
+ "src": "1374:10:94"
542
570
  },
543
- "referencedDeclaration": 26191,
544
- "src": "713:10:94",
571
+ "referencedDeclaration": 26238,
572
+ "src": "1374:10:94",
545
573
  "typeDescriptions": {
546
- "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26191",
574
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26238",
547
575
  "typeString": "ResourceId"
548
576
  }
549
577
  },
@@ -551,13 +579,13 @@
551
579
  },
552
580
  {
553
581
  "constant": false,
554
- "id": 38510,
582
+ "id": 38561,
555
583
  "mutability": "mutable",
556
584
  "name": "callData",
557
- "nameLocation": "747:8:94",
585
+ "nameLocation": "1408:8:94",
558
586
  "nodeType": "VariableDeclaration",
559
- "scope": 38515,
560
- "src": "734:21:94",
587
+ "scope": 38566,
588
+ "src": "1395:21:94",
561
589
  "stateVariable": false,
562
590
  "storageLocation": "memory",
563
591
  "typeDescriptions": {
@@ -565,10 +593,10 @@
565
593
  "typeString": "bytes"
566
594
  },
567
595
  "typeName": {
568
- "id": 38509,
596
+ "id": 38560,
569
597
  "name": "bytes",
570
598
  "nodeType": "ElementaryTypeName",
571
- "src": "734:5:94",
599
+ "src": "1395:5:94",
572
600
  "typeDescriptions": {
573
601
  "typeIdentifier": "t_bytes_storage_ptr",
574
602
  "typeString": "bytes"
@@ -577,21 +605,21 @@
577
605
  "visibility": "internal"
578
606
  }
579
607
  ],
580
- "src": "712:44:94"
608
+ "src": "1373:44:94"
581
609
  },
582
610
  "returnParameters": {
583
- "id": 38514,
611
+ "id": 38565,
584
612
  "nodeType": "ParameterList",
585
613
  "parameters": [
586
614
  {
587
615
  "constant": false,
588
- "id": 38513,
616
+ "id": 38564,
589
617
  "mutability": "mutable",
590
618
  "name": "",
591
619
  "nameLocation": "-1:-1:-1",
592
620
  "nodeType": "VariableDeclaration",
593
- "scope": 38515,
594
- "src": "783:12:94",
621
+ "scope": 38566,
622
+ "src": "1444:12:94",
595
623
  "stateVariable": false,
596
624
  "storageLocation": "memory",
597
625
  "typeDescriptions": {
@@ -599,10 +627,10 @@
599
627
  "typeString": "bytes"
600
628
  },
601
629
  "typeName": {
602
- "id": 38512,
630
+ "id": 38563,
603
631
  "name": "bytes",
604
632
  "nodeType": "ElementaryTypeName",
605
- "src": "783:5:94",
633
+ "src": "1444:5:94",
606
634
  "typeDescriptions": {
607
635
  "typeIdentifier": "t_bytes_storage_ptr",
608
636
  "typeString": "bytes"
@@ -611,43 +639,43 @@
611
639
  "visibility": "internal"
612
640
  }
613
641
  ],
614
- "src": "782:14:94"
642
+ "src": "1443:14:94"
615
643
  },
616
- "scope": 38529,
644
+ "scope": 38580,
617
645
  "stateMutability": "payable",
618
646
  "virtual": false,
619
647
  "visibility": "external"
620
648
  },
621
649
  {
622
- "id": 38528,
650
+ "id": 38579,
623
651
  "nodeType": "FunctionDefinition",
624
- "src": "1009:137:94",
652
+ "src": "1998:137:94",
625
653
  "nodes": [],
626
654
  "documentation": {
627
- "id": 38516,
655
+ "id": 38567,
628
656
  "nodeType": "StructuredDocumentation",
629
- "src": "801:205:94",
630
- "text": " Call the system at the given system ID on behalf of the given delegator.\n If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID)."
657
+ "src": "1462:533:94",
658
+ "text": " @notice Call the system at the given system ID on behalf of the given delegator.\n @dev If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID).\n @param delegator The address on whose behalf the call is made.\n @param systemId The ID of the system to be called.\n @param callData The data to pass with the call,\n function selector (4 bytes) followed by the ABI encoded parameters.\n @return The abi encoded return data from the called system."
631
659
  },
632
660
  "functionSelector": "894ecc58",
633
661
  "implemented": false,
634
662
  "kind": "function",
635
663
  "modifiers": [],
636
664
  "name": "callFrom",
637
- "nameLocation": "1018:8:94",
665
+ "nameLocation": "2007:8:94",
638
666
  "parameters": {
639
- "id": 38524,
667
+ "id": 38575,
640
668
  "nodeType": "ParameterList",
641
669
  "parameters": [
642
670
  {
643
671
  "constant": false,
644
- "id": 38518,
672
+ "id": 38569,
645
673
  "mutability": "mutable",
646
674
  "name": "delegator",
647
- "nameLocation": "1040:9:94",
675
+ "nameLocation": "2029:9:94",
648
676
  "nodeType": "VariableDeclaration",
649
- "scope": 38528,
650
- "src": "1032:17:94",
677
+ "scope": 38579,
678
+ "src": "2021:17:94",
651
679
  "stateVariable": false,
652
680
  "storageLocation": "default",
653
681
  "typeDescriptions": {
@@ -655,10 +683,10 @@
655
683
  "typeString": "address"
656
684
  },
657
685
  "typeName": {
658
- "id": 38517,
686
+ "id": 38568,
659
687
  "name": "address",
660
688
  "nodeType": "ElementaryTypeName",
661
- "src": "1032:7:94",
689
+ "src": "2021:7:94",
662
690
  "stateMutability": "nonpayable",
663
691
  "typeDescriptions": {
664
692
  "typeIdentifier": "t_address",
@@ -669,36 +697,36 @@
669
697
  },
670
698
  {
671
699
  "constant": false,
672
- "id": 38521,
700
+ "id": 38572,
673
701
  "mutability": "mutable",
674
702
  "name": "systemId",
675
- "nameLocation": "1066:8:94",
703
+ "nameLocation": "2055:8:94",
676
704
  "nodeType": "VariableDeclaration",
677
- "scope": 38528,
678
- "src": "1055:19:94",
705
+ "scope": 38579,
706
+ "src": "2044:19:94",
679
707
  "stateVariable": false,
680
708
  "storageLocation": "default",
681
709
  "typeDescriptions": {
682
- "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26191",
710
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26238",
683
711
  "typeString": "ResourceId"
684
712
  },
685
713
  "typeName": {
686
- "id": 38520,
714
+ "id": 38571,
687
715
  "nodeType": "UserDefinedTypeName",
688
716
  "pathNode": {
689
- "id": 38519,
717
+ "id": 38570,
690
718
  "name": "ResourceId",
691
719
  "nameLocations": [
692
- "1055:10:94"
720
+ "2044:10:94"
693
721
  ],
694
722
  "nodeType": "IdentifierPath",
695
- "referencedDeclaration": 26191,
696
- "src": "1055:10:94"
723
+ "referencedDeclaration": 26238,
724
+ "src": "2044:10:94"
697
725
  },
698
- "referencedDeclaration": 26191,
699
- "src": "1055:10:94",
726
+ "referencedDeclaration": 26238,
727
+ "src": "2044:10:94",
700
728
  "typeDescriptions": {
701
- "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26191",
729
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$26238",
702
730
  "typeString": "ResourceId"
703
731
  }
704
732
  },
@@ -706,13 +734,13 @@
706
734
  },
707
735
  {
708
736
  "constant": false,
709
- "id": 38523,
737
+ "id": 38574,
710
738
  "mutability": "mutable",
711
739
  "name": "callData",
712
- "nameLocation": "1093:8:94",
740
+ "nameLocation": "2082:8:94",
713
741
  "nodeType": "VariableDeclaration",
714
- "scope": 38528,
715
- "src": "1080:21:94",
742
+ "scope": 38579,
743
+ "src": "2069:21:94",
716
744
  "stateVariable": false,
717
745
  "storageLocation": "memory",
718
746
  "typeDescriptions": {
@@ -720,10 +748,10 @@
720
748
  "typeString": "bytes"
721
749
  },
722
750
  "typeName": {
723
- "id": 38522,
751
+ "id": 38573,
724
752
  "name": "bytes",
725
753
  "nodeType": "ElementaryTypeName",
726
- "src": "1080:5:94",
754
+ "src": "2069:5:94",
727
755
  "typeDescriptions": {
728
756
  "typeIdentifier": "t_bytes_storage_ptr",
729
757
  "typeString": "bytes"
@@ -732,21 +760,21 @@
732
760
  "visibility": "internal"
733
761
  }
734
762
  ],
735
- "src": "1026:79:94"
763
+ "src": "2015:79:94"
736
764
  },
737
765
  "returnParameters": {
738
- "id": 38527,
766
+ "id": 38578,
739
767
  "nodeType": "ParameterList",
740
768
  "parameters": [
741
769
  {
742
770
  "constant": false,
743
- "id": 38526,
771
+ "id": 38577,
744
772
  "mutability": "mutable",
745
773
  "name": "",
746
774
  "nameLocation": "-1:-1:-1",
747
775
  "nodeType": "VariableDeclaration",
748
- "scope": 38528,
749
- "src": "1132:12:94",
776
+ "scope": 38579,
777
+ "src": "2121:12:94",
750
778
  "stateVariable": false,
751
779
  "storageLocation": "memory",
752
780
  "typeDescriptions": {
@@ -754,10 +782,10 @@
754
782
  "typeString": "bytes"
755
783
  },
756
784
  "typeName": {
757
- "id": 38525,
785
+ "id": 38576,
758
786
  "name": "bytes",
759
787
  "nodeType": "ElementaryTypeName",
760
- "src": "1132:5:94",
788
+ "src": "2121:5:94",
761
789
  "typeDescriptions": {
762
790
  "typeIdentifier": "t_bytes_storage_ptr",
763
791
  "typeString": "bytes"
@@ -766,9 +794,9 @@
766
794
  "visibility": "internal"
767
795
  }
768
796
  ],
769
- "src": "1131:14:94"
797
+ "src": "2120:14:94"
770
798
  },
771
- "scope": 38529,
799
+ "scope": 38580,
772
800
  "stateMutability": "payable",
773
801
  "virtual": false,
774
802
  "visibility": "external"
@@ -779,44 +807,56 @@
779
807
  "canonicalName": "IWorldCall",
780
808
  "contractDependencies": [],
781
809
  "contractKind": "interface",
810
+ "documentation": {
811
+ "id": 38555,
812
+ "nodeType": "StructuredDocumentation",
813
+ "src": "776:126:94",
814
+ "text": " @title World Call Interface\n @dev This interface defines the contract for executing calls on the World's systems."
815
+ },
782
816
  "fullyImplemented": false,
783
817
  "linearizedBaseContracts": [
784
- 38529
818
+ 38580
785
819
  ],
786
820
  "name": "IWorldCall",
787
- "nameLocation": "512:10:94",
788
- "scope": 38561,
821
+ "nameLocation": "913:10:94",
822
+ "scope": 38613,
789
823
  "usedErrors": [],
790
824
  "usedEvents": []
791
825
  },
792
826
  {
793
- "id": 38560,
827
+ "id": 38612,
794
828
  "nodeType": "ContractDefinition",
795
- "src": "1416:483:94",
829
+ "src": "2440:849:94",
796
830
  "nodes": [
797
831
  {
798
- "id": 38540,
832
+ "id": 38592,
799
833
  "nodeType": "EventDefinition",
800
- "src": "1497:47:94",
834
+ "src": "2658:47:94",
801
835
  "nodes": [],
802
836
  "anonymous": false,
837
+ "documentation": {
838
+ "id": 38588,
839
+ "nodeType": "StructuredDocumentation",
840
+ "src": "2521:134:94",
841
+ "text": " @dev Emitted upon successful World initialization.\n @param worldVersion The version of the World being initialized."
842
+ },
803
843
  "eventSelector": "7f8f36afe3fb61c459c1a54a60b8a477eab02cc58e49f547561a40906239cb82",
804
844
  "name": "HelloWorld",
805
- "nameLocation": "1503:10:94",
845
+ "nameLocation": "2664:10:94",
806
846
  "parameters": {
807
- "id": 38539,
847
+ "id": 38591,
808
848
  "nodeType": "ParameterList",
809
849
  "parameters": [
810
850
  {
811
851
  "constant": false,
812
- "id": 38538,
852
+ "id": 38590,
813
853
  "indexed": true,
814
854
  "mutability": "mutable",
815
855
  "name": "worldVersion",
816
- "nameLocation": "1530:12:94",
856
+ "nameLocation": "2691:12:94",
817
857
  "nodeType": "VariableDeclaration",
818
- "scope": 38540,
819
- "src": "1514:28:94",
858
+ "scope": 38592,
859
+ "src": "2675:28:94",
820
860
  "stateVariable": false,
821
861
  "storageLocation": "default",
822
862
  "typeDescriptions": {
@@ -824,10 +864,10 @@
824
864
  "typeString": "bytes32"
825
865
  },
826
866
  "typeName": {
827
- "id": 38537,
867
+ "id": 38589,
828
868
  "name": "bytes32",
829
869
  "nodeType": "ElementaryTypeName",
830
- "src": "1514:7:94",
870
+ "src": "2675:7:94",
831
871
  "typeDescriptions": {
832
872
  "typeIdentifier": "t_bytes32",
833
873
  "typeString": "bytes32"
@@ -836,45 +876,45 @@
836
876
  "visibility": "internal"
837
877
  }
838
878
  ],
839
- "src": "1513:30:94"
879
+ "src": "2674:30:94"
840
880
  }
841
881
  },
842
882
  {
843
- "id": 38546,
883
+ "id": 38598,
844
884
  "nodeType": "FunctionDefinition",
845
- "src": "1591:56:94",
885
+ "src": "2819:56:94",
846
886
  "nodes": [],
847
887
  "documentation": {
848
- "id": 38541,
888
+ "id": 38593,
849
889
  "nodeType": "StructuredDocumentation",
850
- "src": "1548:40:94",
851
- "text": " The version of the World."
890
+ "src": "2709:107:94",
891
+ "text": " @notice Retrieve the version of the World.\n @return The version identifier of the World."
852
892
  },
853
893
  "functionSelector": "6951955d",
854
894
  "implemented": false,
855
895
  "kind": "function",
856
896
  "modifiers": [],
857
897
  "name": "worldVersion",
858
- "nameLocation": "1600:12:94",
898
+ "nameLocation": "2828:12:94",
859
899
  "parameters": {
860
- "id": 38542,
900
+ "id": 38594,
861
901
  "nodeType": "ParameterList",
862
902
  "parameters": [],
863
- "src": "1612:2:94"
903
+ "src": "2840:2:94"
864
904
  },
865
905
  "returnParameters": {
866
- "id": 38545,
906
+ "id": 38597,
867
907
  "nodeType": "ParameterList",
868
908
  "parameters": [
869
909
  {
870
910
  "constant": false,
871
- "id": 38544,
911
+ "id": 38596,
872
912
  "mutability": "mutable",
873
913
  "name": "",
874
914
  "nameLocation": "-1:-1:-1",
875
915
  "nodeType": "VariableDeclaration",
876
- "scope": 38546,
877
- "src": "1638:7:94",
916
+ "scope": 38598,
917
+ "src": "2866:7:94",
878
918
  "stateVariable": false,
879
919
  "storageLocation": "default",
880
920
  "typeDescriptions": {
@@ -882,10 +922,10 @@
882
922
  "typeString": "bytes32"
883
923
  },
884
924
  "typeName": {
885
- "id": 38543,
925
+ "id": 38595,
886
926
  "name": "bytes32",
887
927
  "nodeType": "ElementaryTypeName",
888
- "src": "1638:7:94",
928
+ "src": "2866:7:94",
889
929
  "typeDescriptions": {
890
930
  "typeIdentifier": "t_bytes32",
891
931
  "typeString": "bytes32"
@@ -894,49 +934,49 @@
894
934
  "visibility": "internal"
895
935
  }
896
936
  ],
897
- "src": "1637:9:94"
937
+ "src": "2865:9:94"
898
938
  },
899
- "scope": 38560,
939
+ "scope": 38612,
900
940
  "stateMutability": "view",
901
941
  "virtual": false,
902
942
  "visibility": "external"
903
943
  },
904
944
  {
905
- "id": 38552,
945
+ "id": 38604,
906
946
  "nodeType": "FunctionDefinition",
907
- "src": "1714:51:94",
947
+ "src": "3008:51:94",
908
948
  "nodes": [],
909
949
  "documentation": {
910
- "id": 38547,
950
+ "id": 38599,
911
951
  "nodeType": "StructuredDocumentation",
912
- "src": "1651:60:94",
913
- "text": " The immutable original deployer of the World."
952
+ "src": "2879:126:94",
953
+ "text": " @notice Retrieve the immutable original deployer of the World.\n @return The address of the World's creator."
914
954
  },
915
955
  "functionSelector": "02d05d3f",
916
956
  "implemented": false,
917
957
  "kind": "function",
918
958
  "modifiers": [],
919
959
  "name": "creator",
920
- "nameLocation": "1723:7:94",
960
+ "nameLocation": "3017:7:94",
921
961
  "parameters": {
922
- "id": 38548,
962
+ "id": 38600,
923
963
  "nodeType": "ParameterList",
924
964
  "parameters": [],
925
- "src": "1730:2:94"
965
+ "src": "3024:2:94"
926
966
  },
927
967
  "returnParameters": {
928
- "id": 38551,
968
+ "id": 38603,
929
969
  "nodeType": "ParameterList",
930
970
  "parameters": [
931
971
  {
932
972
  "constant": false,
933
- "id": 38550,
973
+ "id": 38602,
934
974
  "mutability": "mutable",
935
975
  "name": "",
936
976
  "nameLocation": "-1:-1:-1",
937
977
  "nodeType": "VariableDeclaration",
938
- "scope": 38552,
939
- "src": "1756:7:94",
978
+ "scope": 38604,
979
+ "src": "3050:7:94",
940
980
  "stateVariable": false,
941
981
  "storageLocation": "default",
942
982
  "typeDescriptions": {
@@ -944,10 +984,10 @@
944
984
  "typeString": "address"
945
985
  },
946
986
  "typeName": {
947
- "id": 38549,
987
+ "id": 38601,
948
988
  "name": "address",
949
989
  "nodeType": "ElementaryTypeName",
950
- "src": "1756:7:94",
990
+ "src": "3050:7:94",
951
991
  "stateMutability": "nonpayable",
952
992
  "typeDescriptions": {
953
993
  "typeIdentifier": "t_address",
@@ -957,81 +997,81 @@
957
997
  "visibility": "internal"
958
998
  }
959
999
  ],
960
- "src": "1755:9:94"
1000
+ "src": "3049:9:94"
961
1001
  },
962
- "scope": 38560,
1002
+ "scope": 38612,
963
1003
  "stateMutability": "view",
964
1004
  "virtual": false,
965
1005
  "visibility": "external"
966
1006
  },
967
1007
  {
968
- "id": 38559,
1008
+ "id": 38611,
969
1009
  "nodeType": "FunctionDefinition",
970
- "src": "1848:49:94",
1010
+ "src": "3238:49:94",
971
1011
  "nodes": [],
972
1012
  "documentation": {
973
- "id": 38553,
1013
+ "id": 38605,
974
1014
  "nodeType": "StructuredDocumentation",
975
- "src": "1769:76:94",
976
- "text": " Allows the creator of the World to initialize the World once."
1015
+ "src": "3063:172:94",
1016
+ "text": " @notice Initializes the World.\n @dev Can only be called once by the creator.\n @param coreModule The CoreModule to be installed during initialization."
977
1017
  },
978
1018
  "functionSelector": "c4d66de8",
979
1019
  "implemented": false,
980
1020
  "kind": "function",
981
1021
  "modifiers": [],
982
1022
  "name": "initialize",
983
- "nameLocation": "1857:10:94",
1023
+ "nameLocation": "3247:10:94",
984
1024
  "parameters": {
985
- "id": 38557,
1025
+ "id": 38609,
986
1026
  "nodeType": "ParameterList",
987
1027
  "parameters": [
988
1028
  {
989
1029
  "constant": false,
990
- "id": 38556,
1030
+ "id": 38608,
991
1031
  "mutability": "mutable",
992
1032
  "name": "coreModule",
993
- "nameLocation": "1876:10:94",
1033
+ "nameLocation": "3266:10:94",
994
1034
  "nodeType": "VariableDeclaration",
995
- "scope": 38559,
996
- "src": "1868:18:94",
1035
+ "scope": 38611,
1036
+ "src": "3258:18:94",
997
1037
  "stateVariable": false,
998
1038
  "storageLocation": "default",
999
1039
  "typeDescriptions": {
1000
- "typeIdentifier": "t_contract$_IModule_$60813",
1040
+ "typeIdentifier": "t_contract$_IModule_$60893",
1001
1041
  "typeString": "contract IModule"
1002
1042
  },
1003
1043
  "typeName": {
1004
- "id": 38555,
1044
+ "id": 38607,
1005
1045
  "nodeType": "UserDefinedTypeName",
1006
1046
  "pathNode": {
1007
- "id": 38554,
1047
+ "id": 38606,
1008
1048
  "name": "IModule",
1009
1049
  "nameLocations": [
1010
- "1868:7:94"
1050
+ "3258:7:94"
1011
1051
  ],
1012
1052
  "nodeType": "IdentifierPath",
1013
- "referencedDeclaration": 60813,
1014
- "src": "1868:7:94"
1053
+ "referencedDeclaration": 60893,
1054
+ "src": "3258:7:94"
1015
1055
  },
1016
- "referencedDeclaration": 60813,
1017
- "src": "1868:7:94",
1056
+ "referencedDeclaration": 60893,
1057
+ "src": "3258:7:94",
1018
1058
  "typeDescriptions": {
1019
- "typeIdentifier": "t_contract$_IModule_$60813",
1059
+ "typeIdentifier": "t_contract$_IModule_$60893",
1020
1060
  "typeString": "contract IModule"
1021
1061
  }
1022
1062
  },
1023
1063
  "visibility": "internal"
1024
1064
  }
1025
1065
  ],
1026
- "src": "1867:20:94"
1066
+ "src": "3257:20:94"
1027
1067
  },
1028
1068
  "returnParameters": {
1029
- "id": 38558,
1069
+ "id": 38610,
1030
1070
  "nodeType": "ParameterList",
1031
1071
  "parameters": [],
1032
- "src": "1896:0:94"
1072
+ "src": "3286:0:94"
1033
1073
  },
1034
- "scope": 38560,
1074
+ "scope": 38612,
1035
1075
  "stateMutability": "nonpayable",
1036
1076
  "virtual": false,
1037
1077
  "visibility": "external"
@@ -1041,87 +1081,87 @@
1041
1081
  "baseContracts": [
1042
1082
  {
1043
1083
  "baseName": {
1044
- "id": 38531,
1084
+ "id": 38582,
1045
1085
  "name": "IWorldModuleInstallation",
1046
1086
  "nameLocations": [
1047
- "1442:24:94"
1087
+ "2466:24:94"
1048
1088
  ],
1049
1089
  "nodeType": "IdentifierPath",
1050
- "referencedDeclaration": 38504,
1051
- "src": "1442:24:94"
1090
+ "referencedDeclaration": 38554,
1091
+ "src": "2466:24:94"
1052
1092
  },
1053
- "id": 38532,
1093
+ "id": 38583,
1054
1094
  "nodeType": "InheritanceSpecifier",
1055
- "src": "1442:24:94"
1095
+ "src": "2466:24:94"
1056
1096
  },
1057
1097
  {
1058
1098
  "baseName": {
1059
- "id": 38533,
1099
+ "id": 38584,
1060
1100
  "name": "IWorldCall",
1061
1101
  "nameLocations": [
1062
- "1468:10:94"
1102
+ "2492:10:94"
1063
1103
  ],
1064
1104
  "nodeType": "IdentifierPath",
1065
- "referencedDeclaration": 38529,
1066
- "src": "1468:10:94"
1105
+ "referencedDeclaration": 38580,
1106
+ "src": "2492:10:94"
1067
1107
  },
1068
- "id": 38534,
1108
+ "id": 38585,
1069
1109
  "nodeType": "InheritanceSpecifier",
1070
- "src": "1468:10:94"
1110
+ "src": "2492:10:94"
1071
1111
  },
1072
1112
  {
1073
1113
  "baseName": {
1074
- "id": 38535,
1114
+ "id": 38586,
1075
1115
  "name": "IWorldErrors",
1076
1116
  "nameLocations": [
1077
- "1480:12:94"
1117
+ "2504:12:94"
1078
1118
  ],
1079
1119
  "nodeType": "IdentifierPath",
1080
- "referencedDeclaration": 60892,
1081
- "src": "1480:12:94"
1120
+ "referencedDeclaration": 60987,
1121
+ "src": "2504:12:94"
1082
1122
  },
1083
- "id": 38536,
1123
+ "id": 38587,
1084
1124
  "nodeType": "InheritanceSpecifier",
1085
- "src": "1480:12:94"
1125
+ "src": "2504:12:94"
1086
1126
  }
1087
1127
  ],
1088
1128
  "canonicalName": "IWorldKernel",
1089
1129
  "contractDependencies": [],
1090
1130
  "contractKind": "interface",
1091
1131
  "documentation": {
1092
- "id": 38530,
1132
+ "id": 38581,
1093
1133
  "nodeType": "StructuredDocumentation",
1094
- "src": "1150:265:94",
1095
- "text": " The IWorldKernel interface includes all methods that are part of the World contract's\n internal bytecode.\n Consumers should use the `IBaseWorld` interface instead, which includes dynamically\n registered functions selectors from the `CoreModule`."
1134
+ "src": "2139:300:94",
1135
+ "text": " @title World Kernel Interface\n @notice The IWorldKernel interface includes all methods that are part of the World contract's\n internal bytecode. Consumers should use the `IBaseWorld` interface instead, which includes dynamically\n registered functions selectors from the `CoreModule`."
1096
1136
  },
1097
1137
  "fullyImplemented": false,
1098
1138
  "linearizedBaseContracts": [
1099
- 38560,
1100
- 60892,
1101
- 38529,
1102
- 38504
1139
+ 38612,
1140
+ 60987,
1141
+ 38580,
1142
+ 38554
1103
1143
  ],
1104
1144
  "name": "IWorldKernel",
1105
- "nameLocation": "1426:12:94",
1106
- "scope": 38561,
1145
+ "nameLocation": "2450:12:94",
1146
+ "scope": 38613,
1107
1147
  "usedErrors": [
1108
- 60819,
1109
- 60826,
1110
- 60833,
1111
- 60839,
1112
- 60846,
1113
- 60850,
1114
- 60854,
1115
- 60858,
1116
- 60864,
1117
- 60866,
1118
- 60872,
1119
- 60878,
1120
- 60887,
1121
- 60891
1148
+ 60901,
1149
+ 60909,
1150
+ 60917,
1151
+ 60924,
1152
+ 60932,
1153
+ 60937,
1154
+ 60942,
1155
+ 60947,
1156
+ 60954,
1157
+ 60957,
1158
+ 60964,
1159
+ 60971,
1160
+ 60981,
1161
+ 60986
1122
1162
  ],
1123
1163
  "usedEvents": [
1124
- 38540
1164
+ 38592
1125
1165
  ]
1126
1166
  }
1127
1167
  ],