pub trait UsesLifetimes {
// Required method
fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a LifetimeSet,
) -> LifetimeRefSet<'a>;
// Provided method
fn uses_lifetimes_cloned(
&self,
options: &Options,
lifetimes: &LifetimeSet,
) -> LifetimeSet { ... }
}Expand description
Searcher for finding lifetimes in a syntax tree. This can be used to determine which lifetimes must be emitted in generated code.
Required Methods§
Sourcefn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a LifetimeSet,
) -> LifetimeRefSet<'a>
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Returns the subset of the queried lifetimes that are used by the implementing syntax element.
This method only accounts for direct usage by the element; indirect usage via bounds or where
predicates are not detected.
Provided Methods§
Sourcefn uses_lifetimes_cloned(
&self,
options: &Options,
lifetimes: &LifetimeSet,
) -> LifetimeSet
fn uses_lifetimes_cloned( &self, options: &Options, lifetimes: &LifetimeSet, ) -> LifetimeSet
Find all used lifetimes, then clone them and return that set.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl UsesLifetimes for AngleBracketedGenericArguments
impl UsesLifetimes for AngleBracketedGenericArguments
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for AssocType
impl UsesLifetimes for AssocType
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for BareFnArg
impl UsesLifetimes for BareFnArg
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for BoundLifetimes
impl UsesLifetimes for BoundLifetimes
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for ConstParam
impl UsesLifetimes for ConstParam
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for Constraint
impl UsesLifetimes for Constraint
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for Data
impl UsesLifetimes for Data
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl UsesLifetimes for DataEnum
impl UsesLifetimes for DataEnum
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for DataStruct
impl UsesLifetimes for DataStruct
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for DataUnion
impl UsesLifetimes for DataUnion
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for Field
impl UsesLifetimes for Field
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for Fields
impl UsesLifetimes for Fields
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl UsesLifetimes for FieldsNamed
impl UsesLifetimes for FieldsNamed
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for GenericArgument
impl UsesLifetimes for GenericArgument
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl UsesLifetimes for GenericParam
impl UsesLifetimes for GenericParam
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl UsesLifetimes for Lifetime
impl UsesLifetimes for Lifetime
fn uses_lifetimes<'a>( &self, _: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl UsesLifetimes for LifetimeParam
impl UsesLifetimes for LifetimeParam
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for ParenthesizedGenericArguments
impl UsesLifetimes for ParenthesizedGenericArguments
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for Path
impl UsesLifetimes for Path
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for PathArguments
impl UsesLifetimes for PathArguments
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl UsesLifetimes for PathSegment
impl UsesLifetimes for PathSegment
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for PredicateLifetime
impl UsesLifetimes for PredicateLifetime
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for PredicateType
impl UsesLifetimes for PredicateType
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for QSelf
impl UsesLifetimes for QSelf
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for ReturnType
impl UsesLifetimes for ReturnType
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl UsesLifetimes for TraitBound
impl UsesLifetimes for TraitBound
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for Type
impl UsesLifetimes for Type
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl UsesLifetimes for TypeArray
impl UsesLifetimes for TypeArray
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for TypeBareFn
impl UsesLifetimes for TypeBareFn
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for TypeGroup
impl UsesLifetimes for TypeGroup
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for TypeImplTrait
impl UsesLifetimes for TypeImplTrait
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for TypeParam
impl UsesLifetimes for TypeParam
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for TypeParamBound
impl UsesLifetimes for TypeParamBound
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl UsesLifetimes for TypeParen
impl UsesLifetimes for TypeParen
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for TypePath
impl UsesLifetimes for TypePath
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl UsesLifetimes for TypePtr
impl UsesLifetimes for TypePtr
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for TypeReference
impl UsesLifetimes for TypeReference
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for TypeSlice
impl UsesLifetimes for TypeSlice
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for TypeTraitObject
impl UsesLifetimes for TypeTraitObject
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for TypeTuple
impl UsesLifetimes for TypeTuple
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for Variant
impl UsesLifetimes for Variant
fn uses_lifetimes<'gen>( &self, options: &Options, type_set: &'gen LifetimeSet, ) -> LifetimeRefSet<'gen>
Source§impl UsesLifetimes for WherePredicate
impl UsesLifetimes for WherePredicate
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl<T: UsesLifetimes, U> UsesLifetimes for Punctuated<T, U>
impl<T: UsesLifetimes, U> UsesLifetimes for Punctuated<T, U>
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl<T: UsesLifetimes> UsesLifetimes for Option<T>
impl<T: UsesLifetimes> UsesLifetimes for Option<T>
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Source§impl<T: UsesLifetimes> UsesLifetimes for Vec<T>
impl<T: UsesLifetimes> UsesLifetimes for Vec<T>
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a LifetimeSet, ) -> LifetimeRefSet<'a>
Implementors§
impl UsesLifetimes for Ignored
impl<P: UsesLifetimes, O> UsesLifetimes for WithOriginal<P, O>
Get the lifetime usage of parsed.