[][src]Trait darling::usage::UsesLifetimes

pub trait UsesLifetimes {
    pub fn uses_lifetimes(
        &self,
        options: &Options,
        lifetimes: &'a HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
    ) -> HashSet<&'a Lifetime, BuildHasherDefault<FnvHasher>>; pub fn uses_lifetimes_cloned(
        &self,
        options: &Options,
        lifetimes: &HashSet<Lifetime, BuildHasherDefault<FnvHasher>>
    ) -> HashSet<Lifetime, BuildHasherDefault<FnvHasher>> { ... } }

Searcher for finding lifetimes in a syntax tree. This can be used to determine which lifetimes must be emitted in generated code.

Required methods

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

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.

Loading content...

Provided methods

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

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

Loading content...

Implementations on Foreign Types

impl UsesLifetimes for DataStruct[src]

impl UsesLifetimes for Fields[src]

impl UsesLifetimes for ParenthesizedGenericArguments[src]

impl UsesLifetimes for TypeParamBound[src]

impl UsesLifetimes for FieldsNamed[src]

impl UsesLifetimes for Data[src]

impl UsesLifetimes for TypeTraitObject[src]

impl UsesLifetimes for AngleBracketedGenericArguments[src]

impl<T> UsesLifetimes for Vec<T, Global> where
    T: UsesLifetimes
[src]

impl UsesLifetimes for TypeBareFn[src]

impl UsesLifetimes for TypeParen[src]

impl UsesLifetimes for DataUnion[src]

impl UsesLifetimes for TypeSlice[src]

impl UsesLifetimes for Constraint[src]

impl UsesLifetimes for PredicateEq[src]

impl UsesLifetimes for Path[src]

impl UsesLifetimes for ReturnType[src]

impl UsesLifetimes for TypeTuple[src]

impl UsesLifetimes for TypeReference[src]

impl<T, U> UsesLifetimes for Punctuated<T, U> where
    T: UsesLifetimes
[src]

impl UsesLifetimes for WherePredicate[src]

impl UsesLifetimes for Variant[src]

impl UsesLifetimes for BareFnArg[src]

impl UsesLifetimes for LifetimeDef[src]

impl UsesLifetimes for GenericArgument[src]

impl UsesLifetimes for BoundLifetimes[src]

impl UsesLifetimes for TraitBound[src]

impl UsesLifetimes for DataEnum[src]

impl UsesLifetimes for PredicateType[src]

impl UsesLifetimes for TypePtr[src]

impl UsesLifetimes for PredicateLifetime[src]

impl UsesLifetimes for Binding[src]

impl UsesLifetimes for PathSegment[src]

impl UsesLifetimes for QSelf[src]

impl UsesLifetimes for TypeGroup[src]

impl UsesLifetimes for TypePath[src]

impl UsesLifetimes for Type[src]

impl UsesLifetimes for TypeArray[src]

impl UsesLifetimes for Field[src]

impl UsesLifetimes for PathArguments[src]

impl UsesLifetimes for Lifetime[src]

impl<T> UsesLifetimes for Option<T> where
    T: UsesLifetimes
[src]

impl UsesLifetimes for TypeImplTrait[src]

Loading content...

Implementors

impl UsesLifetimes for Ignored[src]

impl<T> UsesLifetimes for darling::ast::Fields<T> where
    T: UsesLifetimes
[src]

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

Loading content...