[−][src]Struct syn::Path
A path at which a named item is exported: std::collections::HashMap.
This type is available if Syn is built with the "derive" or "full"
feature.
Fields
leading_colon: Option<Colon2>segments: Punctuated<PathSegment, Colon2>Methods
impl Path[src]
pub fn parse_mod_style(input: ParseStream) -> Result<Self>[src]
Parse a Path containing no path arguments on any of its segments.
This function is available if Syn is built with the "parsing"
feature.
Example
use syn::{Path, Result, Token};
use syn::parse::{Parse, ParseStream};
// A simplified single `use` statement like:
//
// use std::collections::HashMap;
//
// Note that generic parameters are not allowed in a `use` statement
// so the following must not be accepted.
//
// use a::<b>::c;
struct SingleUse {
use_token: Token![use],
path: Path,
}
impl Parse for SingleUse {
fn parse(input: ParseStream) -> Result<Self> {
Ok(SingleUse {
use_token: input.parse()?,
path: input.call(Path::parse_mod_style)?,
})
}
}
pub fn is_ident<I>(&self, ident: I) -> bool where
Ident: PartialEq<I>, [src]
Ident: PartialEq<I>,
Determines whether this is a path of length 1 equal to the given ident.
For them to compare equal, it must be the case that:
- the path has no leading colon,
- the number of path segments is 1,
- the first path segment has no angle bracketed or parenthesized path arguments
- and the ident of the first path segment is equal to the given one.
Trait Implementations
impl Parse for Path[src]
fn parse(input: ParseStream) -> Result<Self>[src]
impl<T> From<T> for Path where
T: Into<PathSegment>, [src]
T: Into<PathSegment>,
impl Eq for Path[src]
impl PartialEq<Path> for Path[src]
impl Clone for Path[src]
fn clone(&self) -> Path[src]
fn clone_from(&mut self, source: &Self)1.0.0[src]
Performs copy-assignment from source. Read more
impl Debug for Path[src]
impl Hash for Path[src]
fn hash<__H: Hasher>(&self, state: &mut __H)[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher, 1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher]. Read more
impl ToTokens for Path[src]
fn to_tokens(&self, tokens: &mut TokenStream)[src]
fn into_token_stream(self) -> TokenStream[src]
Convert self directly into a TokenStream object. Read more
Auto Trait Implementations
Blanket Implementations
impl<T> Spanned for T where
T: ToTokens, [src]
T: ToTokens,
impl<T> From for T[src]
impl<T, U> Into for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
impl<T, U> TryFrom for T where
T: From<U>, [src]
T: From<U>,
type Error = !
🔬 This is a nightly-only experimental API. (
try_from)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> Borrow for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized, [src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T[src]
impl<T, U> TryInto for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
🔬 This is a nightly-only experimental API. (
try_from)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,