Skip to content

Commit

Permalink
Use the span after generics and where clause (#4208)
Browse files Browse the repository at this point in the history
  • Loading branch information
topecongiro authored and calebcartwright committed Jan 28, 2021
1 parent 2695846 commit c0fede3
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 2 deletions.
5 changes: 3 additions & 2 deletions src/items.rs
Expand Up @@ -1141,14 +1141,15 @@ pub(crate) fn format_trait(
}
result.push('{');

let snippet = context.snippet(item.span);
let block_span = mk_sp(generics.where_clause.span.hi(), item.span.hi());
let snippet = context.snippet(block_span);
let open_pos = snippet.find_uncommented("{")? + 1;
let outer_indent_str = offset.block_only().to_string_with_newline(context.config);

if !trait_items.is_empty() || contains_comment(&snippet[open_pos..]) {
let mut visitor = FmtVisitor::from_context(context);
visitor.block_indent = offset.block_only().block_indent(context.config);
visitor.last_pos = item.span.lo() + BytePos(open_pos as u32);
visitor.last_pos = block_span.lo() + BytePos(open_pos as u32);

for item in trait_items {
visitor.visit_trait_item(item);
Expand Down
4 changes: 4 additions & 0 deletions tests/source/const_generics.rs
Expand Up @@ -30,3 +30,7 @@ fn foo<const X: usize>() {
}

type Foo<const N: usize> = [i32; N + 1];

pub trait Foo: Bar<{Baz::COUNT}> {
const ASD: usize;
}
4 changes: 4 additions & 0 deletions tests/target/const_generics.rs
Expand Up @@ -22,3 +22,7 @@ fn foo<const X: usize>() {
}

type Foo<const N: usize> = [i32; N + 1];

pub trait Foo: Bar<{ Baz::COUNT }> {
const ASD: usize;
}

0 comments on commit c0fede3

Please sign in to comment.