{mach,core}: move core sources to libs/core

Signed-off-by: Stephen Gutekanst <stephen@hexops.com>
This commit is contained in:
Stephen Gutekanst 2023-01-24 00:11:19 -07:00 committed by Stephen Gutekanst
parent 562b908c84
commit 9bbada90b2
18 changed files with 13 additions and 79 deletions

View file

@ -0,0 +1,62 @@
const builtin = @import("builtin");
pub usingnamespace if (builtin.cpu.arch == .wasm32)
@import("platform/wasm.zig")
else
@import("platform/native.zig");
// Verifies that a platform implementation exposes the expected function declarations.
comptime {
assertHasDecl(@This(), "entry");
assertHasDecl(@This(), "Core");
assertHasDecl(@This(), "Timer");
// Core
assertHasDecl(@This().Core, "init");
assertHasDecl(@This().Core, "deinit");
assertHasDecl(@This().Core, "hasEvent");
assertHasDecl(@This().Core, "pollEvents");
assertHasDecl(@This().Core, "framebufferSize");
assertHasDecl(@This().Core, "setWaitTimeout");
assertHasDecl(@This().Core, "setTitle");
assertHasDecl(@This().Core, "setDisplayMode");
assertHasDecl(@This().Core, "displayMode");
assertHasDecl(@This().Core, "setBorder");
assertHasDecl(@This().Core, "border");
assertHasDecl(@This().Core, "setHeadless");
assertHasDecl(@This().Core, "headless");
assertHasDecl(@This().Core, "setVSync");
assertHasDecl(@This().Core, "vsync");
assertHasDecl(@This().Core, "setSize");
assertHasDecl(@This().Core, "size");
assertHasDecl(@This().Core, "setSizeLimit");
assertHasDecl(@This().Core, "sizeLimit");
assertHasDecl(@This().Core, "setCursorMode");
assertHasDecl(@This().Core, "cursorMode");
assertHasDecl(@This().Core, "setCursorShape");
assertHasDecl(@This().Core, "cursorShape");
assertHasDecl(@This().Core, "adapter");
assertHasDecl(@This().Core, "device");
assertHasDecl(@This().Core, "swapChain");
assertHasDecl(@This().Core, "descriptor");
// Timer
assertHasDecl(@This().Timer, "start");
assertHasDecl(@This().Timer, "read");
assertHasDecl(@This().Timer, "reset");
assertHasDecl(@This().Timer, "lap");
}
fn assertHasDecl(comptime T: anytype, comptime name: []const u8) void {
if (!@hasDecl(T, name)) @compileError("Core missing declaration: " ++ name);
}