INNER CODE UNIT · Rust
expecting
stepancheg/rust-protobuf · protobuf-examples/customize-serde/src/lib.rs:44
fn expecting(&self, formatter: &mut Formatter) -> std::fmt::Result {
write!(formatter, "a string, an integer or none")
}
fn visit_str<R>(self, v: &str) -> Result<Self::Value, R>
where
R: serde::de::Error,
{
match E::enum_descriptor().value_by_name(v) {
Some(v) => Ok(Some(EnumOrUnknown::from_i32(v.value()))),
None => Err(serde::de::Error::custom(format!(
"unknown enum value: {}",
v
))),
}
}
fn visit_i32<R>(self, v: i32) -> Result<Self::Value, R>