tracexec_core/cli/
options.rs

1use clap::ValueEnum;
2use serde::{
3  Deserialize,
4  Serialize,
5};
6use strum::Display;
7
8#[derive(
9  Debug, Clone, Copy, PartialEq, Eq, Default, ValueEnum, Display, Deserialize, Serialize,
10)]
11#[strum(serialize_all = "kebab-case")]
12pub enum AppLayout {
13  #[default]
14  Horizontal,
15  Vertical,
16}
17
18#[derive(Debug, Clone, Copy, ValueEnum, PartialEq, Eq, Display)]
19#[strum(serialize_all = "kebab-case")]
20pub enum Color {
21  Auto,
22  Always,
23  Never,
24}
25
26#[derive(
27  Debug, Clone, Copy, ValueEnum, PartialEq, Eq, Display, Default, Deserialize, Serialize,
28)]
29#[strum(serialize_all = "kebab-case")]
30pub enum SeccompBpf {
31  #[default]
32  Auto,
33  On,
34  Off,
35}
36
37#[derive(
38  Debug, Clone, Copy, ValueEnum, PartialEq, Eq, Display, Default, Deserialize, Serialize,
39)]
40#[strum(serialize_all = "kebab-case")]
41pub enum ActivePane {
42  #[default]
43  Terminal,
44  Events,
45}
46
47#[derive(Debug, Clone, Copy, ValueEnum, PartialEq, Eq, Display, Deserialize, Serialize)]
48#[strum(serialize_all = "kebab-case")]
49pub enum ExportFormat {
50  // https://jsonlines.org/
51  JsonStream,
52  Json,
53  // https://clang.llvm.org/docs/JSONCompilationDatabase.html
54  // CompileCommands,
55  Perfetto,
56}