From 99dc89b4f8a69af2e48b5c20eb7094b848749d42 Mon Sep 17 00:00:00 2001 From: Alex Gaynor Date: Fri, 28 Jun 2019 12:52:00 -0400 Subject: [PATCH] Added benchmarks of using codepoint indices --- bench_test.go | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/bench_test.go b/bench_test.go index 01b5bb1..48a6178 100644 --- a/bench_test.go +++ b/bench_test.go @@ -51,6 +51,26 @@ func BenchmarkUnmarshal_MixedData_100000(b *testing.B) { } } +func BenchmarkDecode_CodePoints_MixedData_1_Ascii(b *testing.B) { + data := []byte(` foo foo 42 42 42 42 42 42 42 42 4.2 4.2 4.2 4.2`) + var v mixedData + for i := 0; i < b.N; i++ { + d := NewDecoder(bytes.NewReader(data)) + d.SetUseCodepointIndices(true) + _ = d.Decode(&v) + } +} + +func BenchmarkDecode_CodePoints_MixedData_1_UTF8(b *testing.B) { + data := []byte(` f☃☃ f☃☃ 42 42 42 42 42 42 42 42 4.2 4.2 4.2 4.2`) + var v mixedData + for i := 0; i < b.N; i++ { + d := NewDecoder(bytes.NewReader(data)) + d.SetUseCodepointIndices(true) + _ = d.Decode(&v) + } +} + func BenchmarkUnmarshal_String(b *testing.B) { data := []byte(`foo `) var v struct {