bytecodealliance / bytecodealliance/regalloc2
Replace manual use of index newtypes `bundles[bundle.index()]` with `Index` impls and typed `Vec` wrappers
Open
- Dominant language
- Rust
- Stars
- 265
- Forks
- 53
- PR merge metrics
- No merged PRs in 30d
Description
Right now, regalloc2 uses an entity-component-system sort of pattern with toplevel `Vec`s of `LiveBundle`, `VRegData`, and the like, and newtype'd index wrappers like `LiveBundleIndex`, `VRegIndex`, etc. We have a whole bunch of instances of `self.bundles[bundle.index()]...`.
Ideally we would make `bundles` a `Vec`-wrapper type that has an `Index` implementation that natively takes `LiveBundleIndex`, and then we could make all of these sites slightly less verbose.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.