1use serde::Serialize;
2
3#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize)]
4#[serde(rename_all = "lowercase")]
5pub enum Severity {
6 Low,
7 Medium,
8 High,
9 Critical,
10}
11
12#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
13pub struct SourceLocation {
14 pub path: String,
15 pub line: usize,
16 pub column: usize,
17}
18
19#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
20pub struct FileLocation {
21 pub path: String,
22 pub line: usize,
23}
24
25#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
26pub struct Finding {
27 pub rule_id: String,
28 pub severity: Severity,
29 pub message: String,
30 pub location: SourceLocation,
31 pub help: Option<String>,
32 pub suppressed: bool,
33}