1use std::time::Duration;
2
3use byte_unit::Byte;
4
5#[derive(Debug, PartialEq, Eq)]
6#[cfg_attr(feature = "serde", derive(serde::Serialize))]
7pub enum Verdict {
8 Accepted,
9 WrongAnswer,
10 TimeLimitExceeded,
11 CompilationError,
12 MemoryLimitExceeded,
13 RuntimeError,
14 IdleTimeLimitExceeded,
15}
16
17#[derive(Debug)]
18#[cfg_attr(feature = "serde", derive(serde::Serialize))]
19pub struct Metrics {
20 pub verdict: Verdict,
21 pub run_time: Duration,
22 pub memory_usage: Byte,
23 pub stdout: Vec<u8>,
24 pub stderr: Vec<u8>,
25}