mirror of
https://codeberg.org/ziglang/zig.git
synced 2025-12-06 13:54:21 +00:00
TypedValue: fix printing some nested things
This commit is contained in:
parent
7680c5330c
commit
eda58a2f46
1 changed files with 16 additions and 8 deletions
|
|
@ -367,18 +367,26 @@ pub fn print(
|
|||
try writer.writeAll(".?");
|
||||
},
|
||||
.elem => |elem| {
|
||||
try print(.{
|
||||
.ty = Type.fromInterned(ip.typeOf(elem.base)),
|
||||
.val = Value.fromInterned(elem.base),
|
||||
}, writer, level - 1, mod);
|
||||
if (level == 0) {
|
||||
try writer.writeAll("(...)");
|
||||
} else {
|
||||
try print(.{
|
||||
.ty = Type.fromInterned(ip.typeOf(elem.base)),
|
||||
.val = Value.fromInterned(elem.base),
|
||||
}, writer, level - 1, mod);
|
||||
}
|
||||
try writer.print("[{}]", .{elem.index});
|
||||
},
|
||||
.field => |field| {
|
||||
const ptr_container_ty = Type.fromInterned(ip.typeOf(field.base));
|
||||
try print(.{
|
||||
.ty = ptr_container_ty,
|
||||
.val = Value.fromInterned(field.base),
|
||||
}, writer, level - 1, mod);
|
||||
if (level == 0) {
|
||||
try writer.writeAll("(...)");
|
||||
} else {
|
||||
try print(.{
|
||||
.ty = ptr_container_ty,
|
||||
.val = Value.fromInterned(field.base),
|
||||
}, writer, level - 1, mod);
|
||||
}
|
||||
|
||||
const container_ty = ptr_container_ty.childType(mod);
|
||||
switch (container_ty.zigTypeTag(mod)) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue