authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-04-30 19:27:14-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-04-30 19:27:14-04:00
log61a726c290a4e569ae28da59c94ba6a40df59a20
tree0e7429254e16a9c84055432448c65d334001b159
parent4cc1008c2d2b438b9847944898ad2d7cfbbdab8b

zig fmt: comments in field decls


2 files changed, 15 insertions(+), 1 deletions(-)

std/zig/parser.zig+3
......@@ -3525,6 +3525,7 @@ pub const Parser = struct {
35253525 },
35263526 ast.Node.Id.StructField => {
35273527 const field = @fieldParentPtr(ast.Node.StructField, "base", decl);
3528 try self.renderComments(stream, &field.base, indent);
35283529 if (field.visib_token) |visib_token| {
35293530 try stream.print("{} ", self.tokenizer.getTokenSlice(visib_token));
35303531 }
......@@ -3534,6 +3535,7 @@ pub const Parser = struct {
35343535 },
35353536 ast.Node.Id.UnionTag => {
35363537 const tag = @fieldParentPtr(ast.Node.UnionTag, "base", decl);
3538 try self.renderComments(stream, &tag.base, indent);
35373539 try stream.print("{}", self.tokenizer.getTokenSlice(tag.name_token));
35383540
35393541 try stack.append(RenderState { .Text = "," });
......@@ -3550,6 +3552,7 @@ pub const Parser = struct {
35503552 },
35513553 ast.Node.Id.EnumTag => {
35523554 const tag = @fieldParentPtr(ast.Node.EnumTag, "base", decl);
3555 try self.renderComments(stream, &tag.base, indent);
35533556 try stream.print("{}", self.tokenizer.getTokenSlice(tag.name_token));
35543557
35553558 try stack.append(RenderState { .Text = "," });
std/zig/parser_test.zig+12-1
......@@ -1,5 +1,16 @@
1test "zig fmt: doc comments before struct field" {
2 try testCanonical(
3 \\pub const Allocator = struct {
4 \\ /// Allocate byte_count bytes and return them in a slice, with the
5 \\ /// slice's pointer aligned at least to alignment bytes.
6 \\ allocFn: fn() void,
7 \\};
8 \\
9 );
10}
11
112test "zig fmt: error set declaration" {
2 try testCanonical(
13 try testCanonical(
314 \\const E = error{
415 \\ A,
516 \\ B,