Struct rustc_lint::builtin::TypeAliasBounds
source · pub struct TypeAliasBounds;
Expand description
Lint for trait and lifetime bounds in type aliases being mostly ignored. They are relevant when using associated types, but otherwise neither checked at definition site nor enforced at use site.
Implementations§
source§impl TypeAliasBounds
impl TypeAliasBounds
fn is_type_variable_assoc(qpath: &QPath<'_>) -> bool
fn suggest_changing_assoc_types(ty: &Ty<'_>, err: &mut Diagnostic)
Trait Implementations§
source§impl Clone for TypeAliasBounds
impl Clone for TypeAliasBounds
source§fn clone(&self) -> TypeAliasBounds
fn clone(&self) -> TypeAliasBounds
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<'tcx> LateLintPass<'tcx> for TypeAliasBounds
impl<'tcx> LateLintPass<'tcx> for TypeAliasBounds
fn check_item(&mut self, cx: &LateContext<'_>, item: &Item<'_>)
fn check_body(&mut self, _: &LateContext<'tcx>, _: &'tcx Body<'tcx>)
fn check_body_post(&mut self, _: &LateContext<'tcx>, _: &'tcx Body<'tcx>)
fn check_crate(&mut self, _: &LateContext<'tcx>)
fn check_crate_post(&mut self, _: &LateContext<'tcx>)
fn check_mod(&mut self, _: &LateContext<'tcx>, _: &'tcx Mod<'tcx>, _: HirId)
fn check_foreign_item(
&mut self,
_: &LateContext<'tcx>,
_: &'tcx ForeignItem<'tcx>
)
fn check_item_post(&mut self, _: &LateContext<'tcx>, _: &'tcx Item<'tcx>)
fn check_local(&mut self, _: &LateContext<'tcx>, _: &'tcx Local<'tcx>)
fn check_block(&mut self, _: &LateContext<'tcx>, _: &'tcx Block<'tcx>)
fn check_block_post(&mut self, _: &LateContext<'tcx>, _: &'tcx Block<'tcx>)
fn check_stmt(&mut self, _: &LateContext<'tcx>, _: &'tcx Stmt<'tcx>)
fn check_arm(&mut self, _: &LateContext<'tcx>, _: &'tcx Arm<'tcx>)
fn check_pat(&mut self, _: &LateContext<'tcx>, _: &'tcx Pat<'tcx>)
fn check_expr(&mut self, _: &LateContext<'tcx>, _: &'tcx Expr<'tcx>)
fn check_expr_post(&mut self, _: &LateContext<'tcx>, _: &'tcx Expr<'tcx>)
fn check_ty(&mut self, _: &LateContext<'tcx>, _: &'tcx Ty<'tcx>)
fn check_generic_param(
&mut self,
_: &LateContext<'tcx>,
_: &'tcx GenericParam<'tcx>
)
fn check_generics(&mut self, _: &LateContext<'tcx>, _: &'tcx Generics<'tcx>)
fn check_poly_trait_ref(
&mut self,
_: &LateContext<'tcx>,
_: &'tcx PolyTraitRef<'tcx>
)
fn check_fn(
&mut self,
_: &LateContext<'tcx>,
_: FnKind<'tcx>,
_: &'tcx FnDecl<'tcx>,
_: &'tcx Body<'tcx>,
_: Span,
_: HirId
)
fn check_trait_item(&mut self, _: &LateContext<'tcx>, _: &'tcx TraitItem<'tcx>)
fn check_impl_item(&mut self, _: &LateContext<'tcx>, _: &'tcx ImplItem<'tcx>)
fn check_impl_item_post(&mut self, _: &LateContext<'tcx>, _: &'tcx ImplItem<'tcx>)
fn check_struct_def(&mut self, _: &LateContext<'tcx>, _: &'tcx VariantData<'tcx>)
fn check_field_def(&mut self, _: &LateContext<'tcx>, _: &'tcx FieldDef<'tcx>)
fn check_variant(&mut self, _: &LateContext<'tcx>, _: &'tcx Variant<'tcx>)
fn check_path(&mut self, _: &LateContext<'tcx>, _: &Path<'tcx>, _: HirId)
fn check_attribute(&mut self, _: &LateContext<'tcx>, _: &'tcx Attribute)
fn enter_lint_attrs(&mut self, _: &LateContext<'tcx>, _: &'tcx [Attribute])
fn exit_lint_attrs(&mut self, _: &LateContext<'tcx>, _: &'tcx [Attribute])
impl Copy for TypeAliasBounds
Auto Trait Implementations§
impl RefUnwindSafe for TypeAliasBounds
impl Send for TypeAliasBounds
impl Sync for TypeAliasBounds
impl Unpin for TypeAliasBounds
impl UnwindSafe for TypeAliasBounds
Blanket Implementations§
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 0 bytes