From af803da5c800b555a413a4323399daaf83f5f75c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adri=C3=A0=20Arrufat?= Date: Wed, 11 Mar 2026 16:21:43 +0900 Subject: [PATCH] cdp.lp: use enum for getSemanticTree format param Leverages std.json.parse to automatically validate the format param into a type-safe enum. --- src/cdp/domains/lp.zig | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/cdp/domains/lp.zig b/src/cdp/domains/lp.zig index 3cb876e8..2026b17d 100644 --- a/src/cdp/domains/lp.zig +++ b/src/cdp/domains/lp.zig @@ -44,7 +44,7 @@ pub fn processMessage(cmd: anytype) !void { fn getSemanticTree(cmd: anytype) !void { const Params = struct { - format: ?[]const u8 = null, + format: ?enum { text } = null, prune: ?bool = null, }; const params = (try cmd.params(Params)) orelse Params{}; @@ -62,8 +62,8 @@ fn getSemanticTree(cmd: anytype) !void { }; if (params.format) |format| { - if (std.mem.eql(u8, format, "text")) { - st.prune = params.prune orelse true; // text format defaults to pruned + if (format == .text) { + st.prune = params.prune orelse true; var aw: std.Io.Writer.Allocating = .init(cmd.arena); defer aw.deinit(); try st.textStringify(&aw.writer);