@latticexyz/world-modules 2.0.0-next.10 → 2.0.0-next.11

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 (115) hide show
  1. package/out/AccessControl.sol/AccessControl.abi.json +1 -0
  2. package/out/AccessControl.sol/AccessControl.json +1651 -0
  3. package/out/ArrayLib.sol/ArrayLib.json +477 -477
  4. package/out/Balances.sol/Balances.abi.json +1 -0
  5. package/out/Balances.sol/Balances.json +13002 -0
  6. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.json +354 -354
  7. package/out/CallboundDelegations.sol/CallboundDelegations.json +4497 -4497
  8. package/out/DelegationControl.sol/DelegationControl.json +139 -139
  9. package/out/FunctionSelectors.sol/FunctionSelectors.abi.json +1 -0
  10. package/out/FunctionSelectors.sol/FunctionSelectors.json +17874 -0
  11. package/out/Hooks.sol/Hooks.json +45 -45
  12. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.json +18 -18
  13. package/out/IBalanceTransferSystem.sol/IBalanceTransferSystem.json +15 -15
  14. package/out/IBaseWorld.sol/IBaseWorld.json +85 -85
  15. package/out/IBatchCallSystem.sol/IBatchCallSystem.json +15 -15
  16. package/out/IDelegationControl.sol/IDelegationControl.json +11 -11
  17. package/out/ISystemHook.sol/ISystemHook.json +16 -16
  18. package/out/IUniqueEntitySystem.sol/IUniqueEntitySystem.json +25 -25
  19. package/out/IWorldErrors.sol/IWorldErrors.json +19 -19
  20. package/out/IWorldKernel.sol/IWorldCall.json +14 -14
  21. package/out/IWorldKernel.sol/IWorldKernel.json +14 -14
  22. package/out/IWorldKernel.sol/IWorldModuleInstallation.json +14 -14
  23. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.json +43 -43
  24. package/out/KeysInTable.sol/KeysInTable.json +18190 -18190
  25. package/out/KeysInTableHook.sol/KeysInTableHook.json +1407 -1407
  26. package/out/KeysInTableModule.sol/KeysInTableModule.json +842 -842
  27. package/out/KeysWithValue.sol/KeysWithValue.json +6631 -6631
  28. package/out/KeysWithValueHook.sol/KeysWithValueHook.json +1561 -1561
  29. package/out/KeysWithValueModule.sol/KeysWithValueModule.json +654 -654
  30. package/out/Module.sol/Module.json +119 -119
  31. package/out/NamespaceOwner.sol/NamespaceOwner.abi.json +1 -0
  32. package/out/NamespaceOwner.sol/NamespaceOwner.json +13016 -0
  33. package/out/ResourceAccess.sol/ResourceAccess.abi.json +1 -0
  34. package/out/ResourceAccess.sol/ResourceAccess.json +17296 -0
  35. package/out/ResourceIds.sol/ResourceIds.json +45 -45
  36. package/out/Schema.sol/SchemaInstance.json +30 -30
  37. package/out/Schema.sol/SchemaLib.json +30 -30
  38. package/out/SchemaType.sol/SchemaType.json +729 -729
  39. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.json +452 -452
  40. package/out/StoreHook.sol/StoreHook.json +639 -639
  41. package/out/StoreHooks.sol/StoreHooks.json +45 -45
  42. package/out/System.sol/System.json +32 -32
  43. package/out/SystemHooks.sol/SystemHooks.abi.json +1 -0
  44. package/out/SystemHooks.sol/SystemHooks.json +32460 -0
  45. package/out/SystemSwitch.sol/SystemSwitch.abi.json +1 -0
  46. package/out/SystemSwitch.sol/SystemSwitch.json +2879 -0
  47. package/out/Systems.sol/Systems.abi.json +1 -0
  48. package/out/Systems.sol/Systems.json +18508 -0
  49. package/out/Tables.sol/Tables.json +73 -73
  50. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.json +187 -187
  51. package/out/TimeboundDelegations.sol/TimeboundDelegations.json +3474 -3474
  52. package/out/UniqueEntity.sol/UniqueEntity.json +2345 -2345
  53. package/out/UniqueEntityModule.sol/UniqueEntityModule.json +486 -486
  54. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.json +132 -132
  55. package/out/UsedKeysIndex.sol/UsedKeysIndex.json +4590 -4590
  56. package/out/WorldContext.sol/WorldContextConsumer.json +14 -14
  57. package/out/WorldContext.sol/WorldContextConsumerLib.json +14 -14
  58. package/out/WorldContext.sol/WorldContextProviderLib.json +14 -14
  59. package/out/WorldResourceId.sol/WorldResourceIdInstance.json +107 -107
  60. package/out/WorldResourceId.sol/WorldResourceIdLib.json +107 -107
  61. package/out/constants.sol/constants.json +477 -194
  62. package/out/getKeysInTable.sol/getKeysInTable.json +918 -918
  63. package/out/getKeysWithValue.sol/getKeysWithValue.json +431 -431
  64. package/out/getTargetTableId.sol/getTargetTableId.json +272 -272
  65. package/out/getUniqueEntity.sol/getUniqueEntity.json +389 -240
  66. package/out/hasKey.sol/hasKey.json +215 -215
  67. package/out/index.sol/index.json +73 -73
  68. package/out/interfaces/IBaseWorld.sol/IBaseWorld.json +175 -175
  69. package/out/query.sol/query.json +1892 -1892
  70. package/out/revertWithBytes.sol/revertWithBytes.json +52 -52
  71. package/out/src/Bytes.sol/Bytes.json +3766 -3766
  72. package/out/src/FieldLayout.sol/FieldLayoutInstance.json +1204 -1204
  73. package/out/src/FieldLayout.sol/FieldLayoutLib.json +1204 -1204
  74. package/out/src/Hook.sol/HookInstance.abi.json +1 -0
  75. package/out/src/Hook.sol/HookInstance.json +2823 -0
  76. package/out/src/Hook.sol/HookLib.abi.json +1 -0
  77. package/out/src/Hook.sol/HookLib.json +2823 -0
  78. package/out/src/IStore.sol/IStore.json +73 -73
  79. package/out/src/ISystemHook.sol/ISystemHook.abi.json +67 -0
  80. package/out/src/ISystemHook.sol/ISystemHook.abi.json.d.ts +68 -0
  81. package/out/src/ISystemHook.sol/ISystemHook.json +852 -0
  82. package/out/src/IWorldErrors.sol/IWorldErrors.abi.json +189 -0
  83. package/out/src/IWorldErrors.sol/IWorldErrors.abi.json.d.ts +190 -0
  84. package/out/src/IWorldErrors.sol/IWorldErrors.json +1463 -0
  85. package/out/src/IWorldKernel.sol/IWorldCall.json +262 -262
  86. package/out/src/IWorldKernel.sol/IWorldKernel.json +262 -262
  87. package/out/src/IWorldKernel.sol/IWorldModuleInstallation.json +262 -262
  88. package/out/src/Memory.sol/Memory.json +242 -242
  89. package/out/src/PackedCounter.sol/PackedCounterInstance.json +1633 -1633
  90. package/out/src/PackedCounter.sol/PackedCounterLib.json +1633 -1633
  91. package/out/src/ResourceId.sol/ResourceIdInstance.json +206 -206
  92. package/out/src/ResourceId.sol/ResourceIdLib.json +206 -206
  93. package/out/src/Schema.sol/SchemaInstance.json +1351 -1351
  94. package/out/src/Schema.sol/SchemaLib.json +1351 -1351
  95. package/out/src/Slice.sol/SliceInstance.json +802 -802
  96. package/out/src/Slice.sol/SliceLib.json +802 -802
  97. package/out/src/StoreCore.sol/StoreCore.json +7412 -7412
  98. package/out/src/StoreCore.sol/StoreCoreInternal.json +7412 -7412
  99. package/out/src/StoreSwitch.sol/StoreSwitch.json +4064 -4064
  100. package/out/src/WorldContext.sol/WorldContextConsumer.json +805 -805
  101. package/out/src/WorldContext.sol/WorldContextConsumerLib.json +807 -807
  102. package/out/src/WorldContext.sol/WorldContextProviderLib.json +807 -807
  103. package/out/src/WorldResourceId.sol/WorldResourceIdInstance.json +813 -813
  104. package/out/src/WorldResourceId.sol/WorldResourceIdLib.json +813 -813
  105. package/out/storeHookTypes.sol/storeHookTypes.json +204 -204
  106. package/out/storeResourceTypes.sol/storeResourceTypes.json +23 -23
  107. package/out/systemHookTypes.sol/systemHookTypes.json +270 -0
  108. package/out/tables/ResourceIds.sol/ResourceIds.json +2922 -2922
  109. package/out/tables/Tables.sol/Tables.json +12189 -12189
  110. package/out/tightcoder/EncodeArray.sol/EncodeArray.json +6883 -6883
  111. package/out/types.sol/types.json +71 -71
  112. package/out/worldResourceTypes.sol/worldResourceTypes.json +92 -92
  113. package/package.json +8 -8
  114. package/src/modules/uniqueentity/getUniqueEntity.sol +5 -3
  115. package/src/utils/SystemSwitch.sol +82 -0
@@ -0,0 +1,1463 @@
1
+ {
2
+ "abi": [
3
+ {
4
+ "inputs": [
5
+ {
6
+ "internalType": "string",
7
+ "name": "resource",
8
+ "type": "string"
9
+ },
10
+ {
11
+ "internalType": "address",
12
+ "name": "caller",
13
+ "type": "address"
14
+ }
15
+ ],
16
+ "name": "World_AccessDenied",
17
+ "type": "error"
18
+ },
19
+ {
20
+ "inputs": [],
21
+ "name": "World_AlreadyInitialized",
22
+ "type": "error"
23
+ },
24
+ {
25
+ "inputs": [
26
+ {
27
+ "internalType": "bytes4",
28
+ "name": "functionSelector",
29
+ "type": "bytes4"
30
+ }
31
+ ],
32
+ "name": "World_CallbackNotAllowed",
33
+ "type": "error"
34
+ },
35
+ {
36
+ "inputs": [
37
+ {
38
+ "internalType": "address",
39
+ "name": "delegator",
40
+ "type": "address"
41
+ },
42
+ {
43
+ "internalType": "address",
44
+ "name": "delegatee",
45
+ "type": "address"
46
+ }
47
+ ],
48
+ "name": "World_DelegationNotFound",
49
+ "type": "error"
50
+ },
51
+ {
52
+ "inputs": [
53
+ {
54
+ "internalType": "bytes4",
55
+ "name": "functionSelector",
56
+ "type": "bytes4"
57
+ }
58
+ ],
59
+ "name": "World_FunctionSelectorAlreadyExists",
60
+ "type": "error"
61
+ },
62
+ {
63
+ "inputs": [
64
+ {
65
+ "internalType": "bytes4",
66
+ "name": "functionSelector",
67
+ "type": "bytes4"
68
+ }
69
+ ],
70
+ "name": "World_FunctionSelectorNotFound",
71
+ "type": "error"
72
+ },
73
+ {
74
+ "inputs": [
75
+ {
76
+ "internalType": "uint256",
77
+ "name": "balance",
78
+ "type": "uint256"
79
+ },
80
+ {
81
+ "internalType": "uint256",
82
+ "name": "amount",
83
+ "type": "uint256"
84
+ }
85
+ ],
86
+ "name": "World_InsufficientBalance",
87
+ "type": "error"
88
+ },
89
+ {
90
+ "inputs": [
91
+ {
92
+ "internalType": "address",
93
+ "name": "contractAddress",
94
+ "type": "address"
95
+ },
96
+ {
97
+ "internalType": "bytes4",
98
+ "name": "interfaceId",
99
+ "type": "bytes4"
100
+ }
101
+ ],
102
+ "name": "World_InterfaceNotSupported",
103
+ "type": "error"
104
+ },
105
+ {
106
+ "inputs": [
107
+ {
108
+ "internalType": "ResourceId",
109
+ "name": "resourceId",
110
+ "type": "bytes32"
111
+ },
112
+ {
113
+ "internalType": "string",
114
+ "name": "resourceIdString",
115
+ "type": "string"
116
+ }
117
+ ],
118
+ "name": "World_InvalidResourceId",
119
+ "type": "error"
120
+ },
121
+ {
122
+ "inputs": [
123
+ {
124
+ "internalType": "bytes2",
125
+ "name": "expected",
126
+ "type": "bytes2"
127
+ },
128
+ {
129
+ "internalType": "ResourceId",
130
+ "name": "resourceId",
131
+ "type": "bytes32"
132
+ },
133
+ {
134
+ "internalType": "string",
135
+ "name": "resourceIdString",
136
+ "type": "string"
137
+ }
138
+ ],
139
+ "name": "World_InvalidResourceType",
140
+ "type": "error"
141
+ },
142
+ {
143
+ "inputs": [
144
+ {
145
+ "internalType": "ResourceId",
146
+ "name": "resourceId",
147
+ "type": "bytes32"
148
+ },
149
+ {
150
+ "internalType": "string",
151
+ "name": "resourceIdString",
152
+ "type": "string"
153
+ }
154
+ ],
155
+ "name": "World_ResourceAlreadyExists",
156
+ "type": "error"
157
+ },
158
+ {
159
+ "inputs": [
160
+ {
161
+ "internalType": "ResourceId",
162
+ "name": "resourceId",
163
+ "type": "bytes32"
164
+ },
165
+ {
166
+ "internalType": "string",
167
+ "name": "resourceIdString",
168
+ "type": "string"
169
+ }
170
+ ],
171
+ "name": "World_ResourceNotFound",
172
+ "type": "error"
173
+ },
174
+ {
175
+ "inputs": [
176
+ {
177
+ "internalType": "address",
178
+ "name": "system",
179
+ "type": "address"
180
+ }
181
+ ],
182
+ "name": "World_SystemAlreadyExists",
183
+ "type": "error"
184
+ },
185
+ {
186
+ "inputs": [],
187
+ "name": "World_UnlimitedDelegationNotAllowed",
188
+ "type": "error"
189
+ }
190
+ ],
191
+ "bytecode": {
192
+ "object": "0x",
193
+ "sourceMap": "",
194
+ "linkReferences": {}
195
+ },
196
+ "deployedBytecode": {
197
+ "object": "0x",
198
+ "sourceMap": "",
199
+ "linkReferences": {}
200
+ },
201
+ "methodIdentifiers": {},
202
+ "rawMetadata": "{\"compiler\":{\"version\":\"0.8.21+commit.d9974bed\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_AccessDenied\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_CallbackNotAllowed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"World_DelegationNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"World_InsufficientBalance\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"World_InterfaceNotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceId\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"system\",\"type\":\"address\"}],\"name\":\"World_SystemAlreadyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_UnlimitedDelegationNotAllowed\",\"type\":\"error\"}],\"devdoc\":{\"details\":\"This interface contains custom error types for the World contract. These errors provide more informative messages for certain operations within the World contract.\",\"errors\":{\"World_AccessDenied(string,address)\":[{\"params\":{\"caller\":\"The address of the user trying to access the resource.\",\"resource\":\"The resource's identifier.\"}}],\"World_CallbackNotAllowed(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector of the disallowed callback.\"}}],\"World_DelegationNotFound(address,address)\":[{\"params\":{\"delegatee\":\"The address of the delegatee.\",\"delegator\":\"The address of the delegator.\"}}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_InsufficientBalance(uint256,uint256)\":[{\"params\":{\"amount\":\"The amount needed.\",\"balance\":\"The current balance.\"}}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"params\":{\"contractAddress\":\"The address of the contract in question.\",\"interfaceId\":\"The ID of the interface.\"}}],\"World_InvalidResourceId(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceNotFound(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_SystemAlreadyExists(address)\":[{\"params\":{\"system\":\"The address of the system.\"}}]},\"kind\":\"dev\",\"methods\":{},\"title\":\"World Errors Interface\",\"version\":1},\"userdoc\":{\"errors\":{\"World_AccessDenied(string,address)\":[{\"notice\":\"Raised when a user tries to access a resource they don't have permission for.\"}],\"World_AlreadyInitialized()\":[{\"notice\":\"Raised when trying to initialize an already initialized World.\"}],\"World_CallbackNotAllowed(bytes4)\":[{\"notice\":\"Raised when the World is calling itself via an external call.\"}],\"World_DelegationNotFound(address,address)\":[{\"notice\":\"Raised when the specified delegation is not found.\"}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"notice\":\"Raised when trying to register a function selector that already exists.\"}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"notice\":\"Raised when the specified function selector is not found.\"}],\"World_InsufficientBalance(uint256,uint256)\":[{\"notice\":\"Raised when there's an insufficient balance for a particular operation.\"}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"notice\":\"Raised when the specified interface is not supported by the contract.\"}],\"World_InvalidResourceId(bytes32,string)\":[{\"notice\":\"Raised when an invalid resource ID is provided.\"}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Raised when an invalid resource type is provided.\"}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"notice\":\"Raised when trying to register a resource that already exists.\"}],\"World_ResourceNotFound(bytes32,string)\":[{\"notice\":\"Raised when the specified resource is not found.\"}],\"World_SystemAlreadyExists(address)\":[{\"notice\":\"Raised when trying to register a system that already exists.\"}],\"World_UnlimitedDelegationNotAllowed()\":[{\"notice\":\"Raised when trying to create an unlimited delegation in a context where it is not allowed, e.g. when registering a namespace fallback delegation.\"}]},\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":\"IWorldErrors\"},\"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/ResourceId.sol\":{\"keccak256\":\"0x40983c580b8958e55db4520095934a535e98544ffe8228327e598973eb6647ed\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://839d658fa2bb2b1f09a08149d2bf0c26a26c301ad2dda8154fc99458085a695d\",\"dweb:/ipfs/Qmd5jHHYrgqraPqF8bjzT4xyjsoPk8K7pkxXLLfz6MRT6d\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0xc3e7975e5785574543229eac51e3441f4185863d7f5346c0ae08a27b4541f8a7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62cc0dc109e6e5475bb07fb95643a31c74337c23521db0557a36dad6117a1e83\",\"dweb:/ipfs/Qmb8jbE1XQTUdreKFr4Jw3xmjctaLuReRZjPxZKQ2uW9p4\"]}},\"version\":1}",
203
+ "metadata": {
204
+ "compiler": {
205
+ "version": "0.8.21+commit.d9974bed"
206
+ },
207
+ "language": "Solidity",
208
+ "output": {
209
+ "abi": [
210
+ {
211
+ "inputs": [
212
+ {
213
+ "internalType": "string",
214
+ "name": "resource",
215
+ "type": "string"
216
+ },
217
+ {
218
+ "internalType": "address",
219
+ "name": "caller",
220
+ "type": "address"
221
+ }
222
+ ],
223
+ "type": "error",
224
+ "name": "World_AccessDenied"
225
+ },
226
+ {
227
+ "inputs": [],
228
+ "type": "error",
229
+ "name": "World_AlreadyInitialized"
230
+ },
231
+ {
232
+ "inputs": [
233
+ {
234
+ "internalType": "bytes4",
235
+ "name": "functionSelector",
236
+ "type": "bytes4"
237
+ }
238
+ ],
239
+ "type": "error",
240
+ "name": "World_CallbackNotAllowed"
241
+ },
242
+ {
243
+ "inputs": [
244
+ {
245
+ "internalType": "address",
246
+ "name": "delegator",
247
+ "type": "address"
248
+ },
249
+ {
250
+ "internalType": "address",
251
+ "name": "delegatee",
252
+ "type": "address"
253
+ }
254
+ ],
255
+ "type": "error",
256
+ "name": "World_DelegationNotFound"
257
+ },
258
+ {
259
+ "inputs": [
260
+ {
261
+ "internalType": "bytes4",
262
+ "name": "functionSelector",
263
+ "type": "bytes4"
264
+ }
265
+ ],
266
+ "type": "error",
267
+ "name": "World_FunctionSelectorAlreadyExists"
268
+ },
269
+ {
270
+ "inputs": [
271
+ {
272
+ "internalType": "bytes4",
273
+ "name": "functionSelector",
274
+ "type": "bytes4"
275
+ }
276
+ ],
277
+ "type": "error",
278
+ "name": "World_FunctionSelectorNotFound"
279
+ },
280
+ {
281
+ "inputs": [
282
+ {
283
+ "internalType": "uint256",
284
+ "name": "balance",
285
+ "type": "uint256"
286
+ },
287
+ {
288
+ "internalType": "uint256",
289
+ "name": "amount",
290
+ "type": "uint256"
291
+ }
292
+ ],
293
+ "type": "error",
294
+ "name": "World_InsufficientBalance"
295
+ },
296
+ {
297
+ "inputs": [
298
+ {
299
+ "internalType": "address",
300
+ "name": "contractAddress",
301
+ "type": "address"
302
+ },
303
+ {
304
+ "internalType": "bytes4",
305
+ "name": "interfaceId",
306
+ "type": "bytes4"
307
+ }
308
+ ],
309
+ "type": "error",
310
+ "name": "World_InterfaceNotSupported"
311
+ },
312
+ {
313
+ "inputs": [
314
+ {
315
+ "internalType": "ResourceId",
316
+ "name": "resourceId",
317
+ "type": "bytes32"
318
+ },
319
+ {
320
+ "internalType": "string",
321
+ "name": "resourceIdString",
322
+ "type": "string"
323
+ }
324
+ ],
325
+ "type": "error",
326
+ "name": "World_InvalidResourceId"
327
+ },
328
+ {
329
+ "inputs": [
330
+ {
331
+ "internalType": "bytes2",
332
+ "name": "expected",
333
+ "type": "bytes2"
334
+ },
335
+ {
336
+ "internalType": "ResourceId",
337
+ "name": "resourceId",
338
+ "type": "bytes32"
339
+ },
340
+ {
341
+ "internalType": "string",
342
+ "name": "resourceIdString",
343
+ "type": "string"
344
+ }
345
+ ],
346
+ "type": "error",
347
+ "name": "World_InvalidResourceType"
348
+ },
349
+ {
350
+ "inputs": [
351
+ {
352
+ "internalType": "ResourceId",
353
+ "name": "resourceId",
354
+ "type": "bytes32"
355
+ },
356
+ {
357
+ "internalType": "string",
358
+ "name": "resourceIdString",
359
+ "type": "string"
360
+ }
361
+ ],
362
+ "type": "error",
363
+ "name": "World_ResourceAlreadyExists"
364
+ },
365
+ {
366
+ "inputs": [
367
+ {
368
+ "internalType": "ResourceId",
369
+ "name": "resourceId",
370
+ "type": "bytes32"
371
+ },
372
+ {
373
+ "internalType": "string",
374
+ "name": "resourceIdString",
375
+ "type": "string"
376
+ }
377
+ ],
378
+ "type": "error",
379
+ "name": "World_ResourceNotFound"
380
+ },
381
+ {
382
+ "inputs": [
383
+ {
384
+ "internalType": "address",
385
+ "name": "system",
386
+ "type": "address"
387
+ }
388
+ ],
389
+ "type": "error",
390
+ "name": "World_SystemAlreadyExists"
391
+ },
392
+ {
393
+ "inputs": [],
394
+ "type": "error",
395
+ "name": "World_UnlimitedDelegationNotAllowed"
396
+ }
397
+ ],
398
+ "devdoc": {
399
+ "kind": "dev",
400
+ "methods": {},
401
+ "version": 1
402
+ },
403
+ "userdoc": {
404
+ "kind": "user",
405
+ "methods": {},
406
+ "version": 1
407
+ }
408
+ },
409
+ "settings": {
410
+ "remappings": [
411
+ "@latticexyz/=node_modules/@latticexyz/",
412
+ "ds-test/=node_modules/ds-test/src/",
413
+ "forge-std/=node_modules/forge-std/src/"
414
+ ],
415
+ "optimizer": {
416
+ "enabled": true,
417
+ "runs": 3000
418
+ },
419
+ "metadata": {
420
+ "bytecodeHash": "none"
421
+ },
422
+ "compilationTarget": {
423
+ "node_modules/@latticexyz/world/src/IWorldErrors.sol": "IWorldErrors"
424
+ },
425
+ "libraries": {}
426
+ },
427
+ "sources": {
428
+ "node_modules/@latticexyz/store/src/ResourceId.sol": {
429
+ "keccak256": "0x40983c580b8958e55db4520095934a535e98544ffe8228327e598973eb6647ed",
430
+ "urls": [
431
+ "bzz-raw://839d658fa2bb2b1f09a08149d2bf0c26a26c301ad2dda8154fc99458085a695d",
432
+ "dweb:/ipfs/Qmd5jHHYrgqraPqF8bjzT4xyjsoPk8K7pkxXLLfz6MRT6d"
433
+ ],
434
+ "license": "MIT"
435
+ },
436
+ "node_modules/@latticexyz/world/src/IWorldErrors.sol": {
437
+ "keccak256": "0xc3e7975e5785574543229eac51e3441f4185863d7f5346c0ae08a27b4541f8a7",
438
+ "urls": [
439
+ "bzz-raw://62cc0dc109e6e5475bb07fb95643a31c74337c23521db0557a36dad6117a1e83",
440
+ "dweb:/ipfs/Qmb8jbE1XQTUdreKFr4Jw3xmjctaLuReRZjPxZKQ2uW9p4"
441
+ ],
442
+ "license": "MIT"
443
+ }
444
+ },
445
+ "version": 1
446
+ },
447
+ "ast": {
448
+ "absolutePath": "node_modules/@latticexyz/world/src/IWorldErrors.sol",
449
+ "id": 41842,
450
+ "exportedSymbols": {
451
+ "IWorldErrors": [
452
+ 41841
453
+ ],
454
+ "ResourceId": [
455
+ 29139
456
+ ]
457
+ },
458
+ "nodeType": "SourceUnit",
459
+ "src": "32:3819:96",
460
+ "nodes": [
461
+ {
462
+ "id": 41749,
463
+ "nodeType": "PragmaDirective",
464
+ "src": "32:25:96",
465
+ "nodes": [],
466
+ "literals": [
467
+ "solidity",
468
+ ">=",
469
+ "0.8",
470
+ ".21"
471
+ ]
472
+ },
473
+ {
474
+ "id": 41751,
475
+ "nodeType": "ImportDirective",
476
+ "src": "59:66:96",
477
+ "nodes": [],
478
+ "absolutePath": "node_modules/@latticexyz/store/src/ResourceId.sol",
479
+ "file": "@latticexyz/store/src/ResourceId.sol",
480
+ "nameLocation": "-1:-1:-1",
481
+ "scope": 41842,
482
+ "sourceUnit": 29211,
483
+ "symbolAliases": [
484
+ {
485
+ "foreign": {
486
+ "id": 41750,
487
+ "name": "ResourceId",
488
+ "nodeType": "Identifier",
489
+ "overloadedDeclarations": [],
490
+ "referencedDeclaration": 29139,
491
+ "src": "68:10:96",
492
+ "typeDescriptions": {}
493
+ },
494
+ "nameLocation": "-1:-1:-1"
495
+ }
496
+ ],
497
+ "unitAlias": ""
498
+ },
499
+ {
500
+ "id": 41841,
501
+ "nodeType": "ContractDefinition",
502
+ "src": "343:3507:96",
503
+ "nodes": [
504
+ {
505
+ "id": 41755,
506
+ "nodeType": "ErrorDefinition",
507
+ "src": "458:33:96",
508
+ "nodes": [],
509
+ "documentation": {
510
+ "id": 41753,
511
+ "nodeType": "StructuredDocumentation",
512
+ "src": "370:85:96",
513
+ "text": " @notice Raised when trying to initialize an already initialized World."
514
+ },
515
+ "errorSelector": "15e34a48",
516
+ "name": "World_AlreadyInitialized",
517
+ "nameLocation": "464:24:96",
518
+ "parameters": {
519
+ "id": 41754,
520
+ "nodeType": "ParameterList",
521
+ "parameters": [],
522
+ "src": "488:2:96"
523
+ }
524
+ },
525
+ {
526
+ "id": 41763,
527
+ "nodeType": "ErrorDefinition",
528
+ "src": "705:82:96",
529
+ "nodes": [],
530
+ "documentation": {
531
+ "id": 41756,
532
+ "nodeType": "StructuredDocumentation",
533
+ "src": "495:207:96",
534
+ "text": " @notice Raised when trying to register a resource that already exists.\n @param resourceId The ID of the resource.\n @param resourceIdString The string representation of the resource ID."
535
+ },
536
+ "errorSelector": "0dc28f6a",
537
+ "name": "World_ResourceAlreadyExists",
538
+ "nameLocation": "711:27:96",
539
+ "parameters": {
540
+ "id": 41762,
541
+ "nodeType": "ParameterList",
542
+ "parameters": [
543
+ {
544
+ "constant": false,
545
+ "id": 41759,
546
+ "mutability": "mutable",
547
+ "name": "resourceId",
548
+ "nameLocation": "750:10:96",
549
+ "nodeType": "VariableDeclaration",
550
+ "scope": 41763,
551
+ "src": "739:21:96",
552
+ "stateVariable": false,
553
+ "storageLocation": "default",
554
+ "typeDescriptions": {
555
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$29139",
556
+ "typeString": "ResourceId"
557
+ },
558
+ "typeName": {
559
+ "id": 41758,
560
+ "nodeType": "UserDefinedTypeName",
561
+ "pathNode": {
562
+ "id": 41757,
563
+ "name": "ResourceId",
564
+ "nameLocations": [
565
+ "739:10:96"
566
+ ],
567
+ "nodeType": "IdentifierPath",
568
+ "referencedDeclaration": 29139,
569
+ "src": "739:10:96"
570
+ },
571
+ "referencedDeclaration": 29139,
572
+ "src": "739:10:96",
573
+ "typeDescriptions": {
574
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$29139",
575
+ "typeString": "ResourceId"
576
+ }
577
+ },
578
+ "visibility": "internal"
579
+ },
580
+ {
581
+ "constant": false,
582
+ "id": 41761,
583
+ "mutability": "mutable",
584
+ "name": "resourceIdString",
585
+ "nameLocation": "769:16:96",
586
+ "nodeType": "VariableDeclaration",
587
+ "scope": 41763,
588
+ "src": "762:23:96",
589
+ "stateVariable": false,
590
+ "storageLocation": "default",
591
+ "typeDescriptions": {
592
+ "typeIdentifier": "t_string_memory_ptr",
593
+ "typeString": "string"
594
+ },
595
+ "typeName": {
596
+ "id": 41760,
597
+ "name": "string",
598
+ "nodeType": "ElementaryTypeName",
599
+ "src": "762:6:96",
600
+ "typeDescriptions": {
601
+ "typeIdentifier": "t_string_storage_ptr",
602
+ "typeString": "string"
603
+ }
604
+ },
605
+ "visibility": "internal"
606
+ }
607
+ ],
608
+ "src": "738:48:96"
609
+ }
610
+ },
611
+ {
612
+ "id": 41771,
613
+ "nodeType": "ErrorDefinition",
614
+ "src": "987:77:96",
615
+ "nodes": [],
616
+ "documentation": {
617
+ "id": 41764,
618
+ "nodeType": "StructuredDocumentation",
619
+ "src": "791:193:96",
620
+ "text": " @notice Raised when the specified resource is not found.\n @param resourceId The ID of the resource.\n @param resourceIdString The string representation of the resource ID."
621
+ },
622
+ "errorSelector": "fbf10ce6",
623
+ "name": "World_ResourceNotFound",
624
+ "nameLocation": "993:22:96",
625
+ "parameters": {
626
+ "id": 41770,
627
+ "nodeType": "ParameterList",
628
+ "parameters": [
629
+ {
630
+ "constant": false,
631
+ "id": 41767,
632
+ "mutability": "mutable",
633
+ "name": "resourceId",
634
+ "nameLocation": "1027:10:96",
635
+ "nodeType": "VariableDeclaration",
636
+ "scope": 41771,
637
+ "src": "1016:21:96",
638
+ "stateVariable": false,
639
+ "storageLocation": "default",
640
+ "typeDescriptions": {
641
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$29139",
642
+ "typeString": "ResourceId"
643
+ },
644
+ "typeName": {
645
+ "id": 41766,
646
+ "nodeType": "UserDefinedTypeName",
647
+ "pathNode": {
648
+ "id": 41765,
649
+ "name": "ResourceId",
650
+ "nameLocations": [
651
+ "1016:10:96"
652
+ ],
653
+ "nodeType": "IdentifierPath",
654
+ "referencedDeclaration": 29139,
655
+ "src": "1016:10:96"
656
+ },
657
+ "referencedDeclaration": 29139,
658
+ "src": "1016:10:96",
659
+ "typeDescriptions": {
660
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$29139",
661
+ "typeString": "ResourceId"
662
+ }
663
+ },
664
+ "visibility": "internal"
665
+ },
666
+ {
667
+ "constant": false,
668
+ "id": 41769,
669
+ "mutability": "mutable",
670
+ "name": "resourceIdString",
671
+ "nameLocation": "1046:16:96",
672
+ "nodeType": "VariableDeclaration",
673
+ "scope": 41771,
674
+ "src": "1039:23:96",
675
+ "stateVariable": false,
676
+ "storageLocation": "default",
677
+ "typeDescriptions": {
678
+ "typeIdentifier": "t_string_memory_ptr",
679
+ "typeString": "string"
680
+ },
681
+ "typeName": {
682
+ "id": 41768,
683
+ "name": "string",
684
+ "nodeType": "ElementaryTypeName",
685
+ "src": "1039:6:96",
686
+ "typeDescriptions": {
687
+ "typeIdentifier": "t_string_storage_ptr",
688
+ "typeString": "string"
689
+ }
690
+ },
691
+ "visibility": "internal"
692
+ }
693
+ ],
694
+ "src": "1015:48:96"
695
+ }
696
+ },
697
+ {
698
+ "id": 41778,
699
+ "nodeType": "ErrorDefinition",
700
+ "src": "1293:58:96",
701
+ "nodes": [],
702
+ "documentation": {
703
+ "id": 41772,
704
+ "nodeType": "StructuredDocumentation",
705
+ "src": "1068:222:96",
706
+ "text": " @notice Raised when a user tries to access a resource they don't have permission for.\n @param resource The resource's identifier.\n @param caller The address of the user trying to access the resource."
707
+ },
708
+ "errorSelector": "d787b737",
709
+ "name": "World_AccessDenied",
710
+ "nameLocation": "1299:18:96",
711
+ "parameters": {
712
+ "id": 41777,
713
+ "nodeType": "ParameterList",
714
+ "parameters": [
715
+ {
716
+ "constant": false,
717
+ "id": 41774,
718
+ "mutability": "mutable",
719
+ "name": "resource",
720
+ "nameLocation": "1325:8:96",
721
+ "nodeType": "VariableDeclaration",
722
+ "scope": 41778,
723
+ "src": "1318:15:96",
724
+ "stateVariable": false,
725
+ "storageLocation": "default",
726
+ "typeDescriptions": {
727
+ "typeIdentifier": "t_string_memory_ptr",
728
+ "typeString": "string"
729
+ },
730
+ "typeName": {
731
+ "id": 41773,
732
+ "name": "string",
733
+ "nodeType": "ElementaryTypeName",
734
+ "src": "1318:6:96",
735
+ "typeDescriptions": {
736
+ "typeIdentifier": "t_string_storage_ptr",
737
+ "typeString": "string"
738
+ }
739
+ },
740
+ "visibility": "internal"
741
+ },
742
+ {
743
+ "constant": false,
744
+ "id": 41776,
745
+ "mutability": "mutable",
746
+ "name": "caller",
747
+ "nameLocation": "1343:6:96",
748
+ "nodeType": "VariableDeclaration",
749
+ "scope": 41778,
750
+ "src": "1335:14:96",
751
+ "stateVariable": false,
752
+ "storageLocation": "default",
753
+ "typeDescriptions": {
754
+ "typeIdentifier": "t_address",
755
+ "typeString": "address"
756
+ },
757
+ "typeName": {
758
+ "id": 41775,
759
+ "name": "address",
760
+ "nodeType": "ElementaryTypeName",
761
+ "src": "1335:7:96",
762
+ "stateMutability": "nonpayable",
763
+ "typeDescriptions": {
764
+ "typeIdentifier": "t_address",
765
+ "typeString": "address"
766
+ }
767
+ },
768
+ "visibility": "internal"
769
+ }
770
+ ],
771
+ "src": "1317:33:96"
772
+ }
773
+ },
774
+ {
775
+ "id": 41786,
776
+ "nodeType": "ErrorDefinition",
777
+ "src": "1550:78:96",
778
+ "nodes": [],
779
+ "documentation": {
780
+ "id": 41779,
781
+ "nodeType": "StructuredDocumentation",
782
+ "src": "1355:192:96",
783
+ "text": " @notice Raised when an invalid resource ID is provided.\n @param resourceId The ID of the resource.\n @param resourceIdString The string representation of the resource ID."
784
+ },
785
+ "errorSelector": "e4ac069e",
786
+ "name": "World_InvalidResourceId",
787
+ "nameLocation": "1556:23:96",
788
+ "parameters": {
789
+ "id": 41785,
790
+ "nodeType": "ParameterList",
791
+ "parameters": [
792
+ {
793
+ "constant": false,
794
+ "id": 41782,
795
+ "mutability": "mutable",
796
+ "name": "resourceId",
797
+ "nameLocation": "1591:10:96",
798
+ "nodeType": "VariableDeclaration",
799
+ "scope": 41786,
800
+ "src": "1580:21:96",
801
+ "stateVariable": false,
802
+ "storageLocation": "default",
803
+ "typeDescriptions": {
804
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$29139",
805
+ "typeString": "ResourceId"
806
+ },
807
+ "typeName": {
808
+ "id": 41781,
809
+ "nodeType": "UserDefinedTypeName",
810
+ "pathNode": {
811
+ "id": 41780,
812
+ "name": "ResourceId",
813
+ "nameLocations": [
814
+ "1580:10:96"
815
+ ],
816
+ "nodeType": "IdentifierPath",
817
+ "referencedDeclaration": 29139,
818
+ "src": "1580:10:96"
819
+ },
820
+ "referencedDeclaration": 29139,
821
+ "src": "1580:10:96",
822
+ "typeDescriptions": {
823
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$29139",
824
+ "typeString": "ResourceId"
825
+ }
826
+ },
827
+ "visibility": "internal"
828
+ },
829
+ {
830
+ "constant": false,
831
+ "id": 41784,
832
+ "mutability": "mutable",
833
+ "name": "resourceIdString",
834
+ "nameLocation": "1610:16:96",
835
+ "nodeType": "VariableDeclaration",
836
+ "scope": 41786,
837
+ "src": "1603:23:96",
838
+ "stateVariable": false,
839
+ "storageLocation": "default",
840
+ "typeDescriptions": {
841
+ "typeIdentifier": "t_string_memory_ptr",
842
+ "typeString": "string"
843
+ },
844
+ "typeName": {
845
+ "id": 41783,
846
+ "name": "string",
847
+ "nodeType": "ElementaryTypeName",
848
+ "src": "1603:6:96",
849
+ "typeDescriptions": {
850
+ "typeIdentifier": "t_string_storage_ptr",
851
+ "typeString": "string"
852
+ }
853
+ },
854
+ "visibility": "internal"
855
+ }
856
+ ],
857
+ "src": "1579:48:96"
858
+ }
859
+ },
860
+ {
861
+ "id": 41791,
862
+ "nodeType": "ErrorDefinition",
863
+ "src": "1764:48:96",
864
+ "nodes": [],
865
+ "documentation": {
866
+ "id": 41787,
867
+ "nodeType": "StructuredDocumentation",
868
+ "src": "1632:129:96",
869
+ "text": " @notice Raised when trying to register a system that already exists.\n @param system The address of the system."
870
+ },
871
+ "errorSelector": "c0b70741",
872
+ "name": "World_SystemAlreadyExists",
873
+ "nameLocation": "1770:25:96",
874
+ "parameters": {
875
+ "id": 41790,
876
+ "nodeType": "ParameterList",
877
+ "parameters": [
878
+ {
879
+ "constant": false,
880
+ "id": 41789,
881
+ "mutability": "mutable",
882
+ "name": "system",
883
+ "nameLocation": "1804:6:96",
884
+ "nodeType": "VariableDeclaration",
885
+ "scope": 41791,
886
+ "src": "1796:14:96",
887
+ "stateVariable": false,
888
+ "storageLocation": "default",
889
+ "typeDescriptions": {
890
+ "typeIdentifier": "t_address",
891
+ "typeString": "address"
892
+ },
893
+ "typeName": {
894
+ "id": 41788,
895
+ "name": "address",
896
+ "nodeType": "ElementaryTypeName",
897
+ "src": "1796:7:96",
898
+ "stateMutability": "nonpayable",
899
+ "typeDescriptions": {
900
+ "typeIdentifier": "t_address",
901
+ "typeString": "address"
902
+ }
903
+ },
904
+ "visibility": "internal"
905
+ }
906
+ ],
907
+ "src": "1795:16:96"
908
+ }
909
+ },
910
+ {
911
+ "id": 41796,
912
+ "nodeType": "ErrorDefinition",
913
+ "src": "1977:67:96",
914
+ "nodes": [],
915
+ "documentation": {
916
+ "id": 41792,
917
+ "nodeType": "StructuredDocumentation",
918
+ "src": "1816:158:96",
919
+ "text": " @notice Raised when trying to register a function selector that already exists.\n @param functionSelector The function selector in question."
920
+ },
921
+ "errorSelector": "3d1d1ae2",
922
+ "name": "World_FunctionSelectorAlreadyExists",
923
+ "nameLocation": "1983:35:96",
924
+ "parameters": {
925
+ "id": 41795,
926
+ "nodeType": "ParameterList",
927
+ "parameters": [
928
+ {
929
+ "constant": false,
930
+ "id": 41794,
931
+ "mutability": "mutable",
932
+ "name": "functionSelector",
933
+ "nameLocation": "2026:16:96",
934
+ "nodeType": "VariableDeclaration",
935
+ "scope": 41796,
936
+ "src": "2019:23:96",
937
+ "stateVariable": false,
938
+ "storageLocation": "default",
939
+ "typeDescriptions": {
940
+ "typeIdentifier": "t_bytes4",
941
+ "typeString": "bytes4"
942
+ },
943
+ "typeName": {
944
+ "id": 41793,
945
+ "name": "bytes4",
946
+ "nodeType": "ElementaryTypeName",
947
+ "src": "2019:6:96",
948
+ "typeDescriptions": {
949
+ "typeIdentifier": "t_bytes4",
950
+ "typeString": "bytes4"
951
+ }
952
+ },
953
+ "visibility": "internal"
954
+ }
955
+ ],
956
+ "src": "2018:25:96"
957
+ }
958
+ },
959
+ {
960
+ "id": 41801,
961
+ "nodeType": "ErrorDefinition",
962
+ "src": "2195:62:96",
963
+ "nodes": [],
964
+ "documentation": {
965
+ "id": 41797,
966
+ "nodeType": "StructuredDocumentation",
967
+ "src": "2048:144:96",
968
+ "text": " @notice Raised when the specified function selector is not found.\n @param functionSelector The function selector in question."
969
+ },
970
+ "errorSelector": "fdde54e2",
971
+ "name": "World_FunctionSelectorNotFound",
972
+ "nameLocation": "2201:30:96",
973
+ "parameters": {
974
+ "id": 41800,
975
+ "nodeType": "ParameterList",
976
+ "parameters": [
977
+ {
978
+ "constant": false,
979
+ "id": 41799,
980
+ "mutability": "mutable",
981
+ "name": "functionSelector",
982
+ "nameLocation": "2239:16:96",
983
+ "nodeType": "VariableDeclaration",
984
+ "scope": 41801,
985
+ "src": "2232:23:96",
986
+ "stateVariable": false,
987
+ "storageLocation": "default",
988
+ "typeDescriptions": {
989
+ "typeIdentifier": "t_bytes4",
990
+ "typeString": "bytes4"
991
+ },
992
+ "typeName": {
993
+ "id": 41798,
994
+ "name": "bytes4",
995
+ "nodeType": "ElementaryTypeName",
996
+ "src": "2232:6:96",
997
+ "typeDescriptions": {
998
+ "typeIdentifier": "t_bytes4",
999
+ "typeString": "bytes4"
1000
+ }
1001
+ },
1002
+ "visibility": "internal"
1003
+ }
1004
+ ],
1005
+ "src": "2231:25:96"
1006
+ }
1007
+ },
1008
+ {
1009
+ "id": 41808,
1010
+ "nodeType": "ErrorDefinition",
1011
+ "src": "2441:69:96",
1012
+ "nodes": [],
1013
+ "documentation": {
1014
+ "id": 41802,
1015
+ "nodeType": "StructuredDocumentation",
1016
+ "src": "2261:177:96",
1017
+ "text": " @notice Raised when the specified delegation is not found.\n @param delegator The address of the delegator.\n @param delegatee The address of the delegatee."
1018
+ },
1019
+ "errorSelector": "c86745f9",
1020
+ "name": "World_DelegationNotFound",
1021
+ "nameLocation": "2447:24:96",
1022
+ "parameters": {
1023
+ "id": 41807,
1024
+ "nodeType": "ParameterList",
1025
+ "parameters": [
1026
+ {
1027
+ "constant": false,
1028
+ "id": 41804,
1029
+ "mutability": "mutable",
1030
+ "name": "delegator",
1031
+ "nameLocation": "2480:9:96",
1032
+ "nodeType": "VariableDeclaration",
1033
+ "scope": 41808,
1034
+ "src": "2472:17:96",
1035
+ "stateVariable": false,
1036
+ "storageLocation": "default",
1037
+ "typeDescriptions": {
1038
+ "typeIdentifier": "t_address",
1039
+ "typeString": "address"
1040
+ },
1041
+ "typeName": {
1042
+ "id": 41803,
1043
+ "name": "address",
1044
+ "nodeType": "ElementaryTypeName",
1045
+ "src": "2472:7:96",
1046
+ "stateMutability": "nonpayable",
1047
+ "typeDescriptions": {
1048
+ "typeIdentifier": "t_address",
1049
+ "typeString": "address"
1050
+ }
1051
+ },
1052
+ "visibility": "internal"
1053
+ },
1054
+ {
1055
+ "constant": false,
1056
+ "id": 41806,
1057
+ "mutability": "mutable",
1058
+ "name": "delegatee",
1059
+ "nameLocation": "2499:9:96",
1060
+ "nodeType": "VariableDeclaration",
1061
+ "scope": 41808,
1062
+ "src": "2491:17:96",
1063
+ "stateVariable": false,
1064
+ "storageLocation": "default",
1065
+ "typeDescriptions": {
1066
+ "typeIdentifier": "t_address",
1067
+ "typeString": "address"
1068
+ },
1069
+ "typeName": {
1070
+ "id": 41805,
1071
+ "name": "address",
1072
+ "nodeType": "ElementaryTypeName",
1073
+ "src": "2491:7:96",
1074
+ "stateMutability": "nonpayable",
1075
+ "typeDescriptions": {
1076
+ "typeIdentifier": "t_address",
1077
+ "typeString": "address"
1078
+ }
1079
+ },
1080
+ "visibility": "internal"
1081
+ }
1082
+ ],
1083
+ "src": "2471:38:96"
1084
+ }
1085
+ },
1086
+ {
1087
+ "id": 41811,
1088
+ "nodeType": "ErrorDefinition",
1089
+ "src": "2690:44:96",
1090
+ "nodes": [],
1091
+ "documentation": {
1092
+ "id": 41809,
1093
+ "nodeType": "StructuredDocumentation",
1094
+ "src": "2514:173:96",
1095
+ "text": " @notice Raised when trying to create an unlimited delegation in a context where it is not allowed,\n e.g. when registering a namespace fallback delegation."
1096
+ },
1097
+ "errorSelector": "71ee9e81",
1098
+ "name": "World_UnlimitedDelegationNotAllowed",
1099
+ "nameLocation": "2696:35:96",
1100
+ "parameters": {
1101
+ "id": 41810,
1102
+ "nodeType": "ParameterList",
1103
+ "parameters": [],
1104
+ "src": "2731:2:96"
1105
+ }
1106
+ },
1107
+ {
1108
+ "id": 41818,
1109
+ "nodeType": "ErrorDefinition",
1110
+ "src": "2914:65:96",
1111
+ "nodes": [],
1112
+ "documentation": {
1113
+ "id": 41812,
1114
+ "nodeType": "StructuredDocumentation",
1115
+ "src": "2738:173:96",
1116
+ "text": " @notice Raised when there's an insufficient balance for a particular operation.\n @param balance The current balance.\n @param amount The amount needed."
1117
+ },
1118
+ "errorSelector": "0e0e2d4d",
1119
+ "name": "World_InsufficientBalance",
1120
+ "nameLocation": "2920:25:96",
1121
+ "parameters": {
1122
+ "id": 41817,
1123
+ "nodeType": "ParameterList",
1124
+ "parameters": [
1125
+ {
1126
+ "constant": false,
1127
+ "id": 41814,
1128
+ "mutability": "mutable",
1129
+ "name": "balance",
1130
+ "nameLocation": "2954:7:96",
1131
+ "nodeType": "VariableDeclaration",
1132
+ "scope": 41818,
1133
+ "src": "2946:15:96",
1134
+ "stateVariable": false,
1135
+ "storageLocation": "default",
1136
+ "typeDescriptions": {
1137
+ "typeIdentifier": "t_uint256",
1138
+ "typeString": "uint256"
1139
+ },
1140
+ "typeName": {
1141
+ "id": 41813,
1142
+ "name": "uint256",
1143
+ "nodeType": "ElementaryTypeName",
1144
+ "src": "2946:7:96",
1145
+ "typeDescriptions": {
1146
+ "typeIdentifier": "t_uint256",
1147
+ "typeString": "uint256"
1148
+ }
1149
+ },
1150
+ "visibility": "internal"
1151
+ },
1152
+ {
1153
+ "constant": false,
1154
+ "id": 41816,
1155
+ "mutability": "mutable",
1156
+ "name": "amount",
1157
+ "nameLocation": "2971:6:96",
1158
+ "nodeType": "VariableDeclaration",
1159
+ "scope": 41818,
1160
+ "src": "2963:14:96",
1161
+ "stateVariable": false,
1162
+ "storageLocation": "default",
1163
+ "typeDescriptions": {
1164
+ "typeIdentifier": "t_uint256",
1165
+ "typeString": "uint256"
1166
+ },
1167
+ "typeName": {
1168
+ "id": 41815,
1169
+ "name": "uint256",
1170
+ "nodeType": "ElementaryTypeName",
1171
+ "src": "2963:7:96",
1172
+ "typeDescriptions": {
1173
+ "typeIdentifier": "t_uint256",
1174
+ "typeString": "uint256"
1175
+ }
1176
+ },
1177
+ "visibility": "internal"
1178
+ }
1179
+ ],
1180
+ "src": "2945:33:96"
1181
+ }
1182
+ },
1183
+ {
1184
+ "id": 41825,
1185
+ "nodeType": "ErrorDefinition",
1186
+ "src": "3196:79:96",
1187
+ "nodes": [],
1188
+ "documentation": {
1189
+ "id": 41819,
1190
+ "nodeType": "StructuredDocumentation",
1191
+ "src": "2983:210:96",
1192
+ "text": " @notice Raised when the specified interface is not supported by the contract.\n @param contractAddress The address of the contract in question.\n @param interfaceId The ID of the interface."
1193
+ },
1194
+ "errorSelector": "74b5e6ff",
1195
+ "name": "World_InterfaceNotSupported",
1196
+ "nameLocation": "3202:27:96",
1197
+ "parameters": {
1198
+ "id": 41824,
1199
+ "nodeType": "ParameterList",
1200
+ "parameters": [
1201
+ {
1202
+ "constant": false,
1203
+ "id": 41821,
1204
+ "mutability": "mutable",
1205
+ "name": "contractAddress",
1206
+ "nameLocation": "3238:15:96",
1207
+ "nodeType": "VariableDeclaration",
1208
+ "scope": 41825,
1209
+ "src": "3230:23:96",
1210
+ "stateVariable": false,
1211
+ "storageLocation": "default",
1212
+ "typeDescriptions": {
1213
+ "typeIdentifier": "t_address",
1214
+ "typeString": "address"
1215
+ },
1216
+ "typeName": {
1217
+ "id": 41820,
1218
+ "name": "address",
1219
+ "nodeType": "ElementaryTypeName",
1220
+ "src": "3230:7:96",
1221
+ "stateMutability": "nonpayable",
1222
+ "typeDescriptions": {
1223
+ "typeIdentifier": "t_address",
1224
+ "typeString": "address"
1225
+ }
1226
+ },
1227
+ "visibility": "internal"
1228
+ },
1229
+ {
1230
+ "constant": false,
1231
+ "id": 41823,
1232
+ "mutability": "mutable",
1233
+ "name": "interfaceId",
1234
+ "nameLocation": "3262:11:96",
1235
+ "nodeType": "VariableDeclaration",
1236
+ "scope": 41825,
1237
+ "src": "3255:18:96",
1238
+ "stateVariable": false,
1239
+ "storageLocation": "default",
1240
+ "typeDescriptions": {
1241
+ "typeIdentifier": "t_bytes4",
1242
+ "typeString": "bytes4"
1243
+ },
1244
+ "typeName": {
1245
+ "id": 41822,
1246
+ "name": "bytes4",
1247
+ "nodeType": "ElementaryTypeName",
1248
+ "src": "3255:6:96",
1249
+ "typeDescriptions": {
1250
+ "typeIdentifier": "t_bytes4",
1251
+ "typeString": "bytes4"
1252
+ }
1253
+ },
1254
+ "visibility": "internal"
1255
+ }
1256
+ ],
1257
+ "src": "3229:45:96"
1258
+ }
1259
+ },
1260
+ {
1261
+ "id": 41835,
1262
+ "nodeType": "ErrorDefinition",
1263
+ "src": "3525:97:96",
1264
+ "nodes": [],
1265
+ "documentation": {
1266
+ "id": 41826,
1267
+ "nodeType": "StructuredDocumentation",
1268
+ "src": "3279:243:96",
1269
+ "text": " @notice Raised when an invalid resource type is provided.\n @param expected The expected resource type.\n @param resourceId The ID of the resource.\n @param resourceIdString The string representation of the resource ID."
1270
+ },
1271
+ "errorSelector": "5c30fb6f",
1272
+ "name": "World_InvalidResourceType",
1273
+ "nameLocation": "3531:25:96",
1274
+ "parameters": {
1275
+ "id": 41834,
1276
+ "nodeType": "ParameterList",
1277
+ "parameters": [
1278
+ {
1279
+ "constant": false,
1280
+ "id": 41828,
1281
+ "mutability": "mutable",
1282
+ "name": "expected",
1283
+ "nameLocation": "3564:8:96",
1284
+ "nodeType": "VariableDeclaration",
1285
+ "scope": 41835,
1286
+ "src": "3557:15:96",
1287
+ "stateVariable": false,
1288
+ "storageLocation": "default",
1289
+ "typeDescriptions": {
1290
+ "typeIdentifier": "t_bytes2",
1291
+ "typeString": "bytes2"
1292
+ },
1293
+ "typeName": {
1294
+ "id": 41827,
1295
+ "name": "bytes2",
1296
+ "nodeType": "ElementaryTypeName",
1297
+ "src": "3557:6:96",
1298
+ "typeDescriptions": {
1299
+ "typeIdentifier": "t_bytes2",
1300
+ "typeString": "bytes2"
1301
+ }
1302
+ },
1303
+ "visibility": "internal"
1304
+ },
1305
+ {
1306
+ "constant": false,
1307
+ "id": 41831,
1308
+ "mutability": "mutable",
1309
+ "name": "resourceId",
1310
+ "nameLocation": "3585:10:96",
1311
+ "nodeType": "VariableDeclaration",
1312
+ "scope": 41835,
1313
+ "src": "3574:21:96",
1314
+ "stateVariable": false,
1315
+ "storageLocation": "default",
1316
+ "typeDescriptions": {
1317
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$29139",
1318
+ "typeString": "ResourceId"
1319
+ },
1320
+ "typeName": {
1321
+ "id": 41830,
1322
+ "nodeType": "UserDefinedTypeName",
1323
+ "pathNode": {
1324
+ "id": 41829,
1325
+ "name": "ResourceId",
1326
+ "nameLocations": [
1327
+ "3574:10:96"
1328
+ ],
1329
+ "nodeType": "IdentifierPath",
1330
+ "referencedDeclaration": 29139,
1331
+ "src": "3574:10:96"
1332
+ },
1333
+ "referencedDeclaration": 29139,
1334
+ "src": "3574:10:96",
1335
+ "typeDescriptions": {
1336
+ "typeIdentifier": "t_userDefinedValueType$_ResourceId_$29139",
1337
+ "typeString": "ResourceId"
1338
+ }
1339
+ },
1340
+ "visibility": "internal"
1341
+ },
1342
+ {
1343
+ "constant": false,
1344
+ "id": 41833,
1345
+ "mutability": "mutable",
1346
+ "name": "resourceIdString",
1347
+ "nameLocation": "3604:16:96",
1348
+ "nodeType": "VariableDeclaration",
1349
+ "scope": 41835,
1350
+ "src": "3597:23:96",
1351
+ "stateVariable": false,
1352
+ "storageLocation": "default",
1353
+ "typeDescriptions": {
1354
+ "typeIdentifier": "t_string_memory_ptr",
1355
+ "typeString": "string"
1356
+ },
1357
+ "typeName": {
1358
+ "id": 41832,
1359
+ "name": "string",
1360
+ "nodeType": "ElementaryTypeName",
1361
+ "src": "3597:6:96",
1362
+ "typeDescriptions": {
1363
+ "typeIdentifier": "t_string_storage_ptr",
1364
+ "typeString": "string"
1365
+ }
1366
+ },
1367
+ "visibility": "internal"
1368
+ }
1369
+ ],
1370
+ "src": "3556:65:96"
1371
+ }
1372
+ },
1373
+ {
1374
+ "id": 41840,
1375
+ "nodeType": "ErrorDefinition",
1376
+ "src": "3792:56:96",
1377
+ "nodes": [],
1378
+ "documentation": {
1379
+ "id": 41836,
1380
+ "nodeType": "StructuredDocumentation",
1381
+ "src": "3626:163:96",
1382
+ "text": " @notice Raised when the World is calling itself via an external call.\n @param functionSelector The function selector of the disallowed callback."
1383
+ },
1384
+ "errorSelector": "9e85182c",
1385
+ "name": "World_CallbackNotAllowed",
1386
+ "nameLocation": "3798:24:96",
1387
+ "parameters": {
1388
+ "id": 41839,
1389
+ "nodeType": "ParameterList",
1390
+ "parameters": [
1391
+ {
1392
+ "constant": false,
1393
+ "id": 41838,
1394
+ "mutability": "mutable",
1395
+ "name": "functionSelector",
1396
+ "nameLocation": "3830:16:96",
1397
+ "nodeType": "VariableDeclaration",
1398
+ "scope": 41840,
1399
+ "src": "3823:23:96",
1400
+ "stateVariable": false,
1401
+ "storageLocation": "default",
1402
+ "typeDescriptions": {
1403
+ "typeIdentifier": "t_bytes4",
1404
+ "typeString": "bytes4"
1405
+ },
1406
+ "typeName": {
1407
+ "id": 41837,
1408
+ "name": "bytes4",
1409
+ "nodeType": "ElementaryTypeName",
1410
+ "src": "3823:6:96",
1411
+ "typeDescriptions": {
1412
+ "typeIdentifier": "t_bytes4",
1413
+ "typeString": "bytes4"
1414
+ }
1415
+ },
1416
+ "visibility": "internal"
1417
+ }
1418
+ ],
1419
+ "src": "3822:25:96"
1420
+ }
1421
+ }
1422
+ ],
1423
+ "abstract": false,
1424
+ "baseContracts": [],
1425
+ "canonicalName": "IWorldErrors",
1426
+ "contractDependencies": [],
1427
+ "contractKind": "interface",
1428
+ "documentation": {
1429
+ "id": 41752,
1430
+ "nodeType": "StructuredDocumentation",
1431
+ "src": "127:215:96",
1432
+ "text": " @title World Errors Interface\n @dev This interface contains custom error types for the World contract. These errors provide\n more informative messages for certain operations within the World contract."
1433
+ },
1434
+ "fullyImplemented": true,
1435
+ "linearizedBaseContracts": [
1436
+ 41841
1437
+ ],
1438
+ "name": "IWorldErrors",
1439
+ "nameLocation": "353:12:96",
1440
+ "scope": 41842,
1441
+ "usedErrors": [
1442
+ 41755,
1443
+ 41763,
1444
+ 41771,
1445
+ 41778,
1446
+ 41786,
1447
+ 41791,
1448
+ 41796,
1449
+ 41801,
1450
+ 41808,
1451
+ 41811,
1452
+ 41818,
1453
+ 41825,
1454
+ 41835,
1455
+ 41840
1456
+ ],
1457
+ "usedEvents": []
1458
+ }
1459
+ ],
1460
+ "license": "MIT"
1461
+ },
1462
+ "id": 96
1463
+ }