mirror of
https://github.com/gfx-rs/wgpu.git
synced 2026-04-22 03:02:01 -04:00
[rs] Merge #30
30: Add Pod trait bound for all BufferMapAsyncResult data r=kvark a=paulkernfeld Co-authored-by: Paul Kernfeld <paulkernfeld@gmail.com>
This commit is contained in:
@@ -37,6 +37,7 @@ pub use wgn::{
|
||||
Limits,
|
||||
LoadOp,
|
||||
Origin3d,
|
||||
Pod,
|
||||
PowerPreference,
|
||||
PrimitiveTopology,
|
||||
RasterizationStateDescriptor,
|
||||
@@ -809,6 +810,7 @@ impl<T> Drop for BufferAsyncMapping<T> {
|
||||
|
||||
struct BufferMapReadAsyncUserData<T, F>
|
||||
where
|
||||
T: Pod,
|
||||
F: FnOnce(BufferMapAsyncResult<&[T]>),
|
||||
{
|
||||
size: BufferAddress,
|
||||
@@ -819,6 +821,7 @@ where
|
||||
|
||||
struct BufferMapWriteAsyncUserData<T, F>
|
||||
where
|
||||
T: Pod,
|
||||
F: FnOnce(BufferMapAsyncResult<&mut [T]>),
|
||||
{
|
||||
size: BufferAddress,
|
||||
@@ -830,7 +833,7 @@ where
|
||||
impl Buffer {
|
||||
pub fn map_read_async<T, F>(&self, start: BufferAddress, size: BufferAddress, callback: F)
|
||||
where
|
||||
T: 'static + Copy,
|
||||
T: 'static + Pod,
|
||||
F: FnOnce(BufferMapAsyncResult<&[T]>) + 'static,
|
||||
{
|
||||
let type_size = std::mem::size_of::<T>() as BufferAddress;
|
||||
@@ -842,6 +845,7 @@ impl Buffer {
|
||||
data: *const u8,
|
||||
user_data: *mut u8,
|
||||
) where
|
||||
T: Pod,
|
||||
F: FnOnce(BufferMapAsyncResult<&[T]>),
|
||||
{
|
||||
let user_data =
|
||||
@@ -879,7 +883,7 @@ impl Buffer {
|
||||
|
||||
pub fn map_write_async<T, F>(&self, start: BufferAddress, size: BufferAddress, callback: F)
|
||||
where
|
||||
T: 'static + Copy,
|
||||
T: 'static + Pod,
|
||||
F: FnOnce(BufferMapAsyncResult<&mut [T]>) + 'static,
|
||||
{
|
||||
let type_size = std::mem::size_of::<T>() as BufferAddress;
|
||||
@@ -891,6 +895,7 @@ impl Buffer {
|
||||
data: *mut u8,
|
||||
user_data: *mut u8,
|
||||
) where
|
||||
T: Pod,
|
||||
F: FnOnce(BufferMapAsyncResult<&mut [T]>),
|
||||
{
|
||||
let user_data =
|
||||
|
||||
Reference in New Issue
Block a user