pub trait UsesLifetimes {
    // Required method
    fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>; // Provided method fn uses_lifetimes_cloned(
&self,
options: &Options,
lifetimes: &HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<Lifetime, BuildHasherDefault<FnvHasher>> { ... } }
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§

source

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

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§

source

fn uses_lifetimes_cloned(
&self,
options: &Options,
lifetimes: &HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<Lifetime, BuildHasherDefault<FnvHasher>>

Find all used lifetimes, then clone them and return that set.

Implementations on Foreign Types§

source§

impl UsesLifetimes for DataUnion

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for PathArguments

source§

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for GenericArgument

source§

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for BoundLifetimes

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for Path

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl<T> UsesLifetimes for Option<T>where
T: UsesLifetimes,

source§

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TypeTuple

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for PredicateEq

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TypeImplTrait

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for Fields

source§

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for LifetimeDef

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TypeSlice

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for Binding

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for PredicateLifetime

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TypeParamBound

source§

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl<T, U> UsesLifetimes for Punctuated<T, U>where
T: UsesLifetimes,

source§

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for Data

source§

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TraitBound

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TypePath

source§

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for QSelf

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for PathSegment

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TypeParen

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl<T> UsesLifetimes for Vec<T, Global>where
T: UsesLifetimes,

source§

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TypeReference

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for BareFnArg

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for Lifetime

source§

fn uses_lifetimes<'a>(
&self,
_: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for AngleBracketedGenericArguments

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for Field

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for ReturnType

source§

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TypeTraitObject

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for FieldsNamed

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for Variant

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for WherePredicate

source§

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TypeGroup

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TypePtr

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for DataEnum

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for DataStruct

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for Type

source§

fn uses_lifetimes<'a>(
&self,
options: &Options,
lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for Constraint

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TypeBareFn

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for TypeArray

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for PredicateType

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

source§

impl UsesLifetimes for ParenthesizedGenericArguments

source§

fn uses_lifetimes<'gen>(
&self,
options: &Options,
type_set: &'gen HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
) -> HashSet<&'gen Lifetime, BuildHasherDefault<FnvHasher>>

Implementors§

source§

impl UsesLifetimes for Ignored

source§

impl<T> UsesLifetimes for darling::ast::Fields<T>where
T: UsesLifetimes,

source§

impl<V, F> UsesLifetimes for darling::ast::Data<V, F>where
V: UsesLifetimes,
F: UsesLifetimes,