summaryrefslogtreecommitdiffstats
path: root/src/package/source.rs
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2020-11-05 12:06:58 +0100
committerMatthias Beyer <mail@beyermatthias.de>2020-11-05 12:06:58 +0100
commit3170c9ed14e22c5baa41618326a4db02389da445 (patch)
tree4677aad26e32b0e99d3bff0a37509d5ced712052 /src/package/source.rs
parent7bbcca0356795ac60bf7761819b56430e0905a3c (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.rs9
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);