1#[derive(Debug, thiserror::Error)]
2pub enum ParseError {
3 #[error("missing @ header line")]
4 MissingHeader,
5
6 #[error("unterminated quoted string at byte {0}")]
7 UnterminatedString(usize),
8
9 #[error("duplicate field: {0}")]
10 DuplicateField(String),
11
12 #[error("malformed list at byte {0}")]
13 MalformedList(usize),
14
15 #[error("invalid directive: {0}")]
16 InvalidDirective(String),
17
18 #[error("empty run_id")]
19 EmptyRunId,
20
21 #[error("packet exceeds maximum size ({0} bytes)")]
22 PacketTooLarge(usize),
23
24 #[error("too many fields (max {0})")]
25 TooManyFields(usize),
26
27 #[error("field too long at byte {0}")]
28 FieldTooLong(usize),
29
30 #[error("invalid field syntax at line {0}: expected name=value")]
31 InvalidField(usize),
32}
33
34#[derive(Debug, thiserror::Error)]
35pub enum ValidationError {
36 #[error("syntax error: {0}")]
37 Syntax(String),
38
39 #[error("schema error: {0}")]
40 Schema(String),
41}