pub trait UsesLifetimes {
// Required method
fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime>,
) -> HashSet<&'a Lifetime>;
// Provided method
fn uses_lifetimes_cloned(
&self,
options: &Options,
lifetimes: &HashSet<Lifetime>,
) -> HashSet<Lifetime> { ... }
}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 HashSet<Lifetime>,
) -> HashSet<&'a Lifetime>
fn uses_lifetimes<'a>( &self, options: &Options, lifetimes: &'a HashSet<Lifetime>, ) -> HashSet<&'a Lifetime>
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§
Implementations on Foreign Types§
Source§impl UsesLifetimes for Fields
impl UsesLifetimes for Fields
Source§impl UsesLifetimes for Data
impl UsesLifetimes for Data
Source§impl UsesLifetimes for GenericParam
impl UsesLifetimes for GenericParam
Source§impl UsesLifetimes for TypeParamBound
impl UsesLifetimes for TypeParamBound
Source§impl UsesLifetimes for WherePredicate
impl UsesLifetimes for WherePredicate
Source§impl UsesLifetimes for GenericArgument
impl UsesLifetimes for GenericArgument
Source§impl UsesLifetimes for PathArguments
impl UsesLifetimes for PathArguments
Source§impl UsesLifetimes for ReturnType
impl UsesLifetimes for ReturnType
Source§impl UsesLifetimes for Type
impl UsesLifetimes for Type
Source§impl UsesLifetimes for Field
impl UsesLifetimes for Field
Source§impl UsesLifetimes for FieldsNamed
impl UsesLifetimes for FieldsNamed
Source§impl UsesLifetimes for Variant
impl UsesLifetimes for Variant
Source§impl UsesLifetimes for DataEnum
impl UsesLifetimes for DataEnum
Source§impl UsesLifetimes for DataStruct
impl UsesLifetimes for DataStruct
Source§impl UsesLifetimes for DataUnion
impl UsesLifetimes for DataUnion
Source§impl UsesLifetimes for BoundLifetimes
impl UsesLifetimes for BoundLifetimes
Source§impl UsesLifetimes for ConstParam
impl UsesLifetimes for ConstParam
Source§impl UsesLifetimes for LifetimeParam
impl UsesLifetimes for LifetimeParam
Source§impl UsesLifetimes for PredicateLifetime
impl UsesLifetimes for PredicateLifetime
Source§impl UsesLifetimes for PredicateType
impl UsesLifetimes for PredicateType
Source§impl UsesLifetimes for TraitBound
impl UsesLifetimes for TraitBound
Source§impl UsesLifetimes for TypeParam
impl UsesLifetimes for TypeParam
Source§impl UsesLifetimes for Lifetime
impl UsesLifetimes for Lifetime
Source§impl UsesLifetimes for AssocType
impl UsesLifetimes for AssocType
Source§impl UsesLifetimes for Constraint
impl UsesLifetimes for Constraint
Source§impl UsesLifetimes for Path
impl UsesLifetimes for Path
Source§impl UsesLifetimes for PathSegment
impl UsesLifetimes for PathSegment
Source§impl UsesLifetimes for QSelf
impl UsesLifetimes for QSelf
Source§impl UsesLifetimes for BareFnArg
impl UsesLifetimes for BareFnArg
Source§impl UsesLifetimes for TypeArray
impl UsesLifetimes for TypeArray
Source§impl UsesLifetimes for TypeBareFn
impl UsesLifetimes for TypeBareFn
Source§impl UsesLifetimes for TypeGroup
impl UsesLifetimes for TypeGroup
Source§impl UsesLifetimes for TypeImplTrait
impl UsesLifetimes for TypeImplTrait
Source§impl UsesLifetimes for TypeParen
impl UsesLifetimes for TypeParen
Source§impl UsesLifetimes for TypePath
impl UsesLifetimes for TypePath
Source§impl UsesLifetimes for TypePtr
impl UsesLifetimes for TypePtr
Source§impl UsesLifetimes for TypeReference
impl UsesLifetimes for TypeReference
Source§impl UsesLifetimes for TypeSlice
impl UsesLifetimes for TypeSlice
Source§impl UsesLifetimes for TypeTraitObject
impl UsesLifetimes for TypeTraitObject
Source§impl UsesLifetimes for TypeTuple
impl UsesLifetimes for TypeTuple
Source§impl<T> UsesLifetimes for Option<T>where
T: UsesLifetimes,
impl<T> UsesLifetimes for Option<T>where
T: UsesLifetimes,
Source§impl<T> UsesLifetimes for Vec<T>where
T: UsesLifetimes,
impl<T> UsesLifetimes for Vec<T>where
T: UsesLifetimes,
Source§impl<T, U> UsesLifetimes for Punctuated<T, U>where
T: UsesLifetimes,
impl<T, U> UsesLifetimes for Punctuated<T, U>where
T: UsesLifetimes,
Implementors§
impl UsesLifetimes for Ignored
impl<P, O> UsesLifetimes for WithOriginal<P, O>where
P: UsesLifetimes,
Get the lifetime usage of parsed.