reactive_graph_reactive_service_api/property/property_string/
display.rs

1use crate::TypedReactivePropertyImpl;
2use reactive_graph_reactive_model_api::ReactiveInstance;
3use std::fmt::Debug;
4use std::fmt::Display;
5use std::fmt::Error;
6use std::fmt::Formatter;
7
8impl<IdType, ReactiveInstanceType> Debug for TypedReactivePropertyImpl<IdType, ReactiveInstanceType, String>
9where
10    IdType: Clone,
11    ReactiveInstanceType: ReactiveInstance<IdType>,
12{
13    fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
14        match self.reactive_instance.as_string(&self.property_name) {
15            None => Err(Error),
16            Some(v) => {
17                write!(f, "{v:?}")
18            }
19        }
20    }
21}
22
23impl<IdType, ReactiveInstanceType> Display for TypedReactivePropertyImpl<IdType, ReactiveInstanceType, String>
24where
25    IdType: Clone,
26    ReactiveInstanceType: ReactiveInstance<IdType>,
27{
28    fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result {
29        match self.reactive_instance.as_string(&self.property_name) {
30            None => Err(Error),
31            Some(v) => {
32                write!(f, "{v}")
33            }
34        }
35    }
36}