Use correct span for UseTree

This commit is contained in:
topecongiro 2018-04-28 16:05:02 +09:00
parent a159b64b0a
commit 0c5631e4c1
2 changed files with 14 additions and 3 deletions

View file

@ -119,6 +119,17 @@ impl PartialEq for UseTree {
}
impl Eq for UseTree {}
impl Spanned for UseTree {
fn span(&self) -> Span {
let lo = if let Some(ref attrs) = self.attrs {
attrs.iter().next().map_or(self.span.lo(), |a| a.span.lo())
} else {
self.span.lo()
};
mk_sp(lo, self.span.hi())
}
}
impl UseSegment {
// Clone a version of self with any top-level alias removed.
fn remove_alias(&self) -> UseSegment {
@ -268,7 +279,7 @@ impl UseTree {
use_tree,
None,
Some(item.vis.clone()),
Some(item.span().lo()),
Some(item.span.lo()),
if item.attrs.is_empty() {
None
} else {

View file

@ -128,8 +128,8 @@ fn rewrite_reorderable_items(
cloned.iter(),
"",
";",
|item| item.span.lo(),
|item| item.span.hi(),
|item| item.span().lo(),
|item| item.span().hi(),
|_item| Some("".to_owned()),
span.lo(),
span.hi(),