2021-03-28 00:23:50 -04:00
2019-04-10 13:43:12 +01:00
2019-04-10 13:43:12 +01:00
2021-03-26 09:51:35 -04:00
2021-03-24 22:15:12 -04:00
LF
2021-03-13 18:51:45 -05:00
2021-03-26 09:53:21 -04:00
2021-02-10 10:41:23 -05:00
2021-02-10 10:41:23 -05:00
2021-03-28 00:23:50 -04:00
2018-07-24 11:27:17 -07:00
2021-03-26 09:51:35 -04:00
2021-03-24 22:15:12 -04:00
2021-03-24 20:21:55 -04:00
2021-03-26 09:51:35 -04:00
2021-02-02 08:28:30 -05:00

go-toml V2

Development branch. Probably does not work.

👉 Discussion on github.

Must do

  • Unmarshal into maps.
  • Support Array Tables.
  • Unmarshal into pointers.
  • Support Date / times.
  • Support struct tags annotations.
  • Support Arrays.
  • Support Unmarshaler interface.
  • Original go-toml unmarshal tests pass.
  • Benchmark!
  • Abstract AST.
  • Original go-toml testgen tests pass.
  • Attach comments to AST (gated by parser flag).
  • Track file position (line, column) for errors.
  • Benchmark again!

Further work

  • Rewrite AST to use a single array as storage instead of one allocation per node.
  • Provide "minimal allocations" option that uses unsafe to reuse the input byte array as storage for strings.
  • Cache reflection operations per type.

Ideas

  • Allow types to implement a ASTUnmarshaler interface to unmarshal straight from the AST?

License

The MIT License (MIT). Read LICENSE.

S
Description
Go library for the TOML file format
Readme MIT 6.5 MiB
Languages
Go 94.6%
Shell 5.4%