diff --git a/examples/core-custom-entrypoint/App.zig b/examples/core-custom-entrypoint/App.zig index 52243037..c2c006e1 100644 --- a/examples/core-custom-entrypoint/App.zig +++ b/examples/core-custom-entrypoint/App.zig @@ -5,7 +5,7 @@ const gpu = mach.gpu; pub const name = .app; pub const Mod = mach.Mod(@This()); -pub const local_events = .{ +pub const events = .{ .init = .{ .handler = init }, .deinit = .{ .handler = deinit }, .tick = .{ .handler = tick }, diff --git a/examples/custom-renderer/App.zig b/examples/custom-renderer/App.zig index e9dab44b..62f9ab02 100644 --- a/examples/custom-renderer/App.zig +++ b/examples/custom-renderer/App.zig @@ -22,7 +22,7 @@ pub const components = .{ .follower = .{ .type = void }, }; -pub const local_events = .{ +pub const events = .{ .init = .{ .handler = init }, .deinit = .{ .handler = deinit }, .tick = .{ .handler = tick }, diff --git a/examples/custom-renderer/Renderer.zig b/examples/custom-renderer/Renderer.zig index 5c2476e2..e409a8f7 100644 --- a/examples/custom-renderer/Renderer.zig +++ b/examples/custom-renderer/Renderer.zig @@ -27,7 +27,7 @@ pub const components = .{ .scale = .{ .type = f32 }, }; -pub const local_events = .{ +pub const events = .{ .init = .{ .handler = init }, .deinit = .{ .handler = deinit }, .render_frame = .{ .handler = renderFrame }, diff --git a/examples/glyphs/App.zig b/examples/glyphs/App.zig index ff9f8ffb..7f9749fe 100644 --- a/examples/glyphs/App.zig +++ b/examples/glyphs/App.zig @@ -32,7 +32,7 @@ frame_render_pass: *gpu.RenderPassEncoder = undefined, pub const name = .app; pub const Mod = mach.Mod(@This()); -pub const local_events = .{ +pub const events = .{ .init = .{ .handler = init }, .deinit = .{ .handler = deinit }, .tick = .{ .handler = tick }, diff --git a/examples/glyphs/Glyphs.zig b/examples/glyphs/Glyphs.zig index 785f8889..430a0f90 100644 --- a/examples/glyphs/Glyphs.zig +++ b/examples/glyphs/Glyphs.zig @@ -8,7 +8,7 @@ const assets = @import("assets"); pub const name = .glyphs; pub const Mod = mach.Mod(@This()); -pub const local_events = .{ +pub const events = .{ .init = .{ .handler = init }, .deinit = .{ .handler = deinit }, .prepare = .{ .handler = prepare }, diff --git a/examples/piano/App.zig b/examples/piano/App.zig index 15c52350..feaa9993 100644 --- a/examples/piano/App.zig +++ b/examples/piano/App.zig @@ -23,7 +23,7 @@ var gpa = std.heap.GeneralPurposeAllocator(.{}){}; pub const name = .app; pub const Mod = mach.Mod(@This()); -pub const local_events = .{ +pub const events = .{ .init = .{ .handler = init }, .deinit = .{ .handler = deinit }, .tick = .{ .handler = tick }, diff --git a/examples/sprite/App.zig b/examples/sprite/App.zig index c098f88a..e8757fc5 100644 --- a/examples/sprite/App.zig +++ b/examples/sprite/App.zig @@ -36,7 +36,7 @@ frame_render_pass: *gpu.RenderPassEncoder = undefined, pub const name = .app; pub const Mod = mach.Mod(@This()); -pub const local_events = .{ +pub const events = .{ .init = .{ .handler = init }, .deinit = .{ .handler = deinit }, .tick = .{ .handler = tick }, diff --git a/examples/text/App.zig b/examples/text/App.zig index df953b0a..c69cf485 100644 --- a/examples/text/App.zig +++ b/examples/text/App.zig @@ -37,7 +37,7 @@ frame_render_pass: *gpu.RenderPassEncoder = undefined, pub const name = .app; pub const Mod = mach.Mod(@This()); -pub const local_events = .{ +pub const events = .{ .init = .{ .handler = init }, .deinit = .{ .handler = deinit }, .tick = .{ .handler = tick }, diff --git a/src/Audio.zig b/src/Audio.zig index 1cb7f5c8..385d1ed8 100644 --- a/src/Audio.zig +++ b/src/Audio.zig @@ -12,7 +12,7 @@ pub const components = .{ .index = .{ .type = usize }, }; -pub const local_events = .{ +pub const events = .{ .init = .{ .handler = init }, .deinit = .{ .handler = deinit }, .audio_tick = .{ .handler = audioTick }, diff --git a/src/Core.zig b/src/Core.zig index 35f6a161..f1e3b42d 100644 --- a/src/Core.zig +++ b/src/Core.zig @@ -10,7 +10,7 @@ pub const name = .mach_core; pub const Mod = mach.Mod(@This()); -pub const local_events = .{ +pub const events = .{ .update = .{ .handler = update, .description = \\ Send this when window entities have been updated and you want the new values respected. }, diff --git a/src/gfx/Sprite.zig b/src/gfx/Sprite.zig index 2ef67374..968aab2f 100644 --- a/src/gfx/Sprite.zig +++ b/src/gfx/Sprite.zig @@ -38,7 +38,7 @@ pub const components = .{ }, }; -pub const local_events = .{ +pub const events = .{ .update = .{ .handler = update }, }; diff --git a/src/gfx/SpritePipeline.zig b/src/gfx/SpritePipeline.zig index 17c10298..479bea1b 100644 --- a/src/gfx/SpritePipeline.zig +++ b/src/gfx/SpritePipeline.zig @@ -59,7 +59,7 @@ pub const components = .{ .built = .{ .type = BuiltPipeline, .description = "internal" }, }; -pub const local_events = .{ +pub const events = .{ .init = .{ .handler = fn () void }, .deinit = .{ .handler = deinit }, .update = .{ .handler = update }, diff --git a/src/gfx/Text.zig b/src/gfx/Text.zig index 36929a0f..8700cd98 100644 --- a/src/gfx/Text.zig +++ b/src/gfx/Text.zig @@ -50,7 +50,7 @@ pub const components = .{ .built = .{ .type = BuiltText, .description = "internal" }, }; -pub const local_events = .{ +pub const events = .{ .update = .{ .handler = update }, }; diff --git a/src/gfx/TextPipeline.zig b/src/gfx/TextPipeline.zig index b220f882..32f3d8c6 100644 --- a/src/gfx/TextPipeline.zig +++ b/src/gfx/TextPipeline.zig @@ -60,7 +60,7 @@ pub const components = .{ .built = .{ .type = BuiltPipeline, .description = "internal" }, }; -pub const local_events = .{ +pub const events = .{ .init = .{ .handler = fn () void }, .deinit = .{ .handler = deinit }, .update = .{ .handler = update }, diff --git a/src/module/module.zig b/src/module/module.zig index 46c63a4f..c8cdcdba 100644 --- a/src/module/module.zig +++ b/src/module/module.zig @@ -81,7 +81,7 @@ fn validateModule(comptime M: type, comptime events: bool) void { if (@typeInfo(@TypeOf(M.name)) != .EnumLiteral) @compileError("mach: module must have `pub const name = .foobar;`, found type:" ++ @typeName(M.name)); if (events) { if (@hasDecl(M, "global_events")) validateEvents("mach: module ." ++ @tagName(M.name) ++ " global_events ", M.global_events); - if (@hasDecl(M, "local_events")) validateEvents("mach: module ." ++ @tagName(M.name) ++ " local_events ", M.local_events); + if (@hasDecl(M, "events")) validateEvents("mach: module ." ++ @tagName(M.name) ++ " events ", M.events); _ = ComponentTypesM(M); } } @@ -425,14 +425,14 @@ pub fn Modules(comptime modules: anytype) type { // TODO(important): DRY with callGlobal const M = @field(NamespacedModules(modules){}, @tagName(mod_name)); _ = ModuleInterface(M); // Validate the module - if (@hasDecl(M, "local_events")) inline for (@typeInfo(@TypeOf(M.local_events)).Struct.fields) |field| { + if (@hasDecl(M, "events")) inline for (@typeInfo(@TypeOf(M.events)).Struct.fields) |field| { comptime if (!std.mem.eql(u8, @tagName(ev_name), field.name)) continue; if (m.debug_trace) log.debug("trace: .{s}.{s}", .{ @tagName(M.name), @tagName(ev_name), }); - const handler = @field(M.local_events, @tagName(ev_name)).handler; + const handler = @field(M.events, @tagName(ev_name)).handler; if (@typeInfo(@TypeOf(handler)) == .Type) continue; // Pre-declaration of what args an event has, nothing to do. if (@typeInfo(@TypeOf(handler)) != .Fn) @compileError(std.fmt.comptimePrint("mach: module .{s} declares local event .{s} = .{{ .handler = T }}, expected fn but found: {s}", .{ @tagName(M.name), @@ -684,19 +684,19 @@ fn UninjectedArgsTuple(comptime Function: type) type { // TODO: tests fn LocalArgsM(comptime M: type, event_name: anytype) type { - return ArgsM(M, event_name, "local"); + return ArgsM(M, event_name, "events"); } // TODO: tests fn GlobalArgsM(comptime M: type, event_name: anytype) type { - return ArgsM(M, event_name, "global"); + return ArgsM(M, event_name, "global_events"); } fn ArgsM(comptime M: type, event_name: anytype, comptime which: anytype) type { _ = ModuleInterface(M); // Validate the module - if (!@hasDecl(M, which ++ "_events")) return @TypeOf(.{}); + if (!@hasDecl(M, which)) return @TypeOf(.{}); - const m_events = @field(M, which ++ "_events"); // M.local_events or M.global_events + const m_events = @field(M, which); // M.events or M.global_events inline for (@typeInfo(@TypeOf(m_events)).Struct.fields) |field| { comptime if (!std.mem.eql(u8, field.name, @tagName(event_name))) continue; if (!@hasField(@TypeOf(m_events), @tagName(event_name))) @compileError(std.fmt.comptimePrint("mach: module .{s} declares no {s} event .{s}", .{ @@ -730,7 +730,7 @@ fn LocalEventEnum(comptime modules: anytype) type { var i: u32 = 0; for (modules) |M| { _ = ModuleInterface(M); // Validate the module - if (@hasDecl(M, "local_events")) inline for (@typeInfo(@TypeOf(M.local_events)).Struct.fields) |field| { + if (@hasDecl(M, "events")) inline for (@typeInfo(@TypeOf(M.events)).Struct.fields) |field| { const exists_already = blk: { for (enum_fields) |existing| if (std.mem.eql(u8, existing.name, field.name)) break :blk true; break :blk false; @@ -757,7 +757,7 @@ fn LocalEventEnumM(comptime M: anytype) type { var enum_fields: []const std.builtin.Type.EnumField = &[0]std.builtin.Type.EnumField{}; var i: u32 = 0; _ = ModuleInterface(M); // Validate the module - if (@hasDecl(M, "local_events")) inline for (@typeInfo(@TypeOf(M.local_events)).Struct.fields) |field| { + if (@hasDecl(M, "events")) inline for (@typeInfo(@TypeOf(M.events)).Struct.fields) |field| { const exists_already = blk: { for (enum_fields) |existing| if (std.mem.eql(u8, existing.name, field.name)) break :blk true; break :blk false; @@ -1143,7 +1143,7 @@ test "event name" { .foo = .{ .handler = foo }, .bar = .{ .handler = bar }, }; - pub const local_events = .{ + pub const events = .{ .baz = .{ .handler = baz }, .bam = .{ .handler = bam }, }; @@ -1352,7 +1352,7 @@ test "event name calling" { pub const global_events = .{ .tick = .{ .handler = tick }, }; - pub const local_events = .{ + pub const events = .{ .update = .{ .handler = update }, .calc = .{ .handler = calc }, }; @@ -1374,7 +1374,7 @@ test "event name calling" { pub const global_events = .{ .tick = .{ .handler = tick }, }; - pub const local_events = .{ + pub const events = .{ .update = .{ .handler = update }, }; @@ -1463,7 +1463,7 @@ test "dispatch" { pub const global_events = .{ .tick = .{ .handler = tick }, }; - pub const local_events = .{ + pub const events = .{ .update = .{ .handler = update }, .update_with_struct_arg = .{ .handler = updateWithStructArg }, .calc = .{ .handler = calc }, @@ -1496,7 +1496,7 @@ test "dispatch" { .tick = .{ .handler = tick }, .frame_done = .{ .handler = fn (i32) void }, }; - pub const local_events = .{ + pub const events = .{ .update = .{ .handler = update }, .basic_args = .{ .handler = basicArgs }, .injected_args = .{ .handler = injectedArgs },