diff options
| author | Andrew Kelley <superjoe30@gmail.com> | 2018-04-30 19:27:14 -0400 |
|---|---|---|
| committer | Andrew Kelley <superjoe30@gmail.com> | 2018-04-30 19:27:14 -0400 |
| commit | 61a726c290a4e569ae28da59c94ba6a40df59a20 (patch) | |
| tree | 0e7429254e16a9c84055432448c65d334001b159 | |
| parent | 4cc1008c2d2b438b9847944898ad2d7cfbbdab8b (diff) | |
| download | zig-61a726c290a4e569ae28da59c94ba6a40df59a20.tar.gz zig-61a726c290a4e569ae28da59c94ba6a40df59a20.zip | |
zig fmt: comments in field decls
| -rw-r--r-- | std/zig/parser.zig | 3 | ||||
| -rw-r--r-- | std/zig/parser_test.zig | 13 |
2 files changed, 15 insertions, 1 deletions
diff --git a/std/zig/parser.zig b/std/zig/parser.zig index c1bae7f86f..1ea3021357 100644 --- a/std/zig/parser.zig +++ b/std/zig/parser.zig @@ -3525,6 +3525,7 @@ pub const Parser = struct { }, ast.Node.Id.StructField => { const field = @fieldParentPtr(ast.Node.StructField, "base", decl); + try self.renderComments(stream, &field.base, indent); if (field.visib_token) |visib_token| { try stream.print("{} ", self.tokenizer.getTokenSlice(visib_token)); } @@ -3534,6 +3535,7 @@ pub const Parser = struct { }, ast.Node.Id.UnionTag => { const tag = @fieldParentPtr(ast.Node.UnionTag, "base", decl); + try self.renderComments(stream, &tag.base, indent); try stream.print("{}", self.tokenizer.getTokenSlice(tag.name_token)); try stack.append(RenderState { .Text = "," }); @@ -3550,6 +3552,7 @@ pub const Parser = struct { }, ast.Node.Id.EnumTag => { const tag = @fieldParentPtr(ast.Node.EnumTag, "base", decl); + try self.renderComments(stream, &tag.base, indent); try stream.print("{}", self.tokenizer.getTokenSlice(tag.name_token)); try stack.append(RenderState { .Text = "," }); diff --git a/std/zig/parser_test.zig b/std/zig/parser_test.zig index e5e3c97526..5d4383d6ac 100644 --- a/std/zig/parser_test.zig +++ b/std/zig/parser_test.zig @@ -1,5 +1,16 @@ +test "zig fmt: doc comments before struct field" { + try testCanonical( + \\pub const Allocator = struct { + \\ /// Allocate byte_count bytes and return them in a slice, with the + \\ /// slice's pointer aligned at least to alignment bytes. + \\ allocFn: fn() void, + \\}; + \\ + ); +} + test "zig fmt: error set declaration" { - try testCanonical( + try testCanonical( \\const E = error{ \\ A, \\ B, |
