@@ -54,42 +54,30 @@ pub(super) enum TaskStep {
54
54
BuildAndTest { tc : Toolchain , quiet : bool } ,
55
55
BuildOnly { tc : Toolchain , quiet : bool } ,
56
56
CheckOnly { tc : Toolchain , quiet : bool } ,
57
+ Clippy { tc : Toolchain , quiet : bool } ,
57
58
Rustdoc { tc : Toolchain , quiet : bool } ,
58
59
UnstableFeatures { tc : Toolchain } ,
59
60
}
60
61
61
62
impl fmt:: Debug for TaskStep {
62
63
fn fmt ( & self , f : & mut fmt:: Formatter ) -> fmt:: Result {
63
- match * self {
64
- TaskStep :: Prepare => write ! ( f, "prepare" ) ?,
65
- TaskStep :: Cleanup => write ! ( f, "cleanup" ) ?,
66
- TaskStep :: BuildAndTest { ref tc, quiet } => {
67
- write ! ( f, "build and test {}" , tc. to_string( ) ) ?;
68
- if quiet {
69
- write ! ( f, " (quiet)" ) ?;
70
- }
71
- }
72
- TaskStep :: BuildOnly { ref tc, quiet } => {
73
- write ! ( f, "build {}" , tc. to_string( ) ) ?;
74
- if quiet {
75
- write ! ( f, " (quiet)" ) ?;
76
- }
77
- }
78
- TaskStep :: CheckOnly { ref tc, quiet } => {
79
- write ! ( f, "check {}" , tc. to_string( ) ) ?;
80
- if quiet {
81
- write ! ( f, " (quiet)" ) ?;
82
- }
83
- }
84
- TaskStep :: Rustdoc { ref tc, quiet } => {
85
- write ! ( f, "doc {}" , tc. to_string( ) ) ?;
86
- if quiet {
87
- write ! ( f, " (quiet)" ) ?;
88
- }
89
- }
90
- TaskStep :: UnstableFeatures { ref tc } => {
91
- write ! ( f, "find unstable features on {}" , tc. to_string( ) ) ?;
92
- }
64
+ let ( name, quiet, tc) = match * self {
65
+ TaskStep :: Prepare => ( "prepare" , false , None ) ,
66
+ TaskStep :: Cleanup => ( "cleanup" , false , None ) ,
67
+ TaskStep :: BuildAndTest { ref tc, quiet } => ( "build and test" , quiet, Some ( tc) ) ,
68
+ TaskStep :: BuildOnly { ref tc, quiet } => ( "build" , quiet, Some ( tc) ) ,
69
+ TaskStep :: CheckOnly { ref tc, quiet } => ( "check" , quiet, Some ( tc) ) ,
70
+ TaskStep :: Clippy { ref tc, quiet } => ( "clippy" , quiet, Some ( tc) ) ,
71
+ TaskStep :: Rustdoc { ref tc, quiet } => ( "doc" , quiet, Some ( tc) ) ,
72
+ TaskStep :: UnstableFeatures { ref tc } => ( "find unstable features on" , false , Some ( tc) ) ,
73
+ } ;
74
+
75
+ write ! ( f, "{}" , name) ?;
76
+ if let Some ( tc) = tc {
77
+ write ! ( f, " {}" , tc. to_string( ) ) ?;
78
+ }
79
+ if quiet {
80
+ write ! ( f, " (quiet)" ) ?;
93
81
}
94
82
Ok ( ( ) )
95
83
}
@@ -120,6 +108,7 @@ impl Task {
120
108
TaskStep :: BuildAndTest { ref tc, .. }
121
109
| TaskStep :: BuildOnly { ref tc, .. }
122
110
| TaskStep :: CheckOnly { ref tc, .. }
111
+ | TaskStep :: Clippy { ref tc, .. }
123
112
| TaskStep :: Rustdoc { ref tc, .. }
124
113
| TaskStep :: UnstableFeatures { ref tc } => {
125
114
db. get_result ( ex, tc, & self . krate ) . unwrap_or ( None ) . is_none ( )
@@ -141,6 +130,7 @@ impl Task {
141
130
TaskStep :: BuildAndTest { ref tc, .. }
142
131
| TaskStep :: BuildOnly { ref tc, .. }
143
132
| TaskStep :: CheckOnly { ref tc, .. }
133
+ | TaskStep :: Clippy { ref tc, .. }
144
134
| TaskStep :: Rustdoc { ref tc, .. }
145
135
| TaskStep :: UnstableFeatures { ref tc } => {
146
136
let log_storage = state
@@ -199,6 +189,10 @@ impl Task {
199
189
let ctx = TaskCtx :: new ( config, db, ex, tc, & self . krate , docker_env, state, quiet) ;
200
190
test:: run_test ( "checking" , & ctx, test:: test_check_only) ?;
201
191
}
192
+ TaskStep :: Clippy { ref tc, quiet } => {
193
+ let ctx = TaskCtx :: new ( config, db, ex, tc, & self . krate , docker_env, state, quiet) ;
194
+ test:: run_test ( "linting" , & ctx, test:: test_clippy_only) ?;
195
+ }
202
196
TaskStep :: Rustdoc { ref tc, quiet } => {
203
197
let ctx = TaskCtx :: new ( config, db, ex, tc, & self . krate , docker_env, state, quiet) ;
204
198
test:: run_test ( "documenting" , & ctx, test:: test_rustdoc) ?;
0 commit comments