1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
use serde::de::Error;

use super::Version;

impl<'de> serde::Deserialize<'de> for Version {
    fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
    where
        D: serde::Deserializer<'de>,
    {
        let version_str = <&str>::deserialize(deserializer)?;
        version_str.parse().map_err(Error::custom)
    }
}