charming_fork_zephyr/element/
symbol.rs

1use serde::Serialize;
2
3pub enum Symbol {
4    Circle,
5    Rect,
6    RoundRect,
7    Triangle,
8    Diamond,
9    Pin,
10    Arrow,
11    None,
12    Custom(String),
13}
14
15impl Serialize for Symbol {
16    fn serialize<S: serde::Serializer>(&self, serializer: S) -> Result<S::Ok, S::Error> {
17        match self {
18            Symbol::Circle => serializer.serialize_str("circle"),
19            Symbol::Rect => serializer.serialize_str("rect"),
20            Symbol::RoundRect => serializer.serialize_str("roundRect"),
21            Symbol::Triangle => serializer.serialize_str("triangle"),
22            Symbol::Diamond => serializer.serialize_str("diamond"),
23            Symbol::Pin => serializer.serialize_str("pin"),
24            Symbol::Arrow => serializer.serialize_str("arrow"),
25            Symbol::None => serializer.serialize_str("none"),
26            Symbol::Custom(s) => serializer.serialize_str(s),
27        }
28    }
29}