cfx_executor/observer/drain_trace.rs
1use typemap::ShareDebugMap;
2
3pub trait DrainTrace {
4 fn drain_trace(self, map: &mut ShareDebugMap);
5}
6
7impl<T: DrainTrace> DrainTrace for Option<T> {
8 fn drain_trace(self, map: &mut ShareDebugMap) {
9 if let Some(x) = self {
10 x.drain_trace(map);
11 }
12 }
13}
14
15impl DrainTrace for () {
16 fn drain_trace(self, _map: &mut ShareDebugMap) {}
17}