authorgravatar for kappaloris@gmail.comLoris Cro <kappaloris@gmail.com> 2022-03-09 18:46:55+01:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-07-19 19:10:11-07:00
log4f949163a509e32f0fc658c2c72d918c92c14f0f
treeeafdcd2388a6a515e14c4adf17230c2aea02ad98
parent056ba8e57c9c2f4cfc6e72303af19a6476205a6f

autodoc: add support for enum literals


1 files changed, 11 insertions(+), 1 deletions(-)

src/Autodoc.zig+11-1
......@@ -540,6 +540,7 @@ const DocData = struct {
540540 },
541541 array: Array,
542542 call: usize, // index in `calls`
543 enumLiteral: []const u8,
543544
544545 const Struct = struct {
545546 typeRef: TypeRef,
......@@ -613,6 +614,11 @@ const DocData = struct {
613614 options,
614615 w,
615616 ),
617 .enumLiteral => |v| try std.json.stringify(
618 struct { @"enumLiteral": []const u8 }{ .@"enumLiteral" = v },
619 options,
620 w,
621 ),
616622
617623 // try w.print("{ len: {},\n", .{v.len});
618624
......@@ -685,7 +691,11 @@ fn walkInstruction(
685691
686692 return new_file_walk_result;
687693 },
688
694 .enum_literal => {
695 const str_tok = data[inst_index].str_tok;
696 const literal = file.zir.nullTerminatedString(str_tok.start);
697 return DocData.WalkResult{ .enumLiteral = literal };
698 },
689699 .int => {
690700 const int = data[inst_index].int;
691701 return DocData.WalkResult{