talon_core/indexing/
input.rs1use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
7#[serde(rename_all = "kebab-case")]
8pub enum InspectCheck {
9 All,
11 Orphans,
13 BrokenLinks,
15 DanglingRefs,
17 Unreferenced,
19 Graph,
21}
22
23#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, Default)]
25#[serde(rename_all = "camelCase")]
26pub struct SyncInput {
27 #[serde(default)]
29 pub paths: Vec<String>,
30 #[serde(default)]
32 pub fast: bool,
33 #[serde(default)]
35 pub force: bool,
36 #[serde(default)]
38 pub rebuild: bool,
39}
40
41#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, Default)]
43#[serde(rename_all = "camelCase")]
44pub struct StatusInput {
45 #[serde(default)]
47 pub json: bool,
48}
49
50#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
52#[serde(rename_all = "camelCase")]
53pub struct InspectInput {
54 pub check: InspectCheck,
56 #[serde(default)]
58 pub scope: Vec<String>,
59 #[serde(default)]
61 pub scope_only: Vec<String>,
62 #[serde(default)]
64 pub scope_all: bool,
65 #[serde(default)]
67 pub limit: Option<u16>,
68}