@@ -2,84 +2,32 @@ use anyhow::{bail, Result};
2
2
use std:: path:: { Path , PathBuf } ;
3
3
4
4
#[ cfg_attr( feature = "serde" , derive( serde:: Deserialize ) ) ]
5
- #[ derive( Clone , PartialEq , Eq , Debug ) ]
5
+ #[ derive( Clone , PartialEq , Eq , Debug , Default ) ]
6
+ #[ cfg_attr( feature = "serde" , serde( default ) ) ]
6
7
pub struct Config {
7
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
8
8
pub target : Target ,
9
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
10
9
pub atomics : bool ,
11
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
12
10
pub atomics_feature : Option < String > ,
13
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
14
11
pub generic_mod : bool ,
15
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
16
12
pub make_mod : bool ,
17
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
18
13
pub ignore_groups : bool ,
19
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
20
14
pub keep_list : bool ,
21
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
22
15
pub strict : bool ,
23
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
24
16
pub pascal_enum_values : bool ,
25
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
26
17
pub feature_group : bool ,
27
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
28
18
pub feature_peripheral : bool ,
29
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
30
19
pub max_cluster_size : bool ,
31
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
32
20
pub impl_debug : bool ,
33
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
34
21
pub impl_debug_feature : Option < String > ,
35
- #[ cfg_attr( feature = "serde" , serde( default = "current_dir" ) ) ]
36
- pub output_dir : PathBuf ,
37
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
22
+ pub output_dir : Option < PathBuf > ,
38
23
pub input : Option < PathBuf > ,
39
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
40
24
pub source_type : SourceType ,
41
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
42
25
pub log_level : Option < String > ,
43
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
44
26
pub interrupt_link_section : Option < String > ,
45
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
46
27
pub reexport_core_peripherals : bool ,
47
- #[ cfg_attr( feature = "serde" , serde( default ) ) ]
48
28
pub reexport_interrupt : bool ,
49
29
}
50
30
51
- fn current_dir ( ) -> PathBuf {
52
- PathBuf :: from ( "." )
53
- }
54
-
55
- impl Default for Config {
56
- fn default ( ) -> Self {
57
- Self {
58
- target : Target :: default ( ) ,
59
- atomics : false ,
60
- atomics_feature : None ,
61
- generic_mod : false ,
62
- make_mod : false ,
63
- ignore_groups : false ,
64
- keep_list : false ,
65
- strict : false ,
66
- pascal_enum_values : false ,
67
- feature_group : false ,
68
- feature_peripheral : false ,
69
- max_cluster_size : false ,
70
- impl_debug : false ,
71
- impl_debug_feature : None ,
72
- output_dir : current_dir ( ) ,
73
- input : None ,
74
- source_type : SourceType :: default ( ) ,
75
- log_level : None ,
76
- interrupt_link_section : None ,
77
- reexport_core_peripherals : false ,
78
- reexport_interrupt : false ,
79
- }
80
- }
81
- }
82
-
83
31
#[ allow( clippy:: upper_case_acronyms) ]
84
32
#[ allow( non_camel_case_types) ]
85
33
#[ cfg_attr( feature = "serde" , derive( serde:: Deserialize ) ) ]
0 commit comments