Thomas Pelletier
|
b86b890b8d
|
decoder: handle private anonymous structs
Ref #508
|
2021-04-15 12:49:24 -04:00 |
|
Thomas Pelletier
|
0537b928df
|
decoder: add test for #507
|
2021-04-15 11:36:36 -04:00 |
|
Cameron Moore
|
466bfe8664
|
encoder: inline tables create map in nil interface (#496)
Co-authored-by: Thomas Pelletier <pelletier.thomas@gmail.com>
|
2021-04-09 09:02:00 -04:00 |
|
Thomas Pelletier
|
f2378983d9
|
encoder: added test for #287
|
2021-04-08 10:24:38 -04:00 |
|
Thomas Pelletier
|
275e366c17
|
decoder: handle casting local date into time.Time
Refs #494
|
2021-04-08 08:00:31 -04:00 |
|
Thomas Pelletier
|
7ccacf158e
|
Test for #252
|
2021-03-30 21:53:01 -04:00 |
|
Thomas Pelletier
|
32da85ab11
|
Decoding error position tracking
|
2021-03-30 21:43:57 -04:00 |
|
Thomas Pelletier
|
51d78a5f0c
|
Fix unmarshaling of literal keys
Ref #427.
|
2021-03-29 20:58:51 -04:00 |
|
Thomas Pelletier
|
78389c641a
|
Test for #475
|
2021-03-29 20:46:09 -04:00 |
|
Thomas Pelletier
|
c3fc668f27
|
Test for #458
|
2021-03-29 20:38:48 -04:00 |
|
Thomas Pelletier
|
7f016efe03
|
Test for #484
|
2021-03-29 20:28:51 -04:00 |
|
Thomas Pelletier
|
7dc5550057
|
Fix multiline basic string parsing
|
2021-03-28 00:17:58 -04:00 |
|
Thomas Pelletier
|
390927a0cd
|
Reuse AST storage between top-level expressions
```
Comparing:
old: v2-wip/1da2fc7 (2021-03-25 20:38:05 -0400 -0400)
run: v2-wip/3f23ab9 (2021-03-25 22:35:06 -0400 -0400)
-----------------------------------------------------------
name old time/op new time/op delta
UnmarshalSimple/v2-8 700ns ± 3% 705ns ± 2% ~ (p=0.690 n=5+5)
UnmarshalSimple/v1-8 3.85µs ± 1% 4.02µs ± 4% +4.19% (p=0.032 n=5+5)
UnmarshalSimple/bs-8 2.34µs ± 2% 2.38µs ± 3% ~ (p=0.310 n=5+5)
ReferenceFile/v2-8 32.2µs ±13% 23.9µs ± 1% -25.79% (p=0.008 n=5+5)
ReferenceFile/v1-8 270µs ± 2% 264µs ± 2% ~ (p=0.095 n=5+5)
ReferenceFile/bs-8 291µs ± 0% 294µs ± 0% +0.88% (p=0.008 n=5+5)
name old alloc/op new alloc/op delta
ReferenceFile/v2-8 37.1kB ± 0% 6.7kB ± 0% -81.91% (p=0.008 n=5+5)
ReferenceFile/v1-8 131kB ± 0% 131kB ± 0% ~ (p=0.444 n=5+5)
ReferenceFile/bs-8 80.8kB ± 0% 80.8kB ± 0% ~ (p=0.571 n=5+5)
name old allocs/op new allocs/op delta
ReferenceFile/v2-8 152 ± 0% 148 ± 0% -2.63% (p=0.008 n=5+5)
ReferenceFile/v1-8 2.65k ± 0% 2.65k ± 0% ~ (all equal)
ReferenceFile/bs-8 1.73k ± 0% 1.73k ± 0% ~ (all equal)
~/s/g/p/g/benchmark$ go test -bench=.
goos: linux
goarch: amd64
pkg: github.com/pelletier/go-toml/v2/benchmark
cpu: Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz
BenchmarkUnmarshalSimple/v2-8 1692444 710.7 ns/op
BenchmarkUnmarshalSimple/v1-8 307609 3862 ns/op
BenchmarkUnmarshalSimple/bs-8 520429 2285 ns/op
BenchmarkReferenceFile/v2-8 50395 24006 ns/op 6704 B/op 148 allocs/op
BenchmarkReferenceFile/v1-8 4144 264655 ns/op 130567 B/op 2649 allocs/op
BenchmarkReferenceFile/bs-8 3969 293635 ns/op 80784 B/op 1729 allocs/op
PASS
ok github.com/pelletier/go-toml/v2/benchmark 8.143s
```
|
2021-03-25 22:37:16 -04:00 |
|
Thomas Pelletier
|
1bae751a45
|
Linear array storage for AST
|
2021-03-25 19:56:02 -04:00 |
|
Thomas Pelletier
|
a0d031abec
|
Arrays support
|
2021-03-24 20:21:55 -04:00 |
|
Thomas Pelletier
|
bfeb32c9ce
|
Make unmarshal to interface{} consistent with encoding/json
|
2021-03-23 20:03:45 -04:00 |
|
Thomas Pelletier
|
c6f117c45d
|
Handle pointers in slices
|
2021-03-23 09:15:48 -04:00 |
|
Thomas Pelletier
|
fad86a5f24
|
Test for sub-table in array table into structs
|
2021-03-18 19:48:09 -04:00 |
|
Thomas Pelletier
|
a577df2dbb
|
wip
|
2021-03-18 17:19:50 -04:00 |
|
Thomas Pelletier
|
cb678e6221
|
Passing unmarshal of array table into interfaces
|
2021-03-18 08:47:50 -04:00 |
|
Thomas Pelletier
|
939f889666
|
wip: figuring out unmarshaling to interfaces
|
2021-03-17 09:57:50 -04:00 |
|
Thomas Pelletier
|
f9f9ccb777
|
Basic array table implementation
|
2021-03-16 10:24:19 -04:00 |
|
Thomas Pelletier
|
37d06dabcf
|
Unmarshal into maps
|
2021-03-15 09:49:10 -04:00 |
|
Thomas Pelletier
|
00b2f776a9
|
Replace branch with AST version
|
2021-03-15 08:46:35 -04:00 |
|