Skip to content

Commit

Permalink
der_derive: add workaround for syn v2.0.73
Browse files Browse the repository at this point in the history
This workaround gets things compiling on `syn` v2.0.73.

See #1471, dtolnay/syn#1718
  • Loading branch information
tarcieri committed Aug 11, 2024
1 parent 6456b48 commit 61e30ae
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 26 deletions.
8 changes: 4 additions & 4 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

19 changes: 8 additions & 11 deletions der_derive/src/choice.rs
Original file line number Diff line number Diff line change
Expand Up @@ -54,17 +54,14 @@ impl DeriveChoice {

// Use the first lifetime parameter as lifetime for Decode/Encode lifetime
// if none found, add one.
let lifetime = generics
.lifetimes()
.next()
.map(|lt| lt.lifetime.clone())
.unwrap_or_else(|| {
let lt = default_lifetime();
generics
.params
.insert(0, GenericParam::Lifetime(LifetimeParam::new(lt.clone())));
lt
});
let maybe_lifetime = generics.lifetimes().next().map(|lt| lt.lifetime.clone());
let lifetime = maybe_lifetime.unwrap_or_else(|| {
let lt = default_lifetime();
generics
.params
.insert(0, GenericParam::Lifetime(LifetimeParam::new(lt.clone())));
lt
});

// We may or may not have inserted a lifetime.
let (_, ty_generics, where_clause) = self.generics.split_for_impl();
Expand Down
19 changes: 8 additions & 11 deletions der_derive/src/sequence.rs
Original file line number Diff line number Diff line change
Expand Up @@ -54,17 +54,14 @@ impl DeriveSequence {

// Use the first lifetime parameter as lifetime for Decode/Encode lifetime
// if none found, add one.
let lifetime = generics
.lifetimes()
.next()
.map(|lt| lt.lifetime.clone())
.unwrap_or_else(|| {
let lt = default_lifetime();
generics
.params
.insert(0, GenericParam::Lifetime(LifetimeParam::new(lt.clone())));
lt
});
let maybe_lifetime = generics.lifetimes().next().map(|lt| lt.lifetime.clone());
let lifetime = maybe_lifetime.unwrap_or_else(|| {
let lt = default_lifetime();
generics
.params
.insert(0, GenericParam::Lifetime(LifetimeParam::new(lt.clone())));
lt
});

// We may or may not have inserted a lifetime.
let (_, ty_generics, where_clause) = self.generics.split_for_impl();
Expand Down

0 comments on commit 61e30ae

Please sign in to comment.