diff --git a/README.md b/README.md index c61c621..e6ab2b4 100644 --- a/README.md +++ b/README.md @@ -166,7 +166,7 @@ Expresses the portion of Surplus Weight which has been refunded. Not used on XCM Of type `MaybeErrorCode`, initialized to `MaybeErrorCode::Success`. -Expresses the result of a [`Transact`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L482) instruction after the encoded call within has been dispatched. +Expresses the result of a [`Transact`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L502) instruction after the encoded call within has been dispatched. ### **3.11** Topic @@ -263,7 +263,7 @@ The instructions, in order, are: - The term _on-chain_ should be taken to mean "within the persistent state of the local consensus system", and should not be considered to limit the current consensus system to one which is specifically a blockchain system. - The type `Compact`, `Weight` and `QueryId` should be intended to mean a compact integer as per the SCALE definition. -### [`WithdrawAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L380) +### [`WithdrawAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L399) Withdraw asset(s) (`assets`) from the ownership of `origin` and place them into the Holding Register. @@ -279,7 +279,7 @@ Errors: - `FailedToTransactAsset` - `HoldingWouldOverflow` -### [`ReserveAssetDeposited `](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L393) +### [`ReserveAssetDeposited `](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L413) Asset(s) (`assets`) have been received into the ownership of this system on the `origin` system and equivalent derivatives should be placed into the Holding Register. @@ -296,7 +296,7 @@ Errors: - `UntrustedReserveLocation` - `HoldingWouldOverflow` -### [`ReceiveTeleportedAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L406) +### [`ReceiveTeleportedAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L427) Asset(s) (`assets`) have been destroyed on the `origin` system and equivalent assets should be created and placed into the Holding Register. @@ -316,7 +316,7 @@ Errors: - `NotWithdrawable` - `HoldingWouldOverflow` -### [`QueryResponse`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L426) +### [`QueryResponse`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L446) Respond with information that the local system is expecting. @@ -338,16 +338,16 @@ Errors: #### `Response` -The `Response` type is used to express information content in the [`QueryResponse`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L426) XCM instruction. It can represent one of several different data types and it therefore encoded as the SCALE-encoded tagged union: +The `Response` type is used to express information content in the [`QueryResponse`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L446) XCM instruction. It can represent one of several different data types and it therefore encoded as the SCALE-encoded tagged union: - `Null = 0`: No response. Serves as a neutral default. - `Assets = 1 (Assets)`: Some assets. - `ExecutionResult = 2 (Option<(u32, Error)>)`: The outcome of an XCM instruction. - `Version = 3 (u32)`: An XCM version. - `PalletsInfo = 4 (BoundedVec)`: The index, instance name, pallet name and version of some pallets. -- `DispatchResult = 5 (MaybeErrorCode)`: The status of a dispatch attempt using [`Transact`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L482). +- `DispatchResult = 5 (MaybeErrorCode)`: The status of a dispatch attempt using [`Transact`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L502). -### [`TransferAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L445) +### [`TransferAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L465) Withdraw asset(s) (`assets`) from the ownership of `origin` and place equivalent assets under the ownership of `beneficiary`. @@ -363,17 +363,17 @@ Errors: - `AssetNotFound` - `FailedToTransactAsset` -### [`TransferReserveAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L465) +### [`TransferReserveAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L485) Withdraw asset(s) (`assets`) from the ownership of `origin` and place equivalent assets under the ownership of `dest` within this consensus system (i.e. its sovereign account). -Send an onward XCM message to `destination` of [`ReserveAssetDeposited `](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L393) with the given `xcm`. +Send an onward XCM message to `destination` of [`ReserveAssetDeposited `](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L413) with the given `xcm`. Operands: - `assets: Asset`: The asset(s) to be withdrawn. - `destination: Location`: The location whose sovereign account will own the assets and thus the effective beneficiary for the assets and the notification target for the reserve asset deposit message. -- `xcm: Xcm`: The instructions that should follow the [`ReserveAssetDeposited `](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L393) instruction, which is sent onwards to `destination`. +- `xcm: Xcm`: The instructions that should follow the [`ReserveAssetDeposited `](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L413) instruction, which is sent onwards to `destination`. Kind: *Command*. @@ -389,7 +389,7 @@ Errors: - `Transport` -### [`Transact`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L482) +### [`Transact`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L502) Apply the encoded transaction `call`, whose dispatch-origin should be `origin` as expressed by the kind of origin `origin_kind`. @@ -412,7 +412,7 @@ Errors: Weight: Weight estimation may utilise `max_weight` which may lead to an increase in Surplus Weight Register at run-time. -### [`HrmpNewChannelOpenRequest`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L494) +### [`HrmpNewChannelOpenRequest`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L515) A message to notify about a new incoming HRMP channel. This message is meant to be sent by the Relay-chain to a para. @@ -426,7 +426,7 @@ Safety: The message should originate directly from the Relay-chain. Kind: *System Notification* -### [`HrmpChannelAccepted`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L512) +### [`HrmpChannelAccepted`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L533) A message to notify about that a previously sent open channel request has been accepted by the recipient. That means that the channel will be opened during the next Relay-chain session change. This message is meant to be sent by the Relay-chain to a para. @@ -440,7 +440,7 @@ Kind: *System Notification* Errors: -### [`HrmpChannelClosing`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L529) +### [`HrmpChannelClosing`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L550) A message to notify that the other party in an open channel decided to close it. In particular, `initiator` is going to close the channel opened from `sender` to the `recipient`. The close will be enacted at the next Relay-chain session change. This message is meant to be sent by the Relay-chain to a para. @@ -456,17 +456,17 @@ Kind: *System Notification* Errors: -### [`ClearOrigin`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L549) +### [`ClearOrigin`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L570) Clear the Origin Register. -This may be used by the XCM author to ensure that later instructions cannot command the authority of the Original Origin (e.g. if they are being relayed from an untrusted source, as often the case with [`ReserveAssetDeposited `](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L393)). +This may be used by the XCM author to ensure that later instructions cannot command the authority of the Original Origin (e.g. if they are being relayed from an untrusted source, as often the case with [`ReserveAssetDeposited `](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L413)). Kind: *Command*. Errors: *Infallible*. -### [`DescendOrigin`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L556) +### [`DescendOrigin`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L577) Mutate the origin to some interior location. @@ -480,11 +480,11 @@ Errors: - `BadOrigin` - `LocationFull` -### [`ReportError`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L567) +### [`ReportError`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L588) Immediately report the contents of the Error Register to the given destination via XCM. -A [`QueryResponse`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L426) message of type `ExecutionOutcome` is sent to `destination` with the given +A [`QueryResponse`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L446) message of type `ExecutionOutcome` is sent to `destination` with the given `query_id` and the outcome of the XCM. Operands: @@ -505,10 +505,10 @@ Errors: Information regarding the composition of a query response. QueryResponseInfo: - `destination: Location`: The destination to which the query response message should be send. -- `query_id: Compact`: The `query_id` field of the [`QueryResponse`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L426) message. -- `max_weight: Weight`: The `max_weight` field of the [`QueryResponse`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L426) message. +- `query_id: Compact`: The `query_id` field of the [`QueryResponse`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L446) message. +- `max_weight: Weight`: The `max_weight` field of the [`QueryResponse`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L446) message. -### [`DepositAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L578) +### [`DepositAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L599) Remove the asset(s) (`assets`) from the Holding Register and place equivalent assets under the ownership of `beneficiary` within this consensus system. @@ -523,17 +523,17 @@ Errors: - `AssetNotFound` - `FailedToTransactAsset` -### [`DepositReserveAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L596) +### [`DepositReserveAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L617) Remove the asset(s) (`assets`) from the Holding Register and place equivalent assets under the ownership of `dest` within this consensus system (i.e. deposit them into its sovereign account). -Send an onward XCM message to `dest` of [`ReserveAssetDeposited `](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L393) with the given `effects`. +Send an onward XCM message to `dest` of [`ReserveAssetDeposited `](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L413) with the given `effects`. Operands: - `assets: AssetFilter`: The asset(s) to remove from the Holding Register. - `dest: Location`: The location whose sovereign account will own the assets and thus the effective beneficiary for the assets and the notification target for the reserve asset deposit message. -- `xcm: Xcm`: The orders that should follow the [`ReserveAssetDeposited `](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L393) instruction which is sent onwards to `dest`. +- `xcm: Xcm`: The orders that should follow the [`ReserveAssetDeposited `](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L413) instruction which is sent onwards to `dest`. Kind: *Command* @@ -546,7 +546,7 @@ Errors: - `ExceedsMaxMessageSize` - `Transport` -### [`ExchangeAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L613) +### [`ExchangeAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L634) Remove the asset(s) (`want`) from the Holding Register and replace them with alternative assets. @@ -561,9 +561,9 @@ Kind: *Command* Errors: - `NoDeal` -### [`InitiateReserveWithdraw`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L629) +### [`InitiateReserveWithdraw`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L650) -Remove the asset(s) (`assets`) from holding and send a [`WithdrawAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L380) XCM message to a reserve location. +Remove the asset(s) (`assets`) from holding and send a [`WithdrawAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L399) XCM message to a reserve location. Operands: @@ -580,9 +580,9 @@ Errors: - `ExceedsMaxMessageSize` - `Transport` -### [`InitiateTeleport`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L645) +### [`InitiateTeleport`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L666) -Remove the asset(s) (`assets`) from the Holding Register and send an XCM message beginning with [`ReceiveTeleportedAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L406) to a `destination` location. +Remove the asset(s) (`assets`) from the Holding Register and send an XCM message beginning with [`ReceiveTeleportedAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L427) to a `destination` location. NOTE: The `destination` location *MUST* respect this origin as a valid teleportation origin for all `assets`. If it does not, then the assets may be lost. @@ -590,7 +590,7 @@ Operands: - `assets: AssetFilter`: The asset(s) to remove from the Holding Register. - `destination: Location`: A valid location that respects teleports coming from this location. -- `xcm`: The instructions to execute *on the destination location* following the [`ReceiveTeleportedAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L406) instruction. +- `xcm`: The instructions to execute *on the destination location* following the [`ReceiveTeleportedAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L427) instruction. Kind: *Command* @@ -604,9 +604,9 @@ Errors: - `Transport` -### [`ReportHolding`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L659) +### [`ReportHolding`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L680) -Report to a given destination the contents of the Holding Register. A [`QueryResponse`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L426) message of type `Assets` is sent to the described destination. +Report to a given destination the contents of the Holding Register. A [`QueryResponse`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L446) message of type `Assets` is sent to the described destination. Operands: - `response_info: QueryResponseInfo`: [Information](#QueryResponseInfo) for making the response. @@ -622,7 +622,7 @@ Errors: - `ExceedsMaxMessageSize` - `Transport` -### [`BuyExecution`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L672) +### [`BuyExecution`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L693) Pay for the execution of some XCM `xcm` and `orders` with up to `weight` picoseconds of execution time, paying for this with up to `fees` from the Holding Register. @@ -640,15 +640,15 @@ Errors: - `HoldingWouldOverflow` -### [`RefundSurplus`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L679) +### [`RefundSurplus`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L700) -Refund any surplus weight previously bought with [`BuyExecution`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L672). +Refund any surplus weight previously bought with [`BuyExecution`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L693). Kind: *Command* Errors: *Infallible*. -### [`SetErrorHandler`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L695) +### [`SetErrorHandler`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L716) Set the Error Handler Register. This is code that should be called in the case of an error happening. @@ -665,7 +665,7 @@ Kind: *Command* Errors: - `WeightNotComputable` -### [`SetAppendix`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L711) +### [`SetAppendix`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L732) Set the Appendix Register. This is code that should be called after code execution (including the error handler if any) is finished. This will be called regardless of whether an error occurred. @@ -682,7 +682,7 @@ Kind: *Command* Errors: - `WeightNotComputable` -### [`ClearError`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L718) +### [`ClearError`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L739) Clear the Error Register. @@ -690,7 +690,7 @@ Kind: *Command* Errors: *Infallible*. -### [`ClaimAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L730) +### [`ClaimAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L752) Create some assets which are being held on behalf of the origin. @@ -706,9 +706,9 @@ Errors: - `UnknownClaim` - `HoldingWouldOverflow` -### [`Trap`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L738) +### [`Trap`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L760) -Always throws an error of type [`Trap`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L738). +Always throws an error of type [`Trap`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L760). Operands: @@ -717,16 +717,16 @@ Operands: Kind: *Command* Errors: *Always*. -- [`Trap`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L738): All circumstances, whose inner value is the same as this item's inner value. +- [`Trap`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L760): All circumstances, whose inner value is the same as this item's inner value. -### [`SubscribeVersion`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L752) +### [`SubscribeVersion`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L774) -Ask the destination system to respond with the most recent version of XCM that they support in a [`QueryResponse`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L426) instruction. Any changes to this should also elicit similar responses when they happen. +Ask the destination system to respond with the most recent version of XCM that they support in a [`QueryResponse`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L446) instruction. Any changes to this should also elicit similar responses when they happen. Operands: - `query_id: Compact`: An identifier that will be replicated into the returned XCM message. -- `max_response_weight: Weight`: The maximum amount of weight that the [`QueryResponse`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L426) item which is sent as a reply may take to execute. +- `max_response_weight: Weight`: The maximum amount of weight that the [`QueryResponse`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L446) item which is sent as a reply may take to execute. NOTE: If this is unexpectedly large then the response may not execute at all. Kind: *Command* @@ -739,20 +739,20 @@ Errors: - `Transport` - `InvalidLocation` -### [`UnsubscribeVersion`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L763) +### [`UnsubscribeVersion`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L785) -Cancel the effect of a previous [`SubscribeVersion`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L752) instruction. +Cancel the effect of a previous [`SubscribeVersion`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L774) instruction. Kind: *Command* Errors: - `BadOrigin` -### [`BurnAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L774) +### [`BurnAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L796) Reduce Holding by up to the given assets. -Holding is reduced by as much as possible up to the assets in the parameter. It is not an error if the Holding does not contain the assets (to make this an error, use [`ExpectAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L782) prior). +Holding is reduced by as much as possible up to the assets in the parameter. It is not an error if the Holding does not contain the assets (to make this an error, use [`ExpectAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L804) prior). Operands: @@ -762,7 +762,7 @@ Kind: *Command* Errors: *Infallible* -### [`ExpectAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L782) +### [`ExpectAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L804) Throw an error if Holding does not contain at least the given assets. @@ -775,7 +775,7 @@ Kind: *Command* Errors: - `ExpectationFalse`: If Holding does not contain the assets in the parameter. -### [`ExpectOrigin`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L790) +### [`ExpectOrigin`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L812) Ensure that the Origin Register equals some given value and throw an error if not. @@ -788,7 +788,7 @@ Kind: *Command* Errors: - `ExpectationFalse`: If Origin is not some value, or if that value is not equal to the parameter. -### [`ExpectError`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L798) +### [`ExpectError`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L820) Ensure that the Error Register equals some given value and throw an error if not. @@ -801,7 +801,7 @@ Kind: *Command* Errors: - `ExpectationFalse`: If the value of the Error Register is not equal to the parameter. -### [`ExpectTransactStatus`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L807) +### [`ExpectTransactStatus`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L830) Ensure that the Transact Status Register equals some given value and throw an error if not. @@ -813,7 +813,7 @@ Kind: *Command* Errors: - `ExpectationFalse`: If the value of the Transact Status Register is not equal to the parameter. -### [`QueryPallet`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L823) +### [`QueryPallet`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L846) Queries the existence of a particular pallet type. @@ -821,7 +821,7 @@ Operands: - `module_name: Vec`: The module name of the pallet to query. - `response_info: QueryResponseInfo`: [Information](#QueryResponseInfo) for making the response. -Sends a [`QueryResponse`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L426) to Origin whose data field `PalletsInfo` containing the information of all pallets on the local chain whose name is equal to `name`. This is empty in the case that the local chain is not based on Substrate Frame. +Sends a [`QueryResponse`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L446) to Origin whose data field `PalletsInfo` containing the information of all pallets on the local chain whose name is equal to `name`. This is empty in the case that the local chain is not based on Substrate Frame. Kind: *Command* @@ -834,7 +834,7 @@ Errors: - `ExceedsMaxMessageSize` - `Transport` -### [`ExpectPallet`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L839) +### [`ExpectPallet`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L866) Ensure that a particular pallet with a particular version exists. Safety @@ -852,12 +852,12 @@ Errors: - `NameMismatch` - `VersionIncompatible` -### [`ReportTransactStatus`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L861) +### [`ReportTransactStatus`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L888) -Send a [`QueryResponse`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L426) message containing the value of the Transact Status Register to some destination. +Send a [`QueryResponse`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L446) message containing the value of the Transact Status Register to some destination. Operands: -- `query_response_info: QueryResponseInfo`: The [information](#QueryResponseInfo) needed for constructing and sending the [`QueryResponse`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L426) message. +- `query_response_info: QueryResponseInfo`: The [information](#QueryResponseInfo) needed for constructing and sending the [`QueryResponse`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L446) message. Kind: *Command* @@ -869,7 +869,7 @@ Errors: - `ExceedsMaxMessageSize` - `Transport` -### [`ClearTransactStatus`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L870) +### [`ClearTransactStatus`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L897) Set the Transact Status Register to its default, cleared, value. @@ -877,7 +877,7 @@ Kind: *Command* Errors: *Infallible*. -### [`UniversalOrigin`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L885) +### [`UniversalOrigin`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L912) Set the Origin Register to be some child of the Universal Ancestor. @@ -892,7 +892,7 @@ Error: - `BadOrigin` - `InvalidLocation` -### [`ExportMessage`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L906) +### [`ExportMessage`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L933) Send a message on to Non-Local Consensus system. @@ -918,17 +918,17 @@ Errors: - `AssetNotFound` - `FailedToTransactAsset` -### [`LockAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L922) +### [`LockAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L949) Lock the locally held asset and prevent further transfer or withdrawal. -This restriction may be removed by the [`UnlockAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L935) instruction being called with an Origin of `unlocker` and a `target` equal to the current `Origin`. +This restriction may be removed by the [`UnlockAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L962) instruction being called with an Origin of `unlocker` and a `target` equal to the current `Origin`. -If the locking is successful, then a [`NoteUnlockable`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L950) instruction is sent to `unlocker`. +If the locking is successful, then a [`NoteUnlockable`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L977) instruction is sent to `unlocker`. Operands: - `asset: Asset`: The asset(s) which should be locked. -- `unlocker: Location`: The value which the Origin must be for a corresponding [`UnlockAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L935) instruction to work. +- `unlocker: Location`: The value which the Origin must be for a corresponding [`UnlockAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L962) instruction to work. Kind: *Command* @@ -944,7 +944,7 @@ Errors: - `FailedToTransactAsset` - `LockError` -### [`UnlockAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L935) +### [`UnlockAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L962) Remove the lock over `asset` on this chain and (if nothing else is preventing it) allow the asset to be transferred. @@ -959,9 +959,9 @@ Errors: - `AssetNotFound` - `LockError` -### [`NoteUnlockable`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L950) +### [`NoteUnlockable`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L977) -Asset (`asset`) has been locked on the `origin` system and may not be transferred. It may only be unlocked with the receipt of the [`UnlockAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L935) instruction from this chain. +Asset (`asset`) has been locked on the `origin` system and may not be transferred. It may only be unlocked with the receipt of the [`UnlockAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L962) instruction from this chain. Operands: @@ -977,13 +977,13 @@ Errors: - `AssetNotFound` - `LockError` -### [`RequestUnlock`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L964) +### [`RequestUnlock`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L991) -Send an [`UnlockAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L935) instruction to the `locker` for the given `asset`. This may fail if the local system is making use of the fact that the asset is locked or, of course, if there is no record that the asset actually is locked. +Send an [`UnlockAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L962) instruction to the `locker` for the given `asset`. This may fail if the local system is making use of the fact that the asset is locked or, of course, if there is no record that the asset actually is locked. Operands: - `asset`: The asset(s) to be unlocked. -- `locker`: The location from which a previous [`NoteUnlockable`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L950) was sent and to which an [`UnlockAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L935) should be sent. +- `locker`: The location from which a previous [`NoteUnlockable`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L977) was sent and to which an [`UnlockAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L962) should be sent. Kind: *Command* @@ -999,7 +999,7 @@ Errors: - `FailedToTransactAsset` - `LockError` -### [`SetFeesMode`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L974) +### [`SetFeesMode`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L1001) Sets the Fees Mode Register. @@ -1009,7 +1009,7 @@ Kind: *Command*. Errors: *Infallible* -### [`SetTopic`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L983) +### [`SetTopic`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L1014) Set the Topic Register @@ -1017,7 +1017,7 @@ Kind: *Command* Errors: *Infallible* -### [`ClearTopic`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L990) +### [`ClearTopic`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L1021) Clear the Topic Register @@ -1025,7 +1025,7 @@ Kind: *Command* Errors: *Infallible* -### [`AliasOrigin`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L997) +### [`AliasOrigin`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L1028) Alter the current Origin to another given origin @@ -1035,7 +1035,7 @@ Operands: Errors: - `NoPermission` -### [`UnpaidExecution`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L1009) +### [`UnpaidExecution`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L1040) A directive to indicate that the origin expects free execution of the message. @@ -1283,22 +1283,22 @@ Within XCM it is necessary to communicate some problem encountered while executi - `DestinationUnsupported = 13`: The given message cannot be translated into a format supported by the destination. - `Transport = 14`: Destination is routable, but there is some issue with the transport mechanism. - `Unroutable = 15`: Destination is known to be unroutable. -- `UnknownClaim = 16`: Used by [`ClaimAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L730) when the given claim could not be recognized/found. -- `FailedToDecode = 17`: Used by [`Transact`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L482) when the functor cannot be decoded. -- `MaxWeightInvalid = 18`: Used by [`Transact`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L482) to indicate that the given weight limit could be reached by the functor. -- `NotHoldingFees = 19`: Used by [`BuyExecution`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L672) when the Holding Register does not contain payable fees. -- `TooExpensive = 20`: Used by [`BuyExecution`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L672) when the fees declared to purchase weight are insufficient. -- `Trap(u64) = 21`: Used by the [`Trap`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L738) instruction to force an error intentionally. Its code is included. -- `ExpectationFalse = 22`: Used by [`ExpectAsset`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L782), [`ExpectError`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L798) and [`ExpectOrigin`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L790) when the expectation was not true. -- `PalletNotFound = 23`: Used by ['ExpectPallet'](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L839) when the provided pallet index was not found. -- `NameMismatch = 24`: Used by ['ExpectPallet'](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L839) when the given pallet's name is different to that expected. -- `VersionIncompatible = 25`: Used by ['ExpectPallet'](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L839) when the given pallet's version has an incompatible version to that expected. +- `UnknownClaim = 16`: Used by [`ClaimAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L752) when the given claim could not be recognized/found. +- `FailedToDecode = 17`: Used by [`Transact`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L502) when the functor cannot be decoded. +- `MaxWeightInvalid = 18`: Used by [`Transact`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L502) to indicate that the given weight limit could be reached by the functor. +- `NotHoldingFees = 19`: Used by [`BuyExecution`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L693) when the Holding Register does not contain payable fees. +- `TooExpensive = 20`: Used by [`BuyExecution`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L693) when the fees declared to purchase weight are insufficient. +- `Trap(u64) = 21`: Used by the [`Trap`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L760) instruction to force an error intentionally. Its code is included. +- `ExpectationFalse = 22`: Used by [`ExpectAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L804), [`ExpectError`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L820) and [`ExpectOrigin`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L812) when the expectation was not true. +- `PalletNotFound = 23`: Used by [`ExpectPallet`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L866) when the provided pallet index was not found. +- `NameMismatch = 24`: Used by [`ExpectPallet`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L866) when the given pallet's name is different to that expected. +- `VersionIncompatible = 25`: Used by [`ExpectPallet`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L866) when the given pallet's version has an incompatible version to that expected. - `HoldingWouldOverflow = 26`: The given operation would lead to an overflow of the Holding Register. - `ExportError = 27`: The message was unable to be exported. - `ReanchorFailed = 28`: `Location` value failed to be reanchored. -- `NoDeal = 29`: Used by ['ExchangeAsset'](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L613) when no deal is possible under the given constraints. +- `NoDeal = 29`: Used by [`ExchangeAsset`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L634) when no deal is possible under the given constraints. - `FeesNotMet = 30`: Fees were required which the origin could not pay. - `LockError = 31`: Some other error with locking. -- `NoPermission = 32`: Used by [`Transact`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L482) when the state was not in a condition where the operation was valid to make. -- `Unanchored = 33`: Used by [`ExportMessage`](https://github.com/paritytech/polkadot/blob/962bc21352f5f80a580db5a28d05154ede4a9f86/xcm/src/v3/mod.rs#L906) when the universal location of the local consensus is improper. +- `NoPermission = 32`: Used by [`Transact`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L502) when the state was not in a condition where the operation was valid to make. +- `Unanchored = 33`: Used by [`ExportMessage`](https://github.com/paritytech/polkadot-sdk/blob/4aa29a41cf731b8181f03168240e8dedb2adfa7a/polkadot/xcm/src/v4/mod.rs#L933) when the universal location of the local consensus is improper. - `NotDepositable = 34`: An asset cannot be deposited, probably because (too much of) it already exists.