Consider using an RcVec type that collocates reference count with vector elements
Open
- Dominant language
- Rust
- Stars
- 934
- Forks
- 135
- PR merge metrics
- No merged PRs in 30d
Description
As of #335, `TokenStream` is `Rc>`. This makes twice as many allocations as it should, because there's one that holds {strong count, weak count, data ptr, length, capacity} and a different one that holds the vector elements.
Let's look into putting these all into one allocation (except omit weak count, which we do not use) and see how it affects `cargo bench --bench file --features full,parsing,test` in syn.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.