refactor: do not derive Clone in config structs

This commit is contained in:
Harsh Shandilya 2022-02-20 02:05:20 +05:30
parent 381c3cc0b5
commit 0f67855571
No known key found for this signature in database
GPG key ID: 366D7BBAD1031E80

View file

@ -3,13 +3,13 @@ use std::str::FromStr;
use regex::Regex; use regex::Regex;
use serde_derive::Deserialize; use serde_derive::Deserialize;
#[derive(Clone, Debug, Deserialize)] #[derive(Debug, Deserialize)]
pub struct Replacements<'config> { pub struct Replacements<'config> {
#[serde(rename = "substitutor", borrow, default)] #[serde(rename = "substitutor", borrow, default)]
pub substitutors: Vec<Substitutor<'config>>, pub substitutors: Vec<Substitutor<'config>>,
} }
#[derive(Clone, Debug, Deserialize)] #[derive(Debug, Deserialize)]
pub struct Substitutor<'config> { pub struct Substitutor<'config> {
#[serde(default)] #[serde(default)]
pub name: &'config str, pub name: &'config str,
@ -19,7 +19,7 @@ pub struct Substitutor<'config> {
pub action: Action<'config>, pub action: Action<'config>,
} }
#[derive(Clone, Debug, Deserialize)] #[derive(Debug, Deserialize)]
pub enum Matcher<'config> { pub enum Matcher<'config> {
#[serde(rename = "starts_with")] #[serde(rename = "starts_with")]
StartsWith { prefix: &'config str }, StartsWith { prefix: &'config str },
@ -33,7 +33,7 @@ pub enum Matcher<'config> {
Exactly { content: &'config str }, Exactly { content: &'config str },
} }
#[derive(Clone, Debug, Deserialize)] #[derive(Debug, Deserialize)]
pub enum Action<'config> { pub enum Action<'config> {
#[serde(rename = "set")] #[serde(rename = "set")]
Set { content: &'config str }, Set { content: &'config str },