core/gpu: start on usingnamespace issue and new zig split usage

This commit is contained in:
xdBronch 2023-06-04 14:10:43 -04:00 committed by Stephen Gutekanst
parent 6135071a0c
commit aa69567a1b
4 changed files with 38 additions and 59 deletions

View file

@ -235,7 +235,7 @@ fn handleConn(self: *Builder, conn: std.net.StreamServer.Connection) void {
else => sendError(conn.stream, .bad_request), else => sendError(conn.stream, .bad_request),
}; };
}; };
var first_line_iter = std.mem.split(u8, first_line, " "); var first_line_iter = std.mem.splitScalar(u8, first_line, ' ');
_ = first_line_iter.next(); // skip method _ = first_line_iter.next(); // skip method
if (first_line_iter.next()) |uri_str| { if (first_line_iter.next()) |uri_str| {
const uri = std.Uri.parseWithoutScheme(uri_str) catch { const uri = std.Uri.parseWithoutScheme(uri_str) catch {
@ -300,7 +300,7 @@ fn notify(self: *Builder, stream: std.net.Stream) void {
}; };
switch (self.status) { switch (self.status) {
.compile_error => |msg| { .compile_error => |msg| {
var lines = std.mem.split(u8, msg, "\n"); var lines = std.mem.splitScalar(u8, msg, '\n');
while (lines.next()) |line| { while (lines.next()) |line| {
stream.writer().print("data: {s}\n", .{line}) catch { stream.writer().print("data: {s}\n", .{line}) catch {
stream.close(); stream.close();

View file

@ -48,7 +48,7 @@ pub fn main() !void {
std.os.exit(1); std.os.exit(1);
}; };
} else if (argOption("-watch-path")) |value| { } else if (argOption("-watch-path")) |value| {
var paths = std.mem.split(u8, value, ","); var paths = std.mem.splitScalar(u8, value, ',');
builder.watch_paths = try allocator.alloc([]const u8, std.mem.count(u8, value, ",") + 1); builder.watch_paths = try allocator.alloc([]const u8, std.mem.count(u8, value, ",") + 1);
for (0..255) |i| { for (0..255) |i| {
const path = paths.next() orelse break; const path = paths.next() orelse break;

View file

@ -1,10 +1,13 @@
const builtin = @import("builtin"); const builtin = @import("builtin");
pub usingnamespace if (builtin.cpu.arch == .wasm32) const platform = if (builtin.cpu.arch == .wasm32)
@import("platform/wasm.zig") @import("platform/wasm.zig")
else else
@import("platform/native.zig"); @import("platform/native.zig");
pub const Core = platform.Core;
pub const Timer = platform.Timer;
// Verifies that a platform implementation exposes the expected function declarations. // Verifies that a platform implementation exposes the expected function declarations.
comptime { comptime {
assertHasDecl(@This(), "Core"); assertHasDecl(@This(), "Core");

View file

@ -1,77 +1,53 @@
const std = @import("std"); const std = @import("std");
pub usingnamespace @import("adapter.zig"); pub const Adapter = @import("adapter.zig").Adapter;
pub usingnamespace @import("bind_group.zig"); pub const BindGroup = @import("bind_group.zig").BindGroup;
pub usingnamespace @import("bind_group_layout.zig"); pub const BindGroupLayout = @import("bind_group_layout.zig").BindGroupLayout;
pub usingnamespace @import("buffer.zig"); pub const Buffer = @import("buffer.zig").Buffer;
pub usingnamespace @import("callbacks.zig"); pub usingnamespace @import("callbacks.zig");
pub usingnamespace @import("command_buffer.zig"); pub const CommandBuffer = @import("command_buffer.zig").CommandBuffer;
pub usingnamespace @import("command_encoder.zig"); pub const CommandEncoder = @import("command_encoder.zig").CommandEncoder;
pub usingnamespace @import("compute_pass_encoder.zig"); pub const ComputePassEncoder = @import("compute_pass_encoder.zig").ComputePassEncoder;
pub usingnamespace @import("compute_pipeline.zig"); pub const ComputePipeline = @import("compute_pipeline.zig").ComputePipeline;
pub usingnamespace @import("device.zig"); pub const Device = @import("device.zig").Device;
pub usingnamespace @import("external_texture.zig"); pub const ExternalTexture = @import("external_texture.zig").ExternalTexture;
pub usingnamespace @import("instance.zig"); pub const Instance = @import("instance.zig").Instance;
pub usingnamespace @import("pipeline_layout.zig"); pub const PipelineLayout = @import("pipeline_layout.zig").PipelineLayout;
pub usingnamespace @import("query_set.zig"); pub const QuerySet = @import("query_set.zig").QuerySet;
pub usingnamespace @import("queue.zig"); pub const Queue = @import("queue.zig").Queue;
pub usingnamespace @import("render_bundle.zig"); pub const RenderBundle = @import("render_bundle.zig").RenderBundle;
pub usingnamespace @import("render_bundle_encoder.zig"); pub const RenderBundleEncoder = @import("render_bundle_encoder.zig").RenderBundleEncoder;
pub usingnamespace @import("render_pass_encoder.zig"); pub const RenderPassEncoder = @import("render_pass_encoder.zig").RenderPassEncoder;
pub usingnamespace @import("render_pipeline.zig"); pub const RenderPipeline = @import("render_pipeline.zig").RenderPipeline;
pub usingnamespace @import("sampler.zig"); pub const Sampler = @import("sampler.zig").Sampler;
pub usingnamespace @import("shader_module.zig"); pub const ShaderModule = @import("shader_module.zig").ShaderModule;
pub usingnamespace @import("surface.zig"); pub const Surface = @import("surface.zig").Surface;
pub usingnamespace @import("swap_chain.zig"); pub const SwapChain = @import("swap_chain.zig").SwapChain;
pub usingnamespace @import("texture.zig"); pub const Texture = @import("texture.zig").Texture;
pub usingnamespace @import("texture_view.zig"); pub const TextureView = @import("texture_view.zig").TextureView;
pub const dawn = @import("dawn.zig"); pub const dawn = @import("dawn.zig");
pub usingnamespace @import("types.zig"); pub usingnamespace @import("types.zig");
pub usingnamespace @import("interface.zig");
const instance = @import("instance.zig"); const instance = @import("instance.zig");
const device = @import("device.zig"); const device = @import("device.zig");
const interface = @import("interface.zig"); const interface = @import("interface.zig");
const types = @import("types.zig"); const types = @import("types.zig");
pub const Impl = interface.Impl;
pub const StubInterface = interface.StubInterface;
pub const Export = interface.Export;
pub const Interface = interface.Interface;
pub inline fn createInstance(descriptor: ?*const instance.Instance.Descriptor) ?*instance.Instance { pub inline fn createInstance(descriptor: ?*const instance.Instance.Descriptor) ?*instance.Instance {
return interface.Impl.createInstance(descriptor); return Impl.createInstance(descriptor);
} }
pub inline fn getProcAddress(_device: *device.Device, proc_name: [*:0]const u8) ?types.Proc { pub inline fn getProcAddress(_device: *device.Device, proc_name: [*:0]const u8) ?types.Proc {
return interface.Impl.getProcAddress(_device, proc_name); return Impl.getProcAddress(_device, proc_name);
} }
test { test {
std.testing.refAllDeclsRecursive(@This()); std.testing.refAllDeclsRecursive(@This());
// Due to usingnamespace imports, these are not referenceable via @This()
std.testing.refAllDeclsRecursive(@import("adapter.zig"));
std.testing.refAllDeclsRecursive(@import("bind_group.zig"));
std.testing.refAllDeclsRecursive(@import("bind_group_layout.zig"));
std.testing.refAllDeclsRecursive(@import("buffer.zig"));
std.testing.refAllDeclsRecursive(@import("command_buffer.zig"));
std.testing.refAllDeclsRecursive(@import("command_encoder.zig"));
std.testing.refAllDeclsRecursive(@import("compute_pass_encoder.zig"));
std.testing.refAllDeclsRecursive(@import("compute_pipeline.zig"));
std.testing.refAllDeclsRecursive(@import("device.zig"));
std.testing.refAllDeclsRecursive(@import("external_texture.zig"));
std.testing.refAllDeclsRecursive(@import("instance.zig"));
std.testing.refAllDeclsRecursive(@import("pipeline_layout.zig"));
std.testing.refAllDeclsRecursive(@import("query_set.zig"));
std.testing.refAllDeclsRecursive(@import("queue.zig"));
std.testing.refAllDeclsRecursive(@import("render_bundle.zig"));
std.testing.refAllDeclsRecursive(@import("render_bundle_encoder.zig"));
std.testing.refAllDeclsRecursive(@import("render_pass_encoder.zig"));
std.testing.refAllDeclsRecursive(@import("render_pipeline.zig"));
std.testing.refAllDeclsRecursive(@import("sampler.zig"));
std.testing.refAllDeclsRecursive(@import("shader_module.zig"));
std.testing.refAllDeclsRecursive(@import("surface.zig"));
std.testing.refAllDeclsRecursive(@import("swap_chain.zig"));
std.testing.refAllDeclsRecursive(@import("texture.zig"));
std.testing.refAllDeclsRecursive(@import("texture_view.zig"));
std.testing.refAllDeclsRecursive(@import("types.zig"));
std.testing.refAllDeclsRecursive(@import("interface.zig"));
} }