derive(NetworkBehaviour) handles trailing commas (#874)

Properly handle trailing commas in derive(NetworkBehaviour)
This commit is contained in:
Dan Robertson
2019-01-21 10:56:01 +00:00
committed by Pierre Krieger
parent 6d24596f9f
commit 615dd3332f
2 changed files with 11 additions and 1 deletions

View File

@ -112,7 +112,11 @@ fn build_struct(ast: &DeriveInput, data_struct: &DataStruct) -> TokenStream {
additional.push(quote!{#substream_generic: ::libp2p::tokio_io::AsyncWrite});
if let Some(where_clause) = where_clause {
Some(quote!{#where_clause, #(#additional),*})
if where_clause.predicates.trailing_punct() {
Some(quote!{#where_clause #(#additional),*})
} else {
Some(quote!{#where_clause, #(#additional),*})
}
} else {
Some(quote!{where #(#additional),*})
}