Parcourir la source

clippy: derive Default impl for enums instead of manual impl (#8792)

Kamil Skalski il y a 3 semaines
Parent
commit
46d54f3b17

+ 2 - 7
cli-output/src/cli_output.rs

@@ -1524,20 +1524,15 @@ impl fmt::Display for CliStakeState {
     }
 }
 
-#[derive(Serialize, Deserialize, PartialEq, Eq)]
+#[derive(Serialize, Deserialize, PartialEq, Eq, Default)]
 pub enum CliStakeType {
     Stake,
     RewardsPool,
+    #[default]
     Uninitialized,
     Initialized,
 }
 
-impl Default for CliStakeType {
-    fn default() -> Self {
-        Self::Uninitialized
-    }
-}
-
 #[derive(Serialize, Deserialize)]
 #[serde(rename_all = "camelCase")]
 pub struct CliStakeHistory {

+ 2 - 7
core/src/validator.rs

@@ -485,8 +485,9 @@ impl ValidatorConfig {
 // `ValidatorStartProgress` contains status information that is surfaced to the node operator over
 // the admin RPC channel to help them to follow the general progress of node startup without
 // having to watch log messages.
-#[derive(Debug, Clone, Copy, Serialize, Deserialize, PartialEq, Eq)]
+#[derive(Debug, Clone, Copy, Serialize, Deserialize, PartialEq, Eq, Default)]
 pub enum ValidatorStartProgress {
+    #[default]
     Initializing, // Catch all, default state
     SearchingForRpcService,
     DownloadingSnapshot {
@@ -512,12 +513,6 @@ pub enum ValidatorStartProgress {
     Running,
 }
 
-impl Default for ValidatorStartProgress {
-    fn default() -> Self {
-        Self::Initializing
-    }
-}
-
 struct BlockstoreRootScan {
     thread: Option<JoinHandle<Result<usize, BlockstoreError>>>,
 }

+ 2 - 7
gossip/src/deprecated.rs

@@ -4,19 +4,14 @@ use {
 };
 
 #[cfg_attr(feature = "frozen-abi", derive(AbiExample, AbiEnumVisitor))]
-#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Eq)]
+#[derive(Serialize, Deserialize, Clone, Debug, PartialEq, Eq, Default)]
 enum CompressionType {
+    #[default]
     Uncompressed,
     GZip,
     BZip2,
 }
 
-impl Default for CompressionType {
-    fn default() -> Self {
-        Self::Uncompressed
-    }
-}
-
 #[cfg_attr(feature = "frozen-abi", derive(AbiExample))]
 #[derive(Serialize, Deserialize, Clone, Debug, Default, PartialEq, Eq)]
 pub(crate) struct EpochIncompleteSlots {

+ 2 - 7
ledger/src/blockstore_options.rs

@@ -114,20 +114,15 @@ impl LedgerColumnOptions {
     }
 }
 
-#[derive(Debug, Clone, PartialEq)]
+#[derive(Debug, Clone, PartialEq, Default)]
 pub enum BlockstoreCompressionType {
+    #[default]
     None,
     Snappy,
     Lz4,
     Zlib,
 }
 
-impl Default for BlockstoreCompressionType {
-    fn default() -> Self {
-        Self::None
-    }
-}
-
 impl BlockstoreCompressionType {
     pub(crate) fn to_rocksdb_compression_type(&self) -> RocksCompressionType {
         match self {

+ 2 - 7
remote-wallet/src/locator.rs

@@ -8,18 +8,13 @@ use {
     uriparse::{URIReference, URIReferenceBuilder, URIReferenceError},
 };
 
-#[derive(Clone, Copy, Debug, PartialEq, Eq)]
+#[derive(Clone, Copy, Debug, PartialEq, Eq, Default)]
 pub enum Manufacturer {
+    #[default]
     Unknown,
     Ledger,
 }
 
-impl Default for Manufacturer {
-    fn default() -> Self {
-        Self::Unknown
-    }
-}
-
 const MANUFACTURER_UNKNOWN: &str = "unknown";
 const MANUFACTURER_LEDGER: &str = "ledger";
 

+ 2 - 7
runtime/src/bank.rs

@@ -363,20 +363,15 @@ pub type TransactionBalances = Vec<Vec<u64>>;
 
 pub type PreCommitResult<'a> = Result<Option<RwLockReadGuard<'a, Hash>>>;
 
-#[derive(Serialize, Deserialize, Debug, PartialEq, Eq)]
+#[derive(Serialize, Deserialize, Debug, PartialEq, Eq, Default)]
 pub enum TransactionLogCollectorFilter {
     All,
     AllWithVotes,
+    #[default]
     None,
     OnlyMentionedAddresses,
 }
 
-impl Default for TransactionLogCollectorFilter {
-    fn default() -> Self {
-        Self::None
-    }
-}
-
 #[derive(Debug, Default)]
 pub struct TransactionLogCollectorConfig {
     pub mentioned_addresses: HashSet<Pubkey>,

+ 2 - 6
transaction-status-client-types/src/lib.rs

@@ -72,19 +72,15 @@ impl fmt::Display for UiTransactionEncoding {
 
 #[derive(Debug, Clone, Copy, Eq, Hash, PartialEq, Serialize, Deserialize)]
 #[serde(rename_all = "camelCase")]
+#[derive(Default)]
 pub enum TransactionDetails {
+    #[default]
     Full,
     Signatures,
     None,
     Accounts,
 }
 
-impl Default for TransactionDetails {
-    fn default() -> Self {
-        Self::Full
-    }
-}
-
 #[derive(Error, Debug, PartialEq, Eq, Clone)]
 pub enum EncodeError {
     #[error("Encoding does not support transaction version {0}")]