Commit graph

5 commits

Author SHA1 Message Date
Faith Ekstrand
fb2c44bc51 compiler/rust/smallvec: Implement Extend<T> for SmallVec<T>
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41941>
2026-06-03 18:50:41 +00:00
Faith Ekstrand
1a34d1ed3a compiler/rust/smallvec: Implement Deref[Mut]<Target = [T]>
We now get last_mut() for free since it's part of `&mut [T]`.

Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41941>
2026-06-03 18:50:41 +00:00
Faith Ekstrand
ab017fd8fc compiler/rust/smallvec: Add a push_mut() method
This is analagous to `Vec::push_mut()`, which was stabilied in Rust
1.95.0.  Since we can't use that rust version yet, we internally
implement it as `push()` followed by `last_mut().unwrap()`.

Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41941>
2026-06-03 18:50:41 +00:00
Faith Ekstrand
1eaee3b619 compiler/rust/smallvec: Implement Clone, Default, and new()
Reviewed-by: Mel Henning <mhenning@darkrefraction.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41941>
2026-06-03 18:50:41 +00:00
Christian Gmeiner
1421319dcf compiler/rust: Copy MappedInstrs from NAK
Rename it to SmallVec, make it more generic and switch NAK
to it.

Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31409>
2024-10-01 11:33:35 +00:00