pub struct MultiLocation {
pub parents: u8,
pub interior: Junctions,
}Expand description
A relative path between state-bearing consensus systems.
A location in a consensus system is defined as an isolatable state machine held within global consensus. The location in question need not have a sophisticated consensus algorithm of its own; a single account within Ethereum, for example, could be considered a location.
A very-much non-exhaustive list of types of location include:
- A (normal, layer-1) block chain, e.g. the Bitcoin mainnet or a parachain.
- A layer-0 super-chain, e.g. the Polkadot Relay chain.
- A layer-2 smart contract, e.g. an ERC-20 on Ethereum.
- A logical functional component of a chain, e.g. a single instance of a pallet on a Frame-based Substrate chain.
- An account.
A MultiLocation is a relative identifier, meaning that it can only be used to define the
relative path between two locations, and cannot generally be used to refer to a location
universally. It is comprised of an integer number of parents specifying the number of times to
โescapeโ upwards into the containing consensus system and then a number of junctions, each
diving down and specifying some interior portion of state (which may be considered a
โsub-consensusโ system).
This specific MultiLocation implementation uses a Junctions datatype which is a Rust enum
in order to make pattern matching easier. There are occasions where it is important to ensure
that a value is strictly an interior location, in those cases, Junctions may be used.
The MultiLocation value of Null simply refers to the interpreting consensus system.
Fieldsยง
ยงparents: u8The number of parent junctions at the beginning of this MultiLocation.
interior: JunctionsThe interior (i.e. non-parent) junctions that this MultiLocation contains.
Implementationsยง
Sourceยงimpl MultiLocation
impl MultiLocation
Sourcepub fn new(parents: u8, junctions: Junctions) -> MultiLocation
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn new(parents: u8, junctions: Junctions) -> MultiLocation
Creates a new MultiLocation with the given number of parents and interior junctions.
Sourcepub fn versioned(self) -> VersionedLocation
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn versioned(self) -> VersionedLocation
Consume self and return the equivalent VersionedLocation value.
Sourcepub const fn here() -> MultiLocation
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub const fn here() -> MultiLocation
Creates a new MultiLocation with 0 parents and a Here interior.
The resulting MultiLocation can be interpreted as the โcurrent consensus systemโ.
Sourcepub const fn parent() -> MultiLocation
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub const fn parent() -> MultiLocation
Creates a new MultiLocation which evaluates to the parent context.
Sourcepub const fn grandparent() -> MultiLocation
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub const fn grandparent() -> MultiLocation
Creates a new MultiLocation which evaluates to the grand parent context.
Sourcepub const fn ancestor(parents: u8) -> MultiLocation
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub const fn ancestor(parents: u8) -> MultiLocation
Creates a new MultiLocation with parents and an empty (Here) interior.
Sourcepub const fn is_here(&self) -> bool
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub const fn is_here(&self) -> bool
Whether the MultiLocation has no parents and has a Here interior.
Sourcepub fn interior(&self) -> &Junctions
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn interior(&self) -> &Junctions
Return a reference to the interior field.
Sourcepub fn interior_mut(&mut self) -> &mut Junctions
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn interior_mut(&mut self) -> &mut Junctions
Return a mutable reference to the interior field.
Sourcepub const fn parent_count(&self) -> u8
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub const fn parent_count(&self) -> u8
Returns the number of Parent junctions at the beginning of self.
Sourcepub const fn contains_parents_only(&self, count: u8) -> bool
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub const fn contains_parents_only(&self, count: u8) -> bool
Returns boolean indicating whether self contains only the specified amount of
parents and no interior junctions.
Sourcepub const fn len(&self) -> usize
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub const fn len(&self) -> usize
Returns the number of parents and junctions in self.
Sourcepub fn first_interior(&self) -> Option<&Junction>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn first_interior(&self) -> Option<&Junction>
Returns the first interior junction, or None if the location is empty or contains only
parents.
Sourcepub fn last(&self) -> Option<&Junction>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn last(&self) -> Option<&Junction>
Returns last junction, or None if the location is empty or contains only parents.
Sourcepub fn split_first_interior(self) -> (MultiLocation, Option<Junction>)
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn split_first_interior(self) -> (MultiLocation, Option<Junction>)
Splits off the first interior junction, returning the remaining suffix (first item in tuple)
and the first element (second item in tuple) or None if it was empty.
Sourcepub fn split_last_interior(self) -> (MultiLocation, Option<Junction>)
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn split_last_interior(self) -> (MultiLocation, Option<Junction>)
Splits off the last interior junction, returning the remaining prefix (first item in tuple)
and the last element (second item in tuple) or None if it was empty or if self only
contains parents.
Sourcepub fn push_interior(&mut self, new: Junction) -> Result<(), Junction>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn push_interior(&mut self, new: Junction) -> Result<(), Junction>
Mutates self, suffixing its interior junctions with new. Returns Err with new in
case of overflow.
Sourcepub fn push_front_interior(&mut self, new: Junction) -> Result<(), Junction>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn push_front_interior(&mut self, new: Junction) -> Result<(), Junction>
Mutates self, prefixing its interior junctions with new. Returns Err with new in
case of overflow.
Sourcepub fn pushed_with_interior(
self,
new: Junction,
) -> Result<Self, (Self, Junction)>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn pushed_with_interior( self, new: Junction, ) -> Result<Self, (Self, Junction)>
Consumes self and returns a MultiLocation suffixed with new, or an Err with
the original value of self in case of overflow.
Sourcepub fn pushed_front_with_interior(
self,
new: Junction,
) -> Result<Self, (Self, Junction)>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn pushed_front_with_interior( self, new: Junction, ) -> Result<Self, (Self, Junction)>
Consumes self and returns a MultiLocation prefixed with new, or an Err with the
original value of self in case of overflow.
Sourcepub fn at(&self, i: usize) -> Option<&Junction>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn at(&self, i: usize) -> Option<&Junction>
Returns the junction at index i, or None if the location is a parent or if the location
does not contain that many elements.
Sourcepub fn at_mut(&mut self, i: usize) -> Option<&mut Junction>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn at_mut(&mut self, i: usize) -> Option<&mut Junction>
Returns a mutable reference to the junction at index i, or None if the location is a
parent or if it doesnโt contain that many elements.
Sourcepub fn dec_parent(&mut self)
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn dec_parent(&mut self)
Decrements the parent count by 1.
Sourcepub fn take_first_interior(&mut self) -> Option<Junction>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn take_first_interior(&mut self) -> Option<Junction>
Removes the first interior junction from self, returning it
(or None if it was empty or if self contains only parents).
Sourcepub fn take_last(&mut self) -> Option<Junction>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn take_last(&mut self) -> Option<Junction>
Removes the last element from interior, returning it (or None if it was empty or if
self only contains parents).
Sourcepub fn match_and_split(&self, prefix: &MultiLocation) -> Option<&Junction>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn match_and_split(&self, prefix: &MultiLocation) -> Option<&Junction>
Ensures that self has the same number of parents as prefix, its junctions begins with
the junctions of prefix and that it has a single Junction item following.
If so, returns a reference to this Junction item.
ยงExample
let mut m = MultiLocation::new(1, [PalletInstance(3), OnlyChild].into());
assert_eq!(
m.match_and_split(&MultiLocation::new(1, [PalletInstance(3)].into())),
Some(&OnlyChild),
);
assert_eq!(m.match_and_split(&MultiLocation::new(1, Here)), None);Sourcepub fn starts_with(&self, prefix: &MultiLocation) -> bool
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn starts_with(&self, prefix: &MultiLocation) -> bool
Returns whether self has the same number of parents as prefix and its junctions begins
with the junctions of prefix.
ยงExample
let m = MultiLocation::new(1, [PalletInstance(3), OnlyChild, OnlyChild].into());
assert!(m.starts_with(&MultiLocation::new(1, [PalletInstance(3)].into())));
assert!(!m.starts_with(&MultiLocation::new(1, [GeneralIndex(99)].into())));
assert!(!m.starts_with(&MultiLocation::new(0, [PalletInstance(3)].into())));Sourcepub fn append_with(&mut self, suffix: Junctions) -> Result<(), Junctions>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn append_with(&mut self, suffix: Junctions) -> Result<(), Junctions>
Mutate self so that it is suffixed with suffix.
Does not modify self and returns Err with suffix in case of overflow.
ยงExample
let mut m = MultiLocation::new(1, [Parachain(21)].into());
assert_eq!(m.append_with([PalletInstance(3)].into()), Ok(()));
assert_eq!(m, MultiLocation::new(1, [Parachain(21), PalletInstance(3)].into()));Sourcepub fn prepend_with(
&mut self,
prefix: MultiLocation,
) -> Result<(), MultiLocation>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn prepend_with( &mut self, prefix: MultiLocation, ) -> Result<(), MultiLocation>
Mutate self so that it is prefixed with prefix.
Does not modify self and returns Err with prefix in case of overflow.
ยงExample
let mut m = MultiLocation::new(2, [PalletInstance(3)].into());
assert_eq!(m.prepend_with(MultiLocation::new(1, [Parachain(21), OnlyChild].into())), Ok(()));
assert_eq!(m, MultiLocation::new(1, [PalletInstance(3)].into()));Sourcepub fn reanchored(
self,
target: &MultiLocation,
ancestry: &MultiLocation,
) -> Result<Self, Self>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn reanchored( self, target: &MultiLocation, ancestry: &MultiLocation, ) -> Result<Self, Self>
Consume self and return the value representing the same location from the point of view
of target. The context of self is provided as ancestry.
Returns an Err with the unmodified self in the case of error.
Sourcepub fn reanchor(
&mut self,
target: &MultiLocation,
ancestry: &MultiLocation,
) -> Result<(), ()>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn reanchor( &mut self, target: &MultiLocation, ancestry: &MultiLocation, ) -> Result<(), ()>
Mutate self so that it represents the same location from the point of view of target.
The context of self is provided as ancestry.
Does not modify self in case of overflow.
Sourcepub fn inverted(&self, target: &MultiLocation) -> Result<MultiLocation, ()>
๐Deprecated: XCMv2 will be removed once XCMv5 is released. Please use XCMv3 or XCMv4 instead.
pub fn inverted(&self, target: &MultiLocation) -> Result<MultiLocation, ()>
Treating self as a context, determine how it would be referenced by a target location.
Trait Implementationsยง
Sourceยงimpl Clone for MultiLocation
impl Clone for MultiLocation
Sourceยงfn clone(&self) -> MultiLocation
fn clone(&self) -> MultiLocation
1.0.0 ยท Sourceยงfn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSourceยงimpl Debug for MultiLocation
impl Debug for MultiLocation
Sourceยงimpl Decode for MultiLocation
impl Decode for MultiLocation
Sourceยงfn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy,
) -> Result<Self, Error>
fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy, ) -> Result<Self, Error>
Sourceยงfn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>,
) -> Result<DecodeFinished, Error>where
I: Input,
fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>,
) -> Result<DecodeFinished, Error>where
I: Input,
Sourceยงimpl Default for MultiLocation
impl Default for MultiLocation
Sourceยงimpl<'de> Deserialize<'de> for MultiLocation
impl<'de> Deserialize<'de> for MultiLocation
Sourceยงfn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Sourceยงimpl Encode for MultiLocation
impl Encode for MultiLocation
Sourceยงfn size_hint(&self) -> usize
fn size_hint(&self) -> usize
Sourceยงfn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy,
)
fn encode_to<__CodecOutputEdqy: Output + ?Sized>( &self, __codec_dest_edqy: &mut __CodecOutputEdqy, )
Sourceยงfn using_encoded<R, F>(&self, f: F) -> R
fn using_encoded<R, F>(&self, f: F) -> R
Sourceยงfn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
Sourceยงimpl From<()> for MultiLocation
impl From<()> for MultiLocation
Sourceยงimpl From<(Ancestor, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Ancestor, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Ancestor, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Ancestor, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Ancestor, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Ancestor, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Junction,)> for MultiLocation
impl From<(Junction,)> for MultiLocation
Sourceยงimpl From<(Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junctions)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junctions)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junctions)> for MultiLocation
impl From<(Parent, Parent, Parent, Parent, Parent, Parent, Parent, Parent, Junctions)> for MultiLocation
Sourceยงimpl From<(u8,)> for MultiLocation
impl From<(u8,)> for MultiLocation
Sourceยงimpl From<(u8, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(u8, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(u8, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(u8, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<(u8, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
impl From<(u8, Junction, Junction, Junction, Junction, Junction, Junction, Junction, Junction)> for MultiLocation
Sourceยงimpl From<Ancestor> for MultiLocation
impl From<Ancestor> for MultiLocation
Sourceยงimpl<Interior: Into<Junctions>> From<AncestorThen<Interior>> for MultiLocation
impl<Interior: Into<Junctions>> From<AncestorThen<Interior>> for MultiLocation
Sourceยงfn from(AncestorThen: AncestorThen<Interior>) -> Self
fn from(AncestorThen: AncestorThen<Interior>) -> Self
Sourceยงimpl From<Junction> for MultiLocation
impl From<Junction> for MultiLocation
Sourceยงimpl From<Junctions> for MultiLocation
impl From<Junctions> for MultiLocation
Sourceยงimpl From<MultiLocation> for VersionedLocation
impl From<MultiLocation> for VersionedLocation
Sourceยงfn from(x: MultiLocation) -> Self
fn from(x: MultiLocation) -> Self
Sourceยงimpl From<Parent> for MultiLocation
impl From<Parent> for MultiLocation
Sourceยงimpl From<ParentThen> for MultiLocation
impl From<ParentThen> for MultiLocation
Sourceยงfn from(ParentThen: ParentThen) -> Self
fn from(ParentThen: ParentThen) -> Self
Sourceยงimpl MaxEncodedLen for MultiLocation
impl MaxEncodedLen for MultiLocation
Sourceยงfn max_encoded_len() -> usize
fn max_encoded_len() -> usize
Sourceยงimpl Ord for MultiLocation
impl Ord for MultiLocation
Sourceยงfn cmp(&self, other: &MultiLocation) -> Ordering
fn cmp(&self, other: &MultiLocation) -> Ordering
1.21.0 ยท Sourceยงfn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Sourceยงimpl PartialEq for MultiLocation
impl PartialEq for MultiLocation
Sourceยงimpl PartialOrd for MultiLocation
impl PartialOrd for MultiLocation
Sourceยงimpl Serialize for MultiLocation
impl Serialize for MultiLocation
Sourceยงimpl TryAs<MultiLocation> for VersionedLocation
impl TryAs<MultiLocation> for VersionedLocation
Sourceยงimpl TryFrom<MultiLocation> for Junctions
impl TryFrom<MultiLocation> for Junctions
Sourceยงimpl TryFrom<MultiLocation> for MultiLocation
impl TryFrom<MultiLocation> for MultiLocation
Sourceยงimpl TryFrom<MultiLocation> for MultiLocation
impl TryFrom<MultiLocation> for MultiLocation
Sourceยงimpl TryFrom<VersionedLocation> for MultiLocation
impl TryFrom<VersionedLocation> for MultiLocation
Sourceยงimpl TypeInfo for MultiLocation
impl TypeInfo for MultiLocation
impl EncodeLike for MultiLocation
impl Eq for MultiLocation
impl StructuralPartialEq for MultiLocation
Auto Trait Implementationsยง
impl Freeze for MultiLocation
impl RefUnwindSafe for MultiLocation
impl Send for MultiLocation
impl Sync for MultiLocation
impl Unpin for MultiLocation
impl UnwindSafe for MultiLocation
Blanket Implementationsยง
Sourceยงimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Sourceยงfn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Sourceยงimpl<T> CheckedConversion for T
impl<T> CheckedConversion for T
Sourceยงimpl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Sourceยงimpl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere
T: Decode,
Sourceยงimpl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Sourceยงfn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Sourceยงimpl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Sourceยงimpl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Sourceยงimpl<T> FmtForward for T
impl<T> FmtForward for T
Sourceยงfn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.Sourceยงfn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.Sourceยงfn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.Sourceยงfn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.Sourceยงfn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.Sourceยงfn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.Sourceยงfn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.Sourceยงfn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.Sourceยงimpl<T> Instrument for T
impl<T> Instrument for T
Sourceยงfn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Sourceยงfn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Sourceยงimpl<T> IntoEither for T
impl<T> IntoEither for T
Sourceยงfn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSourceยงfn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSourceยงimpl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
Sourceยงimpl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Sourceยงfn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Sourceยงfn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSourceยงfn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSourceยงfn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Sourceยงfn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Sourceยงfn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Sourceยงfn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Sourceยงfn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.Sourceยงimpl<T> Pointable for T
impl<T> Pointable for T
Sourceยงimpl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
Sourceยงfn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
Sourceยงfn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
T. Read moreSourceยงimpl<T> Tap for T
impl<T> Tap for T
Sourceยงfn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSourceยงfn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSourceยงfn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSourceยงfn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSourceยงfn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSourceยงfn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSourceยงfn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Sourceยงfn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Sourceยงfn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Sourceยงfn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Sourceยงfn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Sourceยงfn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Sourceยงfn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.Sourceยงimpl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
Sourceยงfn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from.Sourceยงimpl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
Sourceยงfn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T.