From 7208a63a496fce38bbe2eae9f6d13fce5eac562a Mon Sep 17 00:00:00 2001 From: Fahmi Akbar Wildana Date: Tue, 15 Oct 2019 08:18:26 +0700 Subject: [PATCH] Implement trait Default for struct Config --- src/lib.rs | 8 +++++++- src/line_range.rs | 2 +- src/style.rs | 8 +++++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index 553cd3a5..61956010 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -65,12 +65,18 @@ pub enum PagingMode { Never, } +impl Default for PagingMode { + fn default() -> Self { + Self::Never + } +} + use inputfile::InputFile; use line_range::LineRanges; use style::{OutputComponents, OutputWrap}; use syntax_mapping::SyntaxMapping; -#[derive(Clone)] +#[derive(Clone, Default)] pub struct Config<'a> { /// List of files to print pub files: Vec>, diff --git a/src/line_range.rs b/src/line_range.rs index 411d118b..f28bf296 100644 --- a/src/line_range.rs +++ b/src/line_range.rs @@ -89,7 +89,7 @@ pub enum RangeCheckResult { AfterLastRange, } -#[derive(Clone)] +#[derive(Clone, Default)] pub struct LineRanges { ranges: Vec, largest_upper_bound: usize, diff --git a/src/style.rs b/src/style.rs index 2da84cb5..8ddd44e1 100644 --- a/src/style.rs +++ b/src/style.rs @@ -21,6 +21,12 @@ pub enum OutputWrap { None, } +impl Default for OutputWrap { + fn default() -> Self { + Self::None + } +} + impl OutputComponent { pub fn components(self, interactive_terminal: bool) -> &'static [OutputComponent] { match self { @@ -66,7 +72,7 @@ impl FromStr for OutputComponent { } } -#[derive(Clone)] +#[derive(Clone, Default)] pub struct OutputComponents(pub HashSet); impl OutputComponents {