gpu: simplify callback context types

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
Stephen Gutekanst 2022-07-31 16:01:40 -07:00 committed by Stephen Gutekanst
parent 48c8964679
commit 4ed932be0f
6 changed files with 33 additions and 33 deletions

View file

@ -94,10 +94,10 @@ pub const Buffer = opaque {
mode: MapModeFlags,
offset: usize,
size: usize,
comptime Context: type,
comptime callback: fn (status: MapAsyncStatus, ctx: Context) callconv(.Inline) void,
context: Context,
context: anytype,
comptime callback: fn (status: MapAsyncStatus, ctx: @TypeOf(context)) callconv(.Inline) void,
) void {
const Context = @TypeOf(context);
const Helper = struct {
pub fn callback(status: MapAsyncStatus, userdata: ?*anyopaque) callconv(.C) void {
callback(status, if (Context == void) {} else @ptrCast(Context, userdata));