diff options
author | Albert Nigmatzianov <albertnigma@gmail.com> | 2017-03-20 10:47:46 +0500 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2017-03-20 09:02:35 +0100 |
commit | d3cd68e65646c77da94a9322758519e2ef821ec6 (patch) | |
tree | 37b177cea59f338348c771a62d7d3d9c94eb959c /parser | |
parent | 68f4cd829ee32a2449c4fbea392ace9f7f8022cf (diff) |
parser: Improve TOML frontmatter parser performance
Difference between toml.Load(string(datum)) and
toml.LoadReader(bytes.NewReader(datum)):
benchmark old ns/op new ns/op delta
BenchmarkLoad-4 82068 78489 -4.36%
benchmark old allocs new allocs delta
BenchmarkLoad-4 494 493 -0.20%
benchmark old bytes new bytes delta
BenchmarkLoad-4 17009 16913 -0.56%
Diffstat (limited to 'parser')
-rw-r--r-- | parser/frontmatter.go | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/parser/frontmatter.go b/parser/frontmatter.go index d97bc4c4d..b773fe5ce 100644 --- a/parser/frontmatter.go +++ b/parser/frontmatter.go @@ -176,8 +176,7 @@ func HandleTOMLMetaData(datum []byte) (interface{}, error) { m := map[string]interface{}{} datum = removeTOMLIdentifier(datum) - tree, err := toml.Load(string(datum)) - + tree, err := toml.LoadReader(bytes.NewReader(datum)) if err != nil { return m, err } |