@@ -4,46 +4,43 @@ const astgen = @import("astgen.zig");
44
55pub const std_options = .{ .log_level = .err };
66
7- const mem = std . mem ;
7+ export fn zig_fuzz_init () void {}
88
9- // const toggle_me = std.mem.backend_can_use_eql_bytes;
10- // comptime {
11- // std.debug.assert(toggle_me == false);
12- // }
9+ export fn zig_fuzz_test (buf : [* ]u8 , len : isize ) void {
10+ var gpa_impl : std .heap .GeneralPurposeAllocator (.{}) = .{};
11+ defer std .debug .assert (gpa_impl .deinit () == .ok );
1312
14- var gpa_impl : std .heap .GeneralPurposeAllocator (.{}) = .{};
15- export fn zig_fuzz_test_direct (buf : [* ]u8 , len : isize ) void {
1613 const gpa = gpa_impl .allocator ();
1714 const src = buf [0.. @intCast (len )];
1815
1916 const html_ast = super .html .Ast .init (gpa , src , .superhtml ) catch unreachable ;
2017 defer html_ast .deinit (gpa );
2118
22- if (html_ast .errors .len == 0 ) {
23- const super_ast = super .Ast .init (gpa , html_ast , src ) catch unreachable ;
24- defer super_ast .deinit (gpa );
25- }
26-
2719 // if (html_ast.errors.len == 0) {
28- // var out = std.ArrayList(u8) .init(gpa) ;
29- // defer out .deinit();
30- // html_ast.render(src, out.writer()) catch unreachable;
20+ // const super_ast = super.Ast .init(gpa, html_ast, src) catch unreachable ;
21+ // defer super_ast .deinit(gpa );
22+ // }
3123
32- // eqlIgnoreWhitespace(src, out.items);
24+ if (html_ast .errors .len == 0 ) {
25+ var out = std .ArrayList (u8 ).init (gpa );
26+ defer out .deinit ();
27+ html_ast .render (src , out .writer ()) catch unreachable ;
3328
34- // var full_circle = std.ArrayList(u8).init(gpa);
35- // defer full_circle.deinit();
36- // html_ast.render(out.items, full_circle.writer()) catch unreachable;
29+ eqlIgnoreWhitespace (src , out .items );
3730
38- // std.debug.assert(std.mem.eql(u8, out.items, full_circle.items));
31+ var full_circle = std .ArrayList (u8 ).init (gpa );
32+ defer full_circle .deinit ();
33+ html_ast .render (out .items , full_circle .writer ()) catch unreachable ;
3934
40- // const super_ast = super.Ast.init(gpa, html_ast, src) catch unreachable;
41- // defer super_ast.deinit(gpa);
42- // }
35+ std .debug .assert (std .mem .eql (u8 , out .items , full_circle .items ));
4336
37+ const super_ast = super .Ast .init (gpa , html_ast , src ) catch unreachable ;
38+ defer super_ast .deinit (gpa );
39+ }
4440}
4541
4642export fn zig_fuzz_test_astgen (buf : [* ]u8 , len : isize ) void {
43+ var gpa_impl : std .heap .GeneralPurposeAllocator (.{}) = .{};
4744 const gpa = gpa_impl .allocator ();
4845 const astgen_src = buf [0.. @intCast (len )];
4946
0 commit comments