summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTaylan Kammer <taylan.kammer@gmail.com>2025-02-28 22:02:39 +0100
committerTaylan Kammer <taylan.kammer@gmail.com>2025-02-28 22:02:39 +0100
commit0b94b2bfa5b2aa284156d39d798d300949425b1f (patch)
tree846d8a67e98d2fe3279be9a270af0f713f4316ca
parent472f3e89a61ec51218cefe65305ec6f0a0d95fbf (diff)
add parse bench
-rw-r--r--src/libzisp.zig12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/libzisp.zig b/src/libzisp.zig
index b2c8283..1a4789d 100644
--- a/src/libzisp.zig
+++ b/src/libzisp.zig
@@ -298,6 +298,18 @@ test "parse4" {
try std.testing.expectEqualStrings("bar", f.slice());
}
+test "parse bench" {
+ var timer = try std.time.Timer.start();
+ std.mem.doNotOptimizeAway(timer.lap());
+ for (0..1000) |i| {
+ _ = i;
+ std.mem.doNotOptimizeAway(io.parser.parse("(a b c (x y z (a b c (x y z (a b c (x y z (a b c (x y z (a b c (x y z (a b c (x y z (a b c (x y z) d e f) d e f) d e f) d e f) d e f) d e f) d e f) d e f) d e f) d e f) d e f) 1 2 3))"));
+ }
+ const ns: f64 = @floatFromInt(timer.lap());
+ const secs = ns / 1_000_000_000;
+ std.debug.print("parse: {d:.3}s\n", .{secs});
+}
+
test "unparse" {
const unparse = io.unparser.unparse;