spatialrust_runtime/
trace.rs1#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
5pub enum TraceLevel {
6 Info,
8 Warn,
10 Error,
12}
13
14#[derive(Clone, Debug, PartialEq, Eq)]
16pub struct TraceEvent {
17 pub level: TraceLevel,
19 pub stage: String,
21 pub message: String,
23}
24
25#[derive(Clone, Debug, Default, PartialEq, Eq)]
27pub struct TraceLog {
28 events: Vec<TraceEvent>,
29}
30
31impl TraceLog {
32 #[must_use]
34 pub fn new() -> Self {
35 Self::default()
36 }
37
38 pub fn push(&mut self, event: TraceEvent) {
40 self.events.push(event);
41 }
42
43 #[must_use]
45 pub fn events(&self) -> &[TraceEvent] {
46 &self.events
47 }
48}