1
- #[ derive( Clone , Debug , serde:: Serialize , serde:: Deserialize , schemars:: JsonSchema ) ]
2
- #[ serde( rename_all = "snake_case" ) ]
3
- #[ serde( deny_unknown_fields) ]
1
+ #[ derive( Clone , Debug ) ]
2
+ #[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
3
+ #[ cfg_attr( feature = "schema" , derive( schemars:: JsonSchema ) ) ]
4
+ #[ cfg_attr( feature = "serde" , serde( rename_all = "snake_case" ) ) ]
5
+ #[ cfg_attr( feature = "serde" , serde( deny_unknown_fields) ) ]
4
6
pub struct TodoList {
5
- #[ serde( default = "init_default" ) ]
7
+ #[ cfg_attr ( feature = " serde" , serde ( default = "init_default" ) ) ]
6
8
pub init : bool ,
7
- #[ serde( default ) ]
8
- #[ serde( serialize_with = "humantime_serde::serialize" ) ]
9
- #[ serde( deserialize_with = "humantime_serde::deserialize" ) ]
9
+ #[ cfg_attr( feature = "serde" , serde( default ) ) ]
10
+ #[ cfg_attr(
11
+ feature = "serde" ,
12
+ serde( serialize_with = "humantime_serde::serialize" )
13
+ ) ]
14
+ #[ cfg_attr(
15
+ feature = "serde" ,
16
+ serde( deserialize_with = "humantime_serde::deserialize" )
17
+ ) ]
10
18
pub sleep : Option < std:: time:: Duration > ,
11
- #[ serde( default ) ]
19
+ #[ cfg_attr ( feature = " serde" , serde ( default ) ) ]
12
20
pub author : Option < String > ,
13
- #[ serde( default ) ]
21
+ #[ cfg_attr ( feature = " serde" , serde ( default ) ) ]
14
22
pub commands : Vec < Command > ,
15
23
}
16
24
@@ -29,11 +37,11 @@ impl Default for TodoList {
29
37
}
30
38
}
31
39
32
- #[ derive(
33
- Clone , Debug , serde:: Serialize , serde:: Deserialize , derive_more :: IsVariant , schemars :: JsonSchema ,
34
- ) ]
35
- #[ serde( rename_all = "snake_case" ) ]
36
- #[ serde( deny_unknown_fields) ]
40
+ #[ derive( Clone , Debug , derive_more :: IsVariant ) ]
41
+ # [ cfg_attr ( feature = "serde" , derive ( serde:: Serialize , serde:: Deserialize ) ) ]
42
+ # [ cfg_attr ( feature = "schema" , derive ( schemars :: JsonSchema ) ) ]
43
+ #[ cfg_attr ( feature = " serde" , serde ( rename_all = "snake_case" ) ) ]
44
+ #[ cfg_attr ( feature = " serde" , serde ( deny_unknown_fields) ) ]
37
45
pub enum Command {
38
46
Label ( Label ) ,
39
47
Reset ( Reference ) ,
@@ -50,23 +58,25 @@ impl From<Tree> for Command {
50
58
}
51
59
}
52
60
53
- #[ derive( Default , Clone , Debug , serde:: Serialize , serde:: Deserialize , schemars:: JsonSchema ) ]
54
- #[ serde( rename_all = "snake_case" ) ]
55
- #[ serde( deny_unknown_fields) ]
61
+ #[ derive( Default , Clone , Debug ) ]
62
+ #[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
63
+ #[ cfg_attr( feature = "schema" , derive( schemars:: JsonSchema ) ) ]
64
+ #[ cfg_attr( feature = "serde" , serde( rename_all = "snake_case" ) ) ]
65
+ #[ cfg_attr( feature = "serde" , serde( deny_unknown_fields) ) ]
56
66
pub struct Tree {
57
67
pub tracked : std:: collections:: HashMap < std:: path:: PathBuf , FileContent > ,
58
- #[ serde( default ) ]
68
+ #[ cfg_attr ( feature = " serde" , serde ( default ) ) ]
59
69
pub message : Option < String > ,
60
- #[ serde( default ) ]
70
+ #[ cfg_attr ( feature = " serde" , serde ( default ) ) ]
61
71
pub author : Option < String > ,
62
72
}
63
73
64
- #[ derive(
65
- Clone , Debug , serde:: Serialize , serde:: Deserialize , schemars :: JsonSchema , derive_more :: IsVariant ,
66
- ) ]
67
- #[ serde ( rename_all = "snake_case" ) ]
68
- #[ serde( untagged ) ]
69
- #[ serde( deny_unknown_fields) ]
74
+ #[ derive( Clone , Debug , derive_more :: IsVariant ) ]
75
+ # [ cfg_attr ( feature = "serde" , derive ( serde:: Serialize , serde:: Deserialize ) ) ]
76
+ # [ cfg_attr ( feature = "schema" , derive ( schemars :: JsonSchema ) ) ]
77
+ #[ cfg_attr ( feature = "serde" , serde ( untagged ) ) ]
78
+ #[ cfg_attr ( feature = " serde" , serde ( rename_all = "snake_case" ) ) ]
79
+ #[ cfg_attr ( feature = " serde" , serde ( deny_unknown_fields) ) ]
70
80
pub enum FileContent {
71
81
Binary ( Vec < u8 > ) ,
72
82
Text ( String ) ,
@@ -99,22 +109,24 @@ impl<'d> From<&'d str> for FileContent {
99
109
}
100
110
}
101
111
102
- #[ derive( Clone , Debug , serde:: Serialize , serde:: Deserialize , schemars:: JsonSchema ) ]
103
- #[ serde( rename_all = "snake_case" ) ]
104
- #[ serde( deny_unknown_fields) ]
112
+ #[ derive( Clone , Debug ) ]
113
+ #[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
114
+ #[ cfg_attr( feature = "schema" , derive( schemars:: JsonSchema ) ) ]
115
+ #[ cfg_attr( feature = "serde" , serde( rename_all = "snake_case" ) ) ]
116
+ #[ cfg_attr( feature = "serde" , serde( deny_unknown_fields) ) ]
105
117
pub struct Merge {
106
118
pub base : Vec < Reference > ,
107
- #[ serde( default ) ]
119
+ #[ cfg_attr ( feature = " serde" , serde ( default ) ) ]
108
120
pub message : Option < String > ,
109
- #[ serde( default ) ]
121
+ #[ cfg_attr ( feature = " serde" , serde ( default ) ) ]
110
122
pub author : Option < String > ,
111
123
}
112
124
113
- #[ derive(
114
- Clone , Debug , serde:: Serialize , serde:: Deserialize , derive_more :: IsVariant , schemars :: JsonSchema ,
115
- ) ]
116
- #[ serde( rename_all = "snake_case" ) ]
117
- #[ serde( deny_unknown_fields) ]
125
+ #[ derive( Clone , Debug , derive_more :: IsVariant ) ]
126
+ # [ cfg_attr ( feature = "serde" , derive ( serde:: Serialize , serde:: Deserialize ) ) ]
127
+ # [ cfg_attr ( feature = "schema" , derive ( schemars :: JsonSchema ) ) ]
128
+ #[ cfg_attr ( feature = " serde" , serde ( rename_all = "snake_case" ) ) ]
129
+ #[ cfg_attr ( feature = " serde" , serde ( deny_unknown_fields) ) ]
118
130
pub enum Reference {
119
131
Branch ( Branch ) ,
120
132
Tag ( Tag ) ,
@@ -139,19 +151,10 @@ impl From<Label> for Reference {
139
151
}
140
152
}
141
153
142
- #[ derive(
143
- Clone ,
144
- Debug ,
145
- PartialEq ,
146
- Eq ,
147
- PartialOrd ,
148
- Ord ,
149
- Hash ,
150
- serde:: Serialize ,
151
- serde:: Deserialize ,
152
- schemars:: JsonSchema ,
153
- ) ]
154
- #[ serde( transparent) ]
154
+ #[ derive( Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash ) ]
155
+ #[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
156
+ #[ cfg_attr( feature = "schema" , derive( schemars:: JsonSchema ) ) ]
157
+ #[ cfg_attr( feature = "serde" , serde( transparent) ) ]
155
158
pub struct Label ( String ) ;
156
159
157
160
impl Label {
@@ -192,19 +195,10 @@ impl std::borrow::Borrow<str> for Label {
192
195
}
193
196
}
194
197
195
- #[ derive(
196
- Clone ,
197
- Debug ,
198
- PartialEq ,
199
- Eq ,
200
- PartialOrd ,
201
- Ord ,
202
- Hash ,
203
- serde:: Serialize ,
204
- serde:: Deserialize ,
205
- schemars:: JsonSchema ,
206
- ) ]
207
- #[ serde( transparent) ]
198
+ #[ derive( Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash ) ]
199
+ #[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
200
+ #[ cfg_attr( feature = "schema" , derive( schemars:: JsonSchema ) ) ]
201
+ #[ cfg_attr( feature = "serde" , serde( transparent) ) ]
208
202
pub struct Branch ( String ) ;
209
203
210
204
impl Branch {
@@ -245,19 +239,10 @@ impl std::borrow::Borrow<str> for Branch {
245
239
}
246
240
}
247
241
248
- #[ derive(
249
- Clone ,
250
- Debug ,
251
- PartialEq ,
252
- Eq ,
253
- PartialOrd ,
254
- Ord ,
255
- Hash ,
256
- serde:: Serialize ,
257
- serde:: Deserialize ,
258
- schemars:: JsonSchema ,
259
- ) ]
260
- #[ serde( transparent) ]
242
+ #[ derive( Clone , Debug , PartialEq , Eq , PartialOrd , Ord , Hash ) ]
243
+ #[ cfg_attr( feature = "serde" , derive( serde:: Serialize , serde:: Deserialize ) ) ]
244
+ #[ cfg_attr( feature = "schema" , derive( schemars:: JsonSchema ) ) ]
245
+ #[ cfg_attr( feature = "serde" , serde( transparent) ) ]
261
246
pub struct Tag ( String ) ;
262
247
263
248
impl Tag {
0 commit comments