From 4f949163a509e32f0fc658c2c72d918c92c14f0f Mon Sep 17 00:00:00 2001 From: Loris Cro Date: Wed, 9 Mar 2022 18:46:55 +0100 Subject: [PATCH] autodoc: add support for enum literals --- src/Autodoc.zig | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/Autodoc.zig b/src/Autodoc.zig index 7eb9e38ee5..f935585c77 100644 --- a/src/Autodoc.zig +++ b/src/Autodoc.zig @@ -540,6 +540,7 @@ const DocData = struct { }, array: Array, call: usize, // index in `calls` + enumLiteral: []const u8, const Struct = struct { typeRef: TypeRef, @@ -613,6 +614,11 @@ const DocData = struct { options, w, ), + .enumLiteral => |v| try std.json.stringify( + struct { @"enumLiteral": []const u8 }{ .@"enumLiteral" = v }, + options, + w, + ), // try w.print("{ len: {},\n", .{v.len}); @@ -685,7 +691,11 @@ fn walkInstruction( return new_file_walk_result; }, - + .enum_literal => { + const str_tok = data[inst_index].str_tok; + const literal = file.zir.nullTerminatedString(str_tok.start); + return DocData.WalkResult{ .enumLiteral = literal }; + }, .int => { const int = data[inst_index].int; return DocData.WalkResult{