Skip to content

Commit 30402d8

Browse files
committed
rebasing
1 parent c0452f2 commit 30402d8

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;
@@ -335,7 +335,7 @@ impl UseTree {
335335
for seg in &list[0].path {
336336
self.path.push(seg.clone());
337337
}
338-
return self.normalize(do_sort);
338+
return self.normalize();
339339
}
340340
_ => unreachable!(),
341341
}
@@ -344,11 +344,9 @@ impl UseTree {
344344
// Recursively normalize elements of a list use (including sorting the list).
345345
if let UseSegment::List(list) = last {
346346
let mut list = list.into_iter()
347-
.map(|ut| ut.normalize(do_sort))
347+
.map(|ut| ut.normalize())
348348
.collect::<Vec<_>>();
349-
if do_sort {
350-
list.sort();
351-
}
349+
list.sort();
352350
last = UseSegment::List(list);
353351
}
354352

@@ -681,75 +679,64 @@ mod test {
681679

682680
#[test]
683681
fn test_use_tree_normalize() {
682+
assert_eq!(parse_use_tree("a::self").normalize(), parse_use_tree("a"));
684683
assert_eq!(
685-
parse_use_tree("a::self").normalize(true),
686-
parse_use_tree("a")
687-
);
688-
assert_eq!(
689-
parse_use_tree("a::self as foo").normalize(true),
684+
parse_use_tree("a::self as foo").normalize(),
690685
parse_use_tree("a as foo")
691686
);
687+
assert_eq!(parse_use_tree("a::{self}").normalize(), parse_use_tree("a"));
688+
assert_eq!(parse_use_tree("a::{b}").normalize(), parse_use_tree("a::b"));
692689
assert_eq!(
693-
parse_use_tree("a::{self}").normalize(true),
694-
parse_use_tree("a")
695-
);
696-
assert_eq!(
697-
parse_use_tree("a::{b}").normalize(true),
698-
parse_use_tree("a::b")
699-
);
700-
assert_eq!(
701-
parse_use_tree("a::{b, c::self}").normalize(true),
690+
parse_use_tree("a::{b, c::self}").normalize(),
702691
parse_use_tree("a::{b, c}")
703692
);
704693
assert_eq!(
705-
parse_use_tree("a::{b as bar, c::self}").normalize(true),
694+
parse_use_tree("a::{b as bar, c::self}").normalize(),
706695
parse_use_tree("a::{b as bar, c}")
707696
);
708697
}
709698

710699
#[test]
711700
fn test_use_tree_ord() {
712-
assert!(parse_use_tree("a").normalize(true) < parse_use_tree("aa").normalize(true));
713-
assert!(parse_use_tree("a").normalize(true) < parse_use_tree("a::a").normalize(true));
714-
assert!(parse_use_tree("a").normalize(true) < parse_use_tree("*").normalize(true));
715-
assert!(parse_use_tree("a").normalize(true) < parse_use_tree("{a, b}").normalize(true));
716-
assert!(parse_use_tree("*").normalize(true) < parse_use_tree("{a, b}").normalize(true));
701+
assert!(parse_use_tree("a").normalize() < parse_use_tree("aa").normalize());
702+
assert!(parse_use_tree("a").normalize() < parse_use_tree("a::a").normalize());
703+
assert!(parse_use_tree("a").normalize() < parse_use_tree("*").normalize());
704+
assert!(parse_use_tree("a").normalize() < parse_use_tree("{a, b}").normalize());
705+
assert!(parse_use_tree("*").normalize() < parse_use_tree("{a, b}").normalize());
717706

718707
assert!(
719-
parse_use_tree("aaaaaaaaaaaaaaa::{bb, cc, dddddddd}").normalize(true)
720-
< parse_use_tree("aaaaaaaaaaaaaaa::{bb, cc, ddddddddd}").normalize(true)
721-
);
722-
assert!(
723-
parse_use_tree("serde::de::{Deserialize}").normalize(true)
724-
< parse_use_tree("serde_json").normalize(true)
708+
parse_use_tree("aaaaaaaaaaaaaaa::{bb, cc, dddddddd}").normalize()
709+
< parse_use_tree("aaaaaaaaaaaaaaa::{bb, cc, ddddddddd}").normalize()
725710
);
726711
assert!(
727-
parse_use_tree("a::b::c").normalize(true) < parse_use_tree("a::b::*").normalize(true)
712+
parse_use_tree("serde::de::{Deserialize}").normalize()
713+
< parse_use_tree("serde_json").normalize()
728714
);
715+
assert!(parse_use_tree("a::b::c").normalize() < parse_use_tree("a::b::*").normalize());
729716
assert!(
730-
parse_use_tree("foo::{Bar, Baz}").normalize(true)
731-
< parse_use_tree("{Bar, Baz}").normalize(true)
717+
parse_use_tree("foo::{Bar, Baz}").normalize()
718+
< parse_use_tree("{Bar, Baz}").normalize()
732719
);
733720

734721
assert!(
735-
parse_use_tree("foo::{self as bar}").normalize(true)
736-
< parse_use_tree("foo::{qux as bar}").normalize(true)
722+
parse_use_tree("foo::{self as bar}").normalize()
723+
< parse_use_tree("foo::{qux as bar}").normalize()
737724
);
738725
assert!(
739-
parse_use_tree("foo::{qux as bar}").normalize(true)
740-
< parse_use_tree("foo::{baz, qux as bar}").normalize(true)
726+
parse_use_tree("foo::{qux as bar}").normalize()
727+
< parse_use_tree("foo::{baz, qux as bar}").normalize()
741728
);
742729
assert!(
743-
parse_use_tree("foo::{self as bar, baz}").normalize(true)
744-
< parse_use_tree("foo::{baz, qux as bar}").normalize(true)
730+
parse_use_tree("foo::{self as bar, baz}").normalize()
731+
< parse_use_tree("foo::{baz, qux as bar}").normalize()
745732
);
746733

747-
assert!(parse_use_tree("foo").normalize(true) < parse_use_tree("Foo").normalize(true));
748-
assert!(parse_use_tree("foo").normalize(true) < parse_use_tree("foo::Bar").normalize(true));
734+
assert!(parse_use_tree("foo").normalize() < parse_use_tree("Foo").normalize());
735+
assert!(parse_use_tree("foo").normalize() < parse_use_tree("foo::Bar").normalize());
749736

750737
assert!(
751-
parse_use_tree("std::cmp::{d, c, b, a}").normalize(true)
752-
< parse_use_tree("std::cmp::{b, e, g, f}").normalize(true)
738+
parse_use_tree("std::cmp::{d, c, b, a}").normalize()
739+
< parse_use_tree("std::cmp::{b, e, g, f}").normalize()
753740
);
754741
}
755742
}

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)