automerge/todo.adoc
Alex Good 9332ed4ad9
wip
2022-03-20 14:48:30 +00:00

25 lines
1 KiB
Text

== Doing
* Implement `columnar_2::save::save_document`
== Cleanups
* Add a `*Range` for each column type (including composite)
* For each of the `*Range` types add an `encode` method. Replace the ad hoc
`*Decoder::encode` methods with these methods
* Get rid of `PrimVal`, do everything with `ScalarValue`. i.e. move the unknown
type codes into `ScalarValue`.
* Make `Change` and `Document` directly hold a `*Columns` instead of
`ColumnMetadata`, construct these at parse time
* Make `Chunk` an actual enum and parse the contents into that enum
* Change `ChangeOpColumns::encode` to `ChangeOpColumns::splice`, include a
`replace_with` range, and create a new `encode` implementation which just
calls `ChangeOpColumns::empty().splice(..)`
* `try_splice` on all encoders
* Remove rowblock, just have structs for `ChangeOps`, `DocChangeOps`,
`DocChanges` which hold their own bytes. Maybe later we add a `GenericRows`
thing but we seem to not really need it
* Replace every use of `usize` as a lookup with a newtype wrapper