diff options
Diffstat (limited to 'src/document_tree/serde_util.rs')
| -rw-r--r-- | src/document_tree/serde_util.rs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/document_tree/serde_util.rs b/src/document_tree/serde_util.rs new file mode 100644 index 0000000..2e24309 --- /dev/null +++ b/src/document_tree/serde_util.rs @@ -0,0 +1,12 @@ +use url::Url; + +pub fn serialize_url<S>(url: &Url, serializer: S) -> Result<S::Ok, S::Error> where S: serde::ser::Serializer { + serializer.serialize_str(url.as_str()) +} + +pub fn serialize_opt_url<S>(url_opt: &Option<Url>, serializer: S) -> Result<S::Ok, S::Error> where S: serde::ser::Serializer { + match url_opt { + Some(ref url) => serializer.serialize_some(url.as_str()), + None => serializer.serialize_none(), + } +} |
