pub struct GenericArgs {
pub args: Box<[GenericArg]>,
pub has_self_type: bool,
pub bindings: Box<[AssociatedTypeBinding]>,
pub parenthesized: GenericArgsParentheses,
}Expand description
Generic arguments to a path segment (e.g. the i32 in Option<i32>). This
also includes bindings of associated types, like in Iterator<Item = Foo>.
Fields§
§args: Box<[GenericArg]>§has_self_type: boolThis specifies whether the args contain a Self type as the first
element. This is the case for path segments like <T as Trait>, where
T is actually a type parameter for the path Trait specifying the
Self type. Otherwise, when we have a path Trait<X, Y>, the Self type
is left out.
bindings: Box<[AssociatedTypeBinding]>Associated type bindings like in Iterator<Item = T>.
parenthesized: GenericArgsParenthesesWhether these generic args were written with parentheses and how.
Trait Implementations§
Source§impl Clone for GenericArgs
impl Clone for GenericArgs
Source§fn clone(&self) -> GenericArgs
fn clone(&self) -> GenericArgs
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for GenericArgs
impl Debug for GenericArgs
Source§impl Hash for GenericArgs
impl Hash for GenericArgs
Source§impl PartialEq for GenericArgs
impl PartialEq for GenericArgs
impl Eq for GenericArgs
impl StructuralPartialEq for GenericArgs
Auto Trait Implementations§
impl Freeze for GenericArgs
impl RefUnwindSafe for GenericArgs
impl Send for GenericArgs
impl Sync for GenericArgs
impl Unpin for GenericArgs
impl UnwindSafe for GenericArgs
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
Converts
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>
Converts
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 more