Trait darling::usage::CollectTypeParams

source ·
pub trait CollectTypeParams {
    // Required methods
    fn collect_type_params<'a>(
        self,
        options: &Options,
        type_set: &'a HashSet<Ident, BuildHasherDefault<FnvHasher>>,
    ) -> HashSet<&'a Ident, BuildHasherDefault<FnvHasher>>;
    fn collect_type_params_cloned(
        self,
        options: &Options,
        type_set: &HashSet<Ident, BuildHasherDefault<FnvHasher>>,
    ) -> HashSet<Ident, BuildHasherDefault<FnvHasher>>;
}
Expand description

Searcher for finding type params in an iterator.

This trait extends iterators, providing a way to turn a filtered list of fields or variants into a set of type parameter idents.

Required Methods§

source

fn collect_type_params<'a>( self, options: &Options, type_set: &'a HashSet<Ident, BuildHasherDefault<FnvHasher>>, ) -> HashSet<&'a Ident, BuildHasherDefault<FnvHasher>>

Consume an iterator, accumulating all type parameters in the elements which occur in type_set.

source

fn collect_type_params_cloned( self, options: &Options, type_set: &HashSet<Ident, BuildHasherDefault<FnvHasher>>, ) -> HashSet<Ident, BuildHasherDefault<FnvHasher>>

Consume an iterator using collect_type_params, then clone all found type params and return that set.

Implementors§

source§

impl<'i, T, I> CollectTypeParams for T
where T: IntoIterator<Item = &'i I>, I: 'i + UsesTypeParams,