[−][src]Struct scale_info::Path
Represents the path of a type definition.
This consists of several segments that each have to be a valid Rust identifier. The first segment represents the crate name in which the type has been defined. The last
Rust prelude type may have an empty namespace definition.
Implementations
impl Path
[src]
pub fn new(ident: &'static str, module_path: &'static str) -> Path
[src]
pub fn from_segments<I>(segments: I) -> Result<Path, PathError> where
I: IntoIterator<Item = &'static str>,
[src]
I: IntoIterator<Item = &'static str>,
Create a Path from the given segments
Errors
- If no segments are supplied
- If any of the segments are invalid Rust identifiers
impl<T> Path<T> where
T: Form,
[src]
T: Form,
pub fn segments(&self) -> &[T::String]ⓘ
[src]
Returns the segments of the Path
pub fn is_empty(&self) -> bool
[src]
Returns true
if the path is empty
pub fn ident(&self) -> Option<T::String>
[src]
Get the ident segment of the Path
pub fn namespace(&self) -> &[T::String]ⓘ
[src]
Get the namespace segments of the Path
Trait Implementations
impl<T: Clone + Form> Clone for Path<T> where
T::String: Clone,
[src]
T::String: Clone,
impl<T: Debug + Form> Debug for Path<T> where
T::String: Debug,
[src]
T::String: Debug,
impl<T: Form> Decode for Path<T> where
Vec<T::String>: Decode,
Vec<T::String>: Decode,
[src]
Vec<T::String>: Decode,
Vec<T::String>: Decode,
fn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
[src]
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
impl<T> Default for Path<T> where
T: Form,
[src]
T: Form,
impl<'de, T: Form> Deserialize<'de> for Path<T> where
T::Type: DeserializeOwned,
T::String: DeserializeOwned,
[src]
T::Type: DeserializeOwned,
T::String: DeserializeOwned,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl<T: Form> Encode for Path<T> where
Vec<T::String>: Encode,
Vec<T::String>: Encode,
[src]
Vec<T::String>: Encode,
Vec<T::String>: Encode,
fn encode_to<__CodecOutputEdqy: Output>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
[src]
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
fn encode(&self) -> Vec<u8>ⓘ
[src]
fn using_encoded<R, F: FnOnce(&[u8]) -> R>(&self, f: F) -> R
[src]
fn size_hint(&self) -> usize
[src]
impl<T: Form> EncodeLike<Path<T>> for Path<T> where
Vec<T::String>: Encode,
Vec<T::String>: Encode,
[src]
Vec<T::String>: Encode,
Vec<T::String>: Encode,
impl<T: Eq + Form> Eq for Path<T> where
T::String: Eq,
[src]
T::String: Eq,
impl IntoCompact for Path
[src]
type Output = Path<CompactForm>
The compact version of Self
.
fn into_compact(self, registry: &mut Registry) -> Self::Output
[src]
impl<T: Ord + Form> Ord for Path<T> where
T::String: Ord,
[src]
T::String: Ord,
fn cmp(&self, other: &Path<T>) -> Ordering
[src]
#[must_use]fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]fn clamp(self, min: Self, max: Self) -> Self
[src]
impl<T: PartialEq + Form> PartialEq<Path<T>> for Path<T> where
T::String: PartialEq,
[src]
T::String: PartialEq,
impl<T: PartialOrd + Form> PartialOrd<Path<T>> for Path<T> where
T::String: PartialOrd,
[src]
T::String: PartialOrd,
fn partial_cmp(&self, other: &Path<T>) -> Option<Ordering>
[src]
fn lt(&self, other: &Path<T>) -> bool
[src]
fn le(&self, other: &Path<T>) -> bool
[src]
fn gt(&self, other: &Path<T>) -> bool
[src]
fn ge(&self, other: &Path<T>) -> bool
[src]
impl<T: Form> Serialize for Path<T> where
T::Type: Serialize,
T::String: Serialize,
[src]
T::Type: Serialize,
T::String: Serialize,
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl<T: Form> StructuralEq for Path<T>
[src]
impl<T: Form> StructuralPartialEq for Path<T>
[src]
Auto Trait Implementations
impl<T> RefUnwindSafe for Path<T> where
<T as Form>::String: RefUnwindSafe,
<T as Form>::String: RefUnwindSafe,
impl<T> Send for Path<T> where
<T as Form>::String: Send,
<T as Form>::String: Send,
impl<T> Sync for Path<T> where
<T as Form>::String: Sync,
<T as Form>::String: Sync,
impl<T> Unpin for Path<T> where
<T as Form>::String: Unpin,
<T as Form>::String: Unpin,
impl<T> UnwindSafe for Path<T> where
<T as Form>::String: UnwindSafe,
<T as Form>::String: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow(&self) -> &TⓘNotable traits for &'_ mut W
impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Unpin + Future + ?Sized, type Output = <F as Future>::Output;
[src]
Notable traits for &'_ mut W
impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Unpin + Future + ?Sized, type Output = <F as Future>::Output;
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut TⓘNotable traits for &'_ mut W
impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Unpin + Future + ?Sized, type Output = <F as Future>::Output;
[src]
Notable traits for &'_ mut W
impl<'_, W> Write for &'_ mut W where
W: Write + ?Sized, impl<'_, R> Read for &'_ mut R where
R: Read + ?Sized, impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<'_, F> Future for &'_ mut F where
F: Unpin + Future + ?Sized, type Output = <F as Future>::Output;
impl<S> Codec for S where
S: Encode + Decode,
[src]
S: Encode + Decode,
impl<T, X> Decode for X where
T: Decode + Into<X>,
X: WrapperTypeDecode<Wrapped = T>,
[src]
T: Decode + Into<X>,
X: WrapperTypeDecode<Wrapped = T>,
impl<T> DecodeAll for T where
T: Decode,
[src]
T: Decode,
impl<T> DecodeLimit for T where
T: Decode,
[src]
T: Decode,
fn decode_all_with_depth_limit(limit: u32, input: &[u8]) -> Result<T, Error>
[src]
fn decode_with_depth_limit(limit: u32, input: &[u8]) -> Result<T, Error>
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T, X> Encode for X where
T: Encode + ?Sized,
X: WrapperTypeEncode<Target = T>,
[src]
T: Encode + ?Sized,
X: WrapperTypeEncode<Target = T>,
fn size_hint(&self) -> usize
[src]
fn using_encoded<R, F>(&self, f: F) -> R where
F: FnOnce(&[u8]) -> R,
[src]
F: FnOnce(&[u8]) -> R,
fn encode(&self) -> Vec<u8>ⓘ
[src]
fn encode_to<W>(&self, dest: &mut W) where
W: Output,
[src]
W: Output,
impl<'_, '_, T> EncodeLike<&'_ &'_ T> for T where
T: Encode,
[src]
T: Encode,
impl<'_, T> EncodeLike<&'_ T> for T where
T: Encode,
[src]
T: Encode,
impl<'_, T> EncodeLike<&'_ mut T> for T where
T: Encode,
[src]
T: Encode,
impl<T> EncodeLike<Arc<T>> for T where
T: Encode,
[src]
T: Encode,
impl<T> EncodeLike<Box<T>> for T where
T: Encode,
[src]
T: Encode,
impl<'a, T> EncodeLike<Cow<'a, T>> for T where
T: Encode + ToOwned,
[src]
T: Encode + ToOwned,
impl<T> EncodeLike<Rc<T>> for T where
T: Encode,
[src]
T: Encode,
impl<T> From<T> for T
[src]
impl<S> FullCodec for S where
S: Decode + FullEncode,
[src]
S: Decode + FullEncode,
impl<S> FullEncode for S where
S: Encode + EncodeLike<S>,
[src]
S: Encode + EncodeLike<S>,
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> KeyedVec for T where
T: Codec,
[src]
T: Codec,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,