summaryrefslogtreecommitdiff
path: root/src/sprite.rs
diff options
context:
space:
mode:
authortroido <troido@protonmail.com>2020-09-24 17:12:39 +0200
committertroido <troido@protonmail.com>2020-09-24 17:12:39 +0200
commit5ae2f9040324baaeaed3f91a84662425cb6186dc (patch)
tree6b76ecbe4961ef11bb48c56d752f7586a1b74212 /src/sprite.rs
parente6476e7afff0234d67ebce7c74e4c91c31d87755 (diff)
more serde (de)serialisation
Diffstat (limited to 'src/sprite.rs')
-rw-r--r--src/sprite.rs18
1 files changed, 11 insertions, 7 deletions
diff --git a/src/sprite.rs b/src/sprite.rs
index 0e08b86..d5f65a0 100644
--- a/src/sprite.rs
+++ b/src/sprite.rs
@@ -1,5 +1,5 @@
-use serde::{Serialize, Serializer};
+use serde::{Serialize, Serializer, Deserialize, Deserializer};
#[derive(Debug, Clone, PartialEq, Hash, Eq)]
pub struct Sprite {
@@ -7,10 +7,14 @@ pub struct Sprite {
}
impl Serialize for Sprite {
- fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
- where
- S: Serializer,
- {
- serializer.serialize_str(self.name.as_str())
- }
+ fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
+ where S: Serializer {
+ serializer.serialize_str(self.name.as_str())
+ }
+}
+impl<'de> Deserialize<'de> for Sprite {
+ fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
+ where D: Deserializer<'de> {
+ Ok(Self{name: String::deserialize(deserializer)?})
+ }
}