Skip to content

Planar layouts and images #60

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 10 commits into from
Mar 29, 2025
Merged

Planar layouts and images #60

merged 10 commits into from
Mar 29, 2025

Conversation

HeroicKatora
Copy link
Member

No description provided.

Similar to Box and its inner unique in the standard library, this should
allow better sharing of implementations between buffer types where
otherwise we would leak the rather private traits that contain the
shared behaviour. And we only want that trait to make sense for our own
selection of buffers since the exposed image containers are all concrete
buffers.
The largest use of that deref is the methods available on slices and on
`&buf` such as aligned operations and lengths. These can be provided in
a much more generic way even for underlying representations that are not
that specific (`Freeze`) buffer type but also for !Sync byte buffers and
atomic buffers. We just need to contract the composed operations for
modifying such buffers so that the signatures only mention the Self type
of them respectively. These additional methods will be added to
`BufferLike` in time.
This documents it and aligns the return type to the standard library
(unstable) `slice::get_many` interface where errors are returned as
errors and only a full success works.
@HeroicKatora HeroicKatora merged commit 8e7ccf5 into master Mar 29, 2025
7 checks passed
@HeroicKatora HeroicKatora deleted the 2025-plane-layouts branch March 29, 2025 15:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant