mirror of
https://github.com/dtolnay/thiserror.git
synced 2025-04-03 04:47:38 +03:00
warning: the following explicit lifetimes could be elided: 'a --> src/var.rs:5:6 | 5 | impl<'a, T: Pointer + ?Sized> Pointer for Var<'a, T> { | ^^ ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#elidable_lifetime_names = note: `-W clippy::elidable-lifetime-names` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::elidable_lifetime_names)]` help: elide the lifetimes | 5 - impl<'a, T: Pointer + ?Sized> Pointer for Var<'a, T> { 5 + impl<T: Pointer + ?Sized> Pointer for Var<'_, T> { | warning: the following explicit lifetimes could be elided: 'a --> tests/test_lints.rs:40:22 | 40 | pub enum MyError<'a> { | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#elidable_lifetime_names = note: `-W clippy::elidable-lifetime-names` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::elidable_lifetime_names)]` help: elide the lifetimes | 40 - pub enum MyError<'a> { 40 + pub enum MyError'_> { | warning: the following explicit lifetimes could be elided: 'a --> tests/test_display.rs:157:14 | 157 | impl<'a> Display for Msg<'a> { | ^^ ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#elidable_lifetime_names = note: `-W clippy::elidable-lifetime-names` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::elidable_lifetime_names)]` help: elide the lifetimes | 157 - impl<'a> Display for Msg<'a> { 157 + impl Display for Msg<'_> { |
96 lines
1.9 KiB
Rust
96 lines
1.9 KiB
Rust
#![allow(clippy::mixed_attributes_style)]
|
|
|
|
use thiserror::Error;
|
|
|
|
pub use std::error::Error;
|
|
|
|
#[test]
|
|
fn test_allow_attributes() {
|
|
#![deny(clippy::allow_attributes)]
|
|
|
|
#[derive(Error, Debug)]
|
|
#[error("...")]
|
|
pub struct MyError(#[from] anyhow::Error);
|
|
|
|
let _: MyError;
|
|
}
|
|
|
|
#[test]
|
|
fn test_unused_qualifications() {
|
|
#![deny(unused_qualifications)]
|
|
|
|
// Expansion of derive(Error) macro can't know whether something like
|
|
// std::error::Error is already imported in the caller's scope so it must
|
|
// suppress unused_qualifications.
|
|
|
|
#[derive(Error, Debug)]
|
|
#[error("...")]
|
|
pub struct MyError;
|
|
|
|
let _: MyError;
|
|
}
|
|
|
|
#[test]
|
|
fn test_needless_lifetimes() {
|
|
#![allow(dead_code)]
|
|
#![deny(clippy::elidable_lifetime_names, clippy::needless_lifetimes)]
|
|
|
|
#[derive(Error, Debug)]
|
|
#[error("...")]
|
|
pub enum MyError<'a> {
|
|
A(#[from] std::io::Error),
|
|
B(&'a ()),
|
|
}
|
|
|
|
let _: MyError;
|
|
}
|
|
|
|
#[test]
|
|
fn test_deprecated() {
|
|
#![deny(deprecated)]
|
|
|
|
#[derive(Error, Debug)]
|
|
#[deprecated]
|
|
#[error("...")]
|
|
pub struct DeprecatedStruct;
|
|
|
|
#[derive(Error, Debug)]
|
|
#[error("{message} {}", .message)]
|
|
pub struct DeprecatedStructField {
|
|
#[deprecated]
|
|
message: String,
|
|
}
|
|
|
|
#[derive(Error, Debug)]
|
|
#[deprecated]
|
|
pub enum DeprecatedEnum {
|
|
#[error("...")]
|
|
Variant,
|
|
}
|
|
|
|
#[derive(Error, Debug)]
|
|
pub enum DeprecatedVariant {
|
|
#[deprecated]
|
|
#[error("...")]
|
|
Variant,
|
|
}
|
|
|
|
#[derive(Error, Debug)]
|
|
pub enum DeprecatedFrom {
|
|
#[error(transparent)]
|
|
Variant(
|
|
#[from]
|
|
#[allow(deprecated)]
|
|
DeprecatedStruct,
|
|
),
|
|
}
|
|
|
|
#[allow(deprecated)]
|
|
let _: DeprecatedStruct;
|
|
#[allow(deprecated)]
|
|
let _: DeprecatedStructField;
|
|
#[allow(deprecated)]
|
|
let _ = DeprecatedEnum::Variant;
|
|
#[allow(deprecated)]
|
|
let _ = DeprecatedVariant::Variant;
|
|
}
|