Update readme

This commit is contained in:
Thomas Pelletier
2021-03-31 09:15:33 -04:00
parent 5d905981cf
commit 4a4c2c2a5f
+19 -7
View File
@@ -1,11 +1,15 @@
# go-toml V2 # go-toml V2
Development branch. Probably does not work. Development branch. Use at your own risk.
[👉 Discussion on github](https://github.com/pelletier/go-toml/discussions/471). [👉 Discussion on github](https://github.com/pelletier/go-toml/discussions/471).
* `toml.Unmarshal()` should work as well as v1.
## Must do ## Must do
### Unmarshal
- [x] Unmarshal into maps. - [x] Unmarshal into maps.
- [x] Support Array Tables. - [x] Support Array Tables.
- [x] Unmarshal into pointers. - [x] Unmarshal into pointers.
@@ -18,11 +22,20 @@ Development branch. Probably does not work.
- [x] Abstract AST. - [x] Abstract AST.
- [x] Original go-toml testgen tests pass. - [x] Original go-toml testgen tests pass.
- [x] Track file position (line, column) for errors. - [x] Track file position (line, column) for errors.
- [ ] Attach comments to AST (gated by parser flag). - [ ] Strict mode.
- [ ] Benchmark again!
## Further work ### Marshal
- [ ] Minimal implementation
### Document
- [ ] Gather requirements and design API.
## Ideas
- [ ] Allow types to implement a `ASTUnmarshaler` interface to unmarshal
straight from the AST?
- [x] Rewrite AST to use a single array as storage instead of one allocation per - [x] Rewrite AST to use a single array as storage instead of one allocation per
node. node.
- [ ] Provide "minimal allocations" option that uses `unsafe` to reuse the input - [ ] Provide "minimal allocations" option that uses `unsafe` to reuse the input
@@ -30,10 +43,9 @@ Development branch. Probably does not work.
- [x] Cache reflection operations per type. - [x] Cache reflection operations per type.
- [ ] Optimize tracker pass. - [ ] Optimize tracker pass.
## Ideas ## Differences with v1
- [ ] Allow types to implement a `ASTUnmarshaler` interface to unmarshal * [unmarshal](https://github.com/pelletier/go-toml/discussions/488)
straight from the AST?
## License ## License