Skip to content

Commit 1c17dbb

Browse files
committed
rebasing
1 parent aa44190 commit 1c17dbb

File tree

6 files changed

+45
-55
lines changed

6 files changed

+45
-55
lines changed

src/imports.rs

+33-46
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ impl UseTree {
185185
} else {
186186
Some(item.attrs.clone())
187187
},
188-
).normalize(context.config.reorder_imported_names()),
188+
).normalize(),
189189
),
190190
_ => None,
191191
}
@@ -271,7 +271,7 @@ impl UseTree {
271271
}
272272

273273
// Do the adjustments that rustfmt does elsewhere to use paths.
274-
pub fn normalize(mut self, do_sort: bool) -> UseTree {
274+
pub fn normalize(mut self) -> UseTree {
275275
let mut last = self.path.pop().expect("Empty use tree?");
276276
// Hack around borrow checker.
277277
let mut normalize_sole_list = false;
@@ -340,7 +340,7 @@ impl UseTree {
340340
for seg in &list[0].path {
341341
self.path.push(seg.clone());
342342
}
343-
return self.normalize(do_sort);
343+
return self.normalize();
344344
}
345345
_ => unreachable!(),
346346
}
@@ -349,11 +349,9 @@ impl UseTree {
349349
// Recursively normalize elements of a list use (including sorting the list).
350350
if let UseSegment::List(list) = last {
351351
let mut list = list.into_iter()
352-
.map(|ut| ut.normalize(do_sort))
352+
.map(|ut| ut.normalize())
353353
.collect::<Vec<_>>();
354-
if do_sort {
355-
list.sort();
356-
}
354+
list.sort();
357355
last = UseSegment::List(list);
358356
}
359357

@@ -686,75 +684,64 @@ mod test {
686684

687685
#[test]
688686
fn test_use_tree_normalize() {
687+
assert_eq!(parse_use_tree("a::self").normalize(), parse_use_tree("a"));
689688
assert_eq!(
690-
parse_use_tree("a::self").normalize(true),
691-
parse_use_tree("a")
692-
);
693-
assert_eq!(
694-
parse_use_tree("a::self as foo").normalize(true),
689+
parse_use_tree("a::self as foo").normalize(),
695690
parse_use_tree("a as foo")
696691
);
692+
assert_eq!(parse_use_tree("a::{self}").normalize(), parse_use_tree("a"));
693+
assert_eq!(parse_use_tree("a::{b}").normalize(), parse_use_tree("a::b"));
697694
assert_eq!(
698-
parse_use_tree("a::{self}").normalize(true),
699-
parse_use_tree("a")
700-
);
701-
assert_eq!(
702-
parse_use_tree("a::{b}").normalize(true),
703-
parse_use_tree("a::b")
704-
);
705-
assert_eq!(
706-
parse_use_tree("a::{b, c::self}").normalize(true),
695+
parse_use_tree("a::{b, c::self}").normalize(),
707696
parse_use_tree("a::{b, c}")
708697
);
709698
assert_eq!(
710-
parse_use_tree("a::{b as bar, c::self}").normalize(true),
699+
parse_use_tree("a::{b as bar, c::self}").normalize(),
711700
parse_use_tree("a::{b as bar, c}")
712701
);
713702
}
714703

715704
#[test]
716705
fn test_use_tree_ord() {
717-
assert!(parse_use_tree("a").normalize(true) < parse_use_tree("aa").normalize(true));
718-
assert!(parse_use_tree("a").normalize(true) < parse_use_tree("a::a").normalize(true));
719-
assert!(parse_use_tree("a").normalize(true) < parse_use_tree("*").normalize(true));
720-
assert!(parse_use_tree("a").normalize(true) < parse_use_tree("{a, b}").normalize(true));
721-
assert!(parse_use_tree("*").normalize(true) < parse_use_tree("{a, b}").normalize(true));
706+
assert!(parse_use_tree("a").normalize() < parse_use_tree("aa").normalize());
707+
assert!(parse_use_tree("a").normalize() < parse_use_tree("a::a").normalize());
708+
assert!(parse_use_tree("a").normalize() < parse_use_tree("*").normalize());
709+
assert!(parse_use_tree("a").normalize() < parse_use_tree("{a, b}").normalize());
710+
assert!(parse_use_tree("*").normalize() < parse_use_tree("{a, b}").normalize());
722711

723712
assert!(
724-
parse_use_tree("aaaaaaaaaaaaaaa::{bb, cc, dddddddd}").normalize(true)
725-
< parse_use_tree("aaaaaaaaaaaaaaa::{bb, cc, ddddddddd}").normalize(true)
726-
);
727-
assert!(
728-
parse_use_tree("serde::de::{Deserialize}").normalize(true)
729-
< parse_use_tree("serde_json").normalize(true)
713+
parse_use_tree("aaaaaaaaaaaaaaa::{bb, cc, dddddddd}").normalize()
714+
< parse_use_tree("aaaaaaaaaaaaaaa::{bb, cc, ddddddddd}").normalize()
730715
);
731716
assert!(
732-
parse_use_tree("a::b::c").normalize(true) < parse_use_tree("a::b::*").normalize(true)
717+
parse_use_tree("serde::de::{Deserialize}").normalize()
718+
< parse_use_tree("serde_json").normalize()
733719
);
720+
assert!(parse_use_tree("a::b::c").normalize() < parse_use_tree("a::b::*").normalize());
734721
assert!(
735-
parse_use_tree("foo::{Bar, Baz}").normalize(true)
736-
< parse_use_tree("{Bar, Baz}").normalize(true)
722+
parse_use_tree("foo::{Bar, Baz}").normalize()
723+
< parse_use_tree("{Bar, Baz}").normalize()
737724
);
738725

739726
assert!(
740-
parse_use_tree("foo::{self as bar}").normalize(true)
741-
< parse_use_tree("foo::{qux as bar}").normalize(true)
727+
parse_use_tree("foo::{self as bar}").normalize()
728+
< parse_use_tree("foo::{qux as bar}").normalize()
742729
);
743730
assert!(
744-
parse_use_tree("foo::{qux as bar}").normalize(true)
745-
< parse_use_tree("foo::{baz, qux as bar}").normalize(true)
731+
parse_use_tree("foo::{qux as bar}").normalize()
732+
< parse_use_tree("foo::{baz, qux as bar}").normalize()
746733
);
747734
assert!(
748-
parse_use_tree("foo::{self as bar, baz}").normalize(true)
749-
< parse_use_tree("foo::{baz, qux as bar}").normalize(true)
735+
parse_use_tree("foo::{self as bar, baz}").normalize()
736+
< parse_use_tree("foo::{baz, qux as bar}").normalize()
750737
);
751738

752-
assert!(parse_use_tree("foo").normalize(true) < parse_use_tree("Foo").normalize(true));
753-
assert!(parse_use_tree("foo").normalize(true) < parse_use_tree("foo::Bar").normalize(true));
739+
assert!(parse_use_tree("foo").normalize() < parse_use_tree("Foo").normalize());
740+
assert!(parse_use_tree("foo").normalize() < parse_use_tree("foo::Bar").normalize());
754741

755742
assert!(
756-
parse_use_tree("std::cmp::{d, c, b, a}").normalize(true)
757-
< parse_use_tree("std::cmp::{b, e, g, f}").normalize(true)
743+
parse_use_tree("std::cmp::{d, c, b, a}").normalize()
744+
< parse_use_tree("std::cmp::{b, e, g, f}").normalize()
758745
);
759746
}
760747
}

src/lib.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@ use std::time::Duration;
4242
use syntax::ast;
4343
pub use syntax::codemap::FileName;
4444
use syntax::codemap::{CodeMap, FilePathMapping};
45-
use syntax::errors::{DiagnosticBuilder, Handler};
4645
use syntax::errors::emitter::{ColorConfig, EmitterWriter};
46+
use syntax::errors::{DiagnosticBuilder, Handler};
4747
use syntax::parse::{self, ParseSess};
4848

4949
use checkstyle::{output_footer, output_header};

src/reorder.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ impl ReorderableItemKind {
207207

208208
pub fn in_group(&self) -> bool {
209209
match *self {
210-
ReorderableItemKind::ExternCrate => false,
210+
ReorderableItemKind::ExternCrate => true,
211211
ReorderableItemKind::Mod => true,
212212
ReorderableItemKind::Use => true,
213213
ReorderableItemKind::Other => false,

tests/target/extern.rs

+8-5
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,17 @@
11
// rustfmt-normalize_comments: true
22

3-
extern crate bar;
4-
extern crate chrono;
5-
extern crate dotenv;
6-
extern crate foo;
73
extern crate foo;
84
extern crate foo as bar;
5+
6+
extern crate chrono;
7+
extern crate dotenv;
98
extern crate futures;
10-
extern crate proc_macro;
9+
10+
extern crate bar;
11+
extern crate foo;
12+
1113
// #2315
14+
extern crate proc_macro;
1215
extern crate proc_macro2;
1316

1417
extern "C" {
+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1+
use aaaaaaaaaaaaaaa::bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;
12
use aaaaaaaaaaaaaaa::{bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, ccccccccccccccccccccccccccccccc, dddddddd};
23
use aaaaaaaaaaaaaaa::{bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, ccccccccccccccccccccccccccccccc,
34
ddddddddd};
4-
use aaaaaaaaaaaaaaa::bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;

tests/target/imports.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,9 +54,9 @@ use foo::{baz, qux as bar};
5454

5555
// With absolute paths
5656
use foo;
57-
use Foo;
5857
use foo::Bar;
5958
use foo::{Bar, Baz};
59+
use Foo;
6060
use {Bar, Baz};
6161

6262
// Root globs

0 commit comments

Comments
 (0)