* Improved encoding and decoding speed of Vec<u8>
* Added black_box calls to benches/string.rs
Added a SizeWriter because someone finally has a benchmark to show it's faster
* Improved performance for `impl<T> Encode for [T]`
* Added #[inline] to `impl Encoder for EncoderImpl`
---------
Co-authored-by: Victor Koenders <victor.koenders@qrtech.se>
* Moved Configuration::standard() and ::legacy() to the config module
* Fixed issue with config that would overwrite the limit, added a checklist on adding config variables
* Added Limit<N> and NoLimit to the configuration
* Added a limit check to Decoder and DecoderImpl
* Added test cases, added a helper function specialized for containers
* Added a test to see if inlining makes the limit config faster, added inlining to the decoder
* Add benchmarks for varint parsing
* Enable more inlining
* Outline error construction
* Add provided functions to BincodeRead to customize reading of literals
* Add #[inline] to deserialize_byte
* Outline SliceReader::unexpected_eof so that deserialize_varint inlines
* Implement BincodeRead for std::io::BufReader
* Reimplement all of BincodeRead in terms of BufRead-like functions
* Move branch into error-creation function to get below inline threshold