pub trait UsesTypeParams {
// Required method
fn uses_type_params<'a>(
&self,
options: &Options,
type_set: &'a HashSet<Ident>,
) -> HashSet<&'a Ident>;
// Provided method
fn uses_type_params_cloned(
&self,
options: &Options,
type_set: &HashSet<Ident>,
) -> HashSet<Ident> { ... }
}Expand description
Searcher for finding type params in a syntax tree. This can be used to determine if a given type parameter needs to be bounded in a generated impl.
Required Methods§
Sourcefn uses_type_params<'a>(
&self,
options: &Options,
type_set: &'a HashSet<Ident>,
) -> HashSet<&'a Ident>
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a HashSet<Ident>, ) -> HashSet<&'a Ident>
Returns the subset of the queried type parameters 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 UsesTypeParams for Fields
impl UsesTypeParams for Fields
Source§impl UsesTypeParams for Data
impl UsesTypeParams for Data
Source§impl UsesTypeParams for TypeParamBound
impl UsesTypeParams for TypeParamBound
Source§impl UsesTypeParams for WherePredicate
impl UsesTypeParams for WherePredicate
Source§impl UsesTypeParams for GenericArgument
impl UsesTypeParams for GenericArgument
Source§impl UsesTypeParams for PathArguments
impl UsesTypeParams for PathArguments
Source§impl UsesTypeParams for ReturnType
impl UsesTypeParams for ReturnType
Source§impl UsesTypeParams for Type
impl UsesTypeParams for Type
Source§impl UsesTypeParams for ()
impl UsesTypeParams for ()
Source§impl UsesTypeParams for Ident
Check if an Ident exactly matches one of the sought-after type parameters.
impl UsesTypeParams for Ident
Check if an Ident exactly matches one of the sought-after type parameters.
Source§impl UsesTypeParams for Field
impl UsesTypeParams for Field
Source§impl UsesTypeParams for FieldsNamed
impl UsesTypeParams for FieldsNamed
Source§impl UsesTypeParams for Variant
impl UsesTypeParams for Variant
Source§impl UsesTypeParams for DataEnum
impl UsesTypeParams for DataEnum
Source§impl UsesTypeParams for DataStruct
impl UsesTypeParams for DataStruct
Source§impl UsesTypeParams for DataUnion
impl UsesTypeParams for DataUnion
Source§impl UsesTypeParams for PredicateType
impl UsesTypeParams for PredicateType
Source§impl UsesTypeParams for TraitBound
impl UsesTypeParams for TraitBound
Source§impl UsesTypeParams for AssocType
impl UsesTypeParams for AssocType
Source§impl UsesTypeParams for Constraint
impl UsesTypeParams for Constraint
Source§impl UsesTypeParams for Path
impl UsesTypeParams for Path
Source§impl UsesTypeParams for QSelf
impl UsesTypeParams for QSelf
Source§impl UsesTypeParams for BareFnArg
impl UsesTypeParams for BareFnArg
Source§impl UsesTypeParams for TypeArray
impl UsesTypeParams for TypeArray
Source§impl UsesTypeParams for TypeBareFn
impl UsesTypeParams for TypeBareFn
Source§impl UsesTypeParams for TypeGroup
impl UsesTypeParams for TypeGroup
Source§impl UsesTypeParams for TypeImplTrait
impl UsesTypeParams for TypeImplTrait
Source§impl UsesTypeParams for TypeParen
impl UsesTypeParams for TypeParen
Source§impl UsesTypeParams for TypePath
impl UsesTypeParams for TypePath
Source§impl UsesTypeParams for TypePtr
impl UsesTypeParams for TypePtr
Source§impl UsesTypeParams for TypeReference
impl UsesTypeParams for TypeReference
Source§impl UsesTypeParams for TypeSlice
impl UsesTypeParams for TypeSlice
Source§impl UsesTypeParams for TypeTraitObject
impl UsesTypeParams for TypeTraitObject
Source§impl UsesTypeParams for TypeTuple
impl UsesTypeParams for TypeTuple
Source§impl<T> UsesTypeParams for Option<T>where
T: UsesTypeParams,
impl<T> UsesTypeParams for Option<T>where
T: UsesTypeParams,
Source§impl<T> UsesTypeParams for Vec<T>where
T: UsesTypeParams,
impl<T> UsesTypeParams for Vec<T>where
T: UsesTypeParams,
Source§impl<T, U> UsesTypeParams for Punctuated<T, U>where
T: UsesTypeParams,
impl<T, U> UsesTypeParams for Punctuated<T, U>where
T: UsesTypeParams,
Implementors§
impl UsesTypeParams for Ignored
impl<P, O> UsesTypeParams for WithOriginal<P, O>where
P: UsesTypeParams,
Get the type param usage of parsed.