dfx_base/fields/converters/
bool.rs1use crate::field_map::FieldValue;
2use crate::fields::converters::TryFrom;
3use crate::fields::ConversionError;
4
5use super::IntoBytes;
6
7impl<'a> TryFrom<&'a FieldValue> for bool {
8 type Error = ConversionError;
9
10 fn try_from(value: &'a FieldValue) -> Result<Self, Self::Error> {
11 let ref_str: &str = TryFrom::try_from(value)?;
12
13 match ref_str {
14 "Y" => Ok(true),
15 "N" => Ok(false),
16 _ => todo!(),
17 }
18 }
19}
20
21impl IntoBytes<FieldValue> for bool {
22 fn as_bytes(&self) -> FieldValue {
23 if *self {
24 vec!['Y' as u8].into()
25 } else {
26 vec!['N' as u8].into()
27 }
28 }
29}