Trait darling_core::usage::UsesTypeParams
source · pub trait UsesTypeParams {
// Required method
fn uses_type_params<'a>(
&self,
options: &Options,
type_set: &'a IdentSet
) -> IdentRefSet<'a>;
// Provided method
fn uses_type_params_cloned(
&self,
options: &Options,
type_set: &IdentSet
) -> IdentSet { ... }
}
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 IdentSet
) -> IdentRefSet<'a>
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a IdentSet ) -> IdentRefSet<'a>
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§
sourcefn uses_type_params_cloned(
&self,
options: &Options,
type_set: &IdentSet
) -> IdentSet
fn uses_type_params_cloned( &self, options: &Options, type_set: &IdentSet ) -> IdentSet
Find all type params using uses_type_params
, then clone the found values and return the set.
Implementations on Foreign Types§
source§impl UsesTypeParams for FieldsNamed
impl UsesTypeParams for FieldsNamed
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for TypeArray
impl UsesTypeParams for TypeArray
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for TypePtr
impl UsesTypeParams for TypePtr
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for TypeGroup
impl UsesTypeParams for TypeGroup
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for ParenthesizedGenericArguments
impl UsesTypeParams for ParenthesizedGenericArguments
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for PathArguments
impl UsesTypeParams for PathArguments
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a IdentSet ) -> IdentRefSet<'a>
source§impl UsesTypeParams for Variant
impl UsesTypeParams for Variant
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for GenericArgument
impl UsesTypeParams for GenericArgument
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a IdentSet ) -> IdentRefSet<'a>
source§impl UsesTypeParams for Data
impl UsesTypeParams for Data
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a IdentSet ) -> IdentRefSet<'a>
source§impl UsesTypeParams for QSelf
impl UsesTypeParams for QSelf
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for DataStruct
impl UsesTypeParams for DataStruct
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for TypeReference
impl UsesTypeParams for TypeReference
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for ()
impl UsesTypeParams for ()
fn uses_type_params<'a>( &self, _options: &Options, _type_set: &'a IdentSet ) -> IdentRefSet<'a>
source§impl UsesTypeParams for PredicateEq
impl UsesTypeParams for PredicateEq
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for PredicateType
impl UsesTypeParams for PredicateType
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for ReturnType
impl UsesTypeParams for ReturnType
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a IdentSet ) -> IdentRefSet<'a>
source§impl UsesTypeParams for TypeParen
impl UsesTypeParams for TypeParen
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for TraitBound
impl UsesTypeParams for TraitBound
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl<T: UsesTypeParams> UsesTypeParams for Option<T>
impl<T: UsesTypeParams> UsesTypeParams for Option<T>
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a IdentSet ) -> IdentRefSet<'a>
source§impl UsesTypeParams for TypeTuple
impl UsesTypeParams for TypeTuple
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl<T: UsesTypeParams> UsesTypeParams for Vec<T>
impl<T: UsesTypeParams> UsesTypeParams for Vec<T>
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a IdentSet ) -> IdentRefSet<'a>
source§impl<T: UsesTypeParams, U> UsesTypeParams for Punctuated<T, U>
impl<T: UsesTypeParams, U> UsesTypeParams for Punctuated<T, U>
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a IdentSet ) -> IdentRefSet<'a>
source§impl UsesTypeParams for TypePath
impl UsesTypeParams for TypePath
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a IdentSet ) -> IdentRefSet<'a>
source§impl UsesTypeParams for TypeSlice
impl UsesTypeParams for TypeSlice
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for TypeTraitObject
impl UsesTypeParams for TypeTraitObject
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for Field
impl UsesTypeParams for Field
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for TypeBareFn
impl UsesTypeParams for TypeBareFn
fn uses_type_params<'gen>( &self, options: &Options, type_set: &'gen IdentSet ) -> IdentRefSet<'gen>
source§impl UsesTypeParams for TypeParamBound
impl UsesTypeParams for TypeParamBound
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a IdentSet ) -> IdentRefSet<'a>
source§impl UsesTypeParams for WherePredicate
impl UsesTypeParams for WherePredicate
fn uses_type_params<'a>( &self, options: &Options, type_set: &'a IdentSet ) -> IdentRefSet<'a>
source§impl UsesTypeParams for Ident
impl UsesTypeParams for Ident
Check if an Ident exactly matches one of the sought-after type parameters.