mirror of
https://github.com/ziglang/zig.git
synced 2026-02-14 21:38:33 +00:00
parent
c029f4bfc4
commit
85ca611af1
@ -1,3 +1,12 @@
|
||||
test "zig fmt: nested struct literal with one item" {
|
||||
try testCanonical(
|
||||
\\const a = foo{
|
||||
\\ .item = bar{ .a = b },
|
||||
\\};
|
||||
\\
|
||||
);
|
||||
}
|
||||
|
||||
test "zig fmt: switch cases trailing comma" {
|
||||
try testTransform(
|
||||
\\fn switch_cases(x: i32) void {
|
||||
|
||||
@ -431,12 +431,18 @@ fn renderExpression(allocator: &mem.Allocator, stream: var, tree: &ast.Tree, ind
|
||||
return;
|
||||
}
|
||||
|
||||
if (field_inits.len == 1) {
|
||||
const field_init = field_inits.at(0).*;
|
||||
if (field_inits.len == 1) blk: {
|
||||
const field_init = ??field_inits.at(0).*.cast(ast.Node.FieldInitializer);
|
||||
|
||||
if (field_init.expr.cast(ast.Node.SuffixOp)) |nested_suffix_op| {
|
||||
if (nested_suffix_op.op == ast.Node.SuffixOp.Op.StructInitializer) {
|
||||
break :blk;
|
||||
}
|
||||
}
|
||||
|
||||
try renderExpression(allocator, stream, tree, indent, suffix_op.lhs, Space.None);
|
||||
try renderToken(tree, stream, lbrace, indent, Space.Space);
|
||||
try renderExpression(allocator, stream, tree, indent, field_init, Space.Space);
|
||||
try renderExpression(allocator, stream, tree, indent, &field_init.base, Space.Space);
|
||||
try renderToken(tree, stream, suffix_op.rtoken, indent, space);
|
||||
return;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user