diff options
author | Matthias Beyer <mail@beyermatthias.de> | 2020-11-05 12:06:58 +0100 |
---|---|---|
committer | Matthias Beyer <mail@beyermatthias.de> | 2020-11-05 12:06:58 +0100 |
commit | 3170c9ed14e22c5baa41618326a4db02389da445 (patch) | |
tree | 4677aad26e32b0e99d3bff0a37509d5ced712052 /src/package/source.rs | |
parent | 7bbcca0356795ac60bf7761819b56430e0905a3c (diff) |
Derive Serialize for all types
Because we want to write the whole Tree object into the database as
JSON, we need to be able to serialize all these types.
Some of them (which had no implementation of Deserialize) also got an
implementation of Deserialize, because we also want to be able to read
them from the database and print them to the user.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
Diffstat (limited to 'src/package/source.rs')
-rw-r--r-- | src/package/source.rs | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/package/source.rs b/src/package/source.rs index bdac6ce..cbd4cf9 100644 --- a/src/package/source.rs +++ b/src/package/source.rs @@ -1,8 +1,9 @@ use url::Url; +use serde::Serialize; use serde::Deserialize; use getset::Getters; -#[derive(Clone, Debug, Deserialize, Getters)] +#[derive(Clone, Debug, Serialize, Deserialize, Getters)] pub struct Source { #[getset(get = "pub")] url: Url, @@ -17,7 +18,7 @@ impl Source { } } -#[derive(Clone, Debug, Deserialize, Getters)] +#[derive(Clone, Debug, Serialize, Deserialize, Getters)] pub struct SourceHash { #[serde(rename = "type")] #[getset(get = "pub")] @@ -36,7 +37,7 @@ impl SourceHash { } -#[derive(Clone, Debug, Deserialize)] +#[derive(Clone, Debug, Serialize, Deserialize)] pub enum HashType { #[serde(rename = "sha1")] Sha1, @@ -59,7 +60,7 @@ impl std::fmt::Display for HashType { } -#[derive(Deserialize, Clone, Debug, Hash, Eq, PartialEq)] +#[derive(Serialize, Deserialize, Clone, Debug, Hash, Eq, PartialEq)] #[serde(transparent)] pub struct HashValue(String); |