1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
module Select = struct
type t =
| Best [@name "best"]
| Cycle [@name "cycle"]
[@@deriving yojson]
end
module Window = struct
module One = struct
type t =
| Focused [@name "focused"]
| Matching of
{ wmatch : Window_match.t
; select : Select.t
} [@name "matching"]
[@@deriving yojson]
end
module Any = struct
type t =
| One of One.t [@name "one"]
| All of { wmatch : Window_match.t } [@name "all"]
[@@deriving yojson]
end
end
module Output = struct
module One = struct
type t =
| Focused [@name "focused"]
| Matching of
{ omatch : Output_match.t
; select : Select.t
} [@name "matching"]
[@@deriving yojson]
end
module Any = struct
type t =
| One of One.t [@name "one"]
| All of { omatch : Output_match.t } [@name "all"]
[@@deriving yojson]
end
end