[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:
bors[bot]
2019-06-24 14:59:18 +00:00

View File

@@ -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 =