ferroui_base/rendering/
renderer_debug_overlays.rs1use bitflags::bitflags;
2
3bitflags! {
4 #[derive(Clone, Copy, Debug, Default, PartialEq, Eq, Hash)]
7 pub struct RendererDebugOverlays: i32 {
8 const NONE = 0;
10
11 const FPS = 1 << 0;
13
14 const DIRTY_RECTS = 1 << 1;
16
17 const LAYOUT_TIME_GRAPH = 1 << 2;
19
20 const RENDER_TIME_GRAPH = 1 << 3;
22 }
23}
24
25#[cfg(test)]
26mod tests {
27 use super::*;
28
29 #[test]
30 fn values_match_the_reference() {
31 assert_eq!(RendererDebugOverlays::NONE.bits(), 0);
32 assert_eq!(RendererDebugOverlays::FPS.bits(), 1);
33 assert_eq!(RendererDebugOverlays::DIRTY_RECTS.bits(), 2);
34 assert_eq!(RendererDebugOverlays::LAYOUT_TIME_GRAPH.bits(), 4);
35 assert_eq!(RendererDebugOverlays::RENDER_TIME_GRAPH.bits(), 8);
36 assert_eq!(RendererDebugOverlays::default(), RendererDebugOverlays::NONE);
37 }
38}