From c407ee54a60ed708bfbdd1db6934d02ad0ddd5e9 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sat, 27 Jun 2020 01:37:26 +0100 Subject: [PATCH] use serde derive --- src/gamestate.rs | 13 +++++-------- templates/script.js | 2 +- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/gamestate.rs b/src/gamestate.rs index 65e7e4a7..b8d53951 100644 --- a/src/gamestate.rs +++ b/src/gamestate.rs @@ -5,6 +5,8 @@ slotmap::new_key_type!{ pub struct PieceId; } +#[derive(Copy,Clone,Serialize)] +#[serde(into="String")] pub struct VisiblePieceId (pub u64); #[derive(Debug)] @@ -25,6 +27,9 @@ impl Debug for VisiblePieceId { ::fmt(self, f) } } +impl From for String { + fn from(p: VisiblePieceId) -> String { format!("{}",p) } +} struct VisiblePieceIdVisitor { } impl<'de> serde::de::Visitor<'de> for VisiblePieceIdVisitor { @@ -50,14 +55,6 @@ impl<'de> Deserialize<'de> for VisiblePieceId { } } -impl Serialize for VisiblePieceId { - fn serialize(&self, s : S) -> Result - where S : Serializer - { - s.serialize_str(&format!("{}", self)) - } -} - impl PieceRenderInstructions { pub fn id_piece(&self) -> String { format!("piece{}", self.id) } pub fn id_select(&self) -> String { format!("select{}", self.id) } diff --git a/templates/script.js b/templates/script.js index d0837436..42e45568 100644 --- a/templates/script.js +++ b/templates/script.js @@ -63,7 +63,7 @@ function api_posted() { // dataset // delt.p piece id (static) -// delt.g grabbed user (>=0 integer, or "") +// delt.g grabbed user (player id string, or "") const DRAGGING = { // bitmask NO : 0, -- 2.30.2