tracexec_core/cli/
options.rs

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