Dev Diary 03/10/2018
- Unicode is fun! A format that must be utf-8 encoded but handles escape sequences as ascii encodings of utf-16 code units is fun! A format that handles escape sequences for code points larger than
U+FFFF
by doing two four-byte escapes and treating them as a utf-16 surrogate pair is fun! Unicode is Fun! Json is a simple format! - implemented the json parser (more precisely, implemented the Deserializer trait): https://github.com/ssbrs/legacy-msg/blob/master/src/json/de.rs
- implemented Deserialize for the Value and ValueOrdered type: https://github.com/ssbrs/legacy-msg/blob/master/src/json/value.rs
I haven't run a single line of this code, but in theory we can now encode and decode arbitrary json legacy data values.
Next steps:
- get enough sleep
- run all the lines of code
- ideally via afl
- fix all the errors
- create a setup to verify identical behavior of nodejs and rust implementation
- implement hash computation and length computation
- extend the js compatibility verification for hashes and length
- extract a test data set
- prettify rust code, create readable documentation