aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2021-02-09 21:17:43 -0700
committerAndrew Kelley <andrew@ziglang.org>2021-02-09 21:17:43 -0700
commit25bcf4eb99d367965b0f699faff5d3fd1d991941 (patch)
treef2bbf26bdbf031d5e3edfc708038e96a8fe28994 /lib
parent7295d4b8079b5cf3fcdbb81dd9e129f3f0f139aa (diff)
downloadzig-25bcf4eb99d367965b0f699faff5d3fd1d991941.tar.gz
zig-25bcf4eb99d367965b0f699faff5d3fd1d991941.zip
zig fmt: grouped expressions
Diffstat (limited to 'lib')
-rw-r--r--lib/std/zig/parser_test.zig7
-rw-r--r--lib/std/zig/render.zig16
2 files changed, 12 insertions, 11 deletions
diff --git a/lib/std/zig/parser_test.zig b/lib/std/zig/parser_test.zig
index 7c7ecd2499..73c4458352 100644
--- a/lib/std/zig/parser_test.zig
+++ b/lib/std/zig/parser_test.zig
@@ -291,6 +291,13 @@ test "zig fmt: break from block" {
);
}
+test "zig fmt: grouped expressions (parentheses)" {
+ try testCanonical(
+ \\const r = (x + y) * (a + b);
+ \\
+ );
+}
+
//test "zig fmt: c pointer type" {
// try testCanonical(
// \\pub extern fn repro() [*c]const u8;
diff --git a/lib/std/zig/render.zig b/lib/std/zig/render.zig
index dd1c6d62f8..b1ff7ff64b 100644
--- a/lib/std/zig/render.zig
+++ b/lib/std/zig/render.zig
@@ -517,17 +517,11 @@ fn renderExpression(ais: *Ais, tree: ast.Tree, node: ast.Node.Index, space: Spac
}
},
- .GroupedExpression => unreachable, // TODO
- //.GroupedExpression => {
- // const grouped_expr = @fieldParentPtr(ast.Node.GroupedExpression, "base", base);
-
- // try renderToken(ais, tree, grouped_expr.lparen, Space.None);
- // {
- // ais.pushIndentOneShot();
- // try renderExpression(ais, tree, grouped_expr.expr, Space.None);
- // }
- // return renderToken(ais, tree, grouped_expr.rparen, space);
- //},
+ .GroupedExpression => {
+ try renderToken(ais, tree, main_tokens[node], .None);
+ try renderExpression(ais, tree, datas[node].lhs, .None);
+ return renderToken(ais, tree, datas[node].rhs, space);
+ },
.ContainerDecl,
.ContainerDeclComma,