about summary refs log tree commit diff
path: root/compiler/rustc_serialize/src/lib.rs
AgeCommit message (Collapse)AuthorLines
2023-10-08rustdoc: remove rust logo from non-Rust cratesMichael Howell-0/+3
2023-10-06rustc_serialize: merge `collection_impls.rs` into `serialize.rs`.Nicholas Nethercote-1/+0
`serialize.rs` has the `Encodable`/`Decodable` impls for lots of basic types, including `Vec`. `collection_impls` has it for lots of collection types. The distinction isn't really meaningful, and it's simpler to have them all in a single file.
2023-10-06rustc_serialize: Remove unneeded feature decls.Nicholas Nethercote-11/+5
I.e. `maybe_uninit_slice` and `new_uninit`. Also sort the remaining features and remove an ugly, low-value comment.
2023-09-10Reimplement FileEncoder with a small-write optimizationBen Kimock-0/+3
2023-04-23Rewrite MemDecoder around pointers not a sliceBen Kimock-0/+1
2022-09-26remove cfg(bootstrap)Pietro Albini-1/+0
2022-09-15Only enable the let_else feature on bootstrapest31-1/+1
On later stages, the feature is already stable. Result of running: rg -l "feature.let_else" compiler/ src/librustdoc/ library/ | xargs sed -s -i "s#\\[feature.let_else#\\[cfg_attr\\(bootstrap, feature\\(let_else\\)#"
2022-08-25Adding support for rustc_serialize encode and decode for Box and Vec that ↵Ellen Arteca-0/+1
use a custom allocator
2022-08-18Add diagnostic translation lints to crates that don't emit them5225225-0/+2
2022-06-03Fully stabilize NLLJack Huey-1/+0
2022-06-03Remove json support from rustc_serializebjorn3-2/+0
2022-02-19Adopt let else in more placesest31-0/+1
2021-08-18Remove box syntax from rustc_serializeest31-1/+0
2021-05-31Remove unused feature gatesbjorn3-3/+0
2021-03-24Revert "Revert stabilizing integer::BITS."Mara Bos-1/+0
2021-03-18Simplify IntEncodedWithFixedSize.Camille GILLOT-0/+2
2021-02-20Update the bootstrap compilerJoshua Nelson-1/+0
Note this does not change `core::derive` since it was merged after the beta bump.
2021-02-03Revert stabilizing integer::BITS.Mara Bos-0/+1
2021-01-31stabilize int_bits_constAshley Mannix-1/+0
2021-01-11rustc_serialize: fix incorrect signed LEB128 decodingTyson Nottingham-0/+1
The signed LEB128 decoding function used a hardcoded constant of 64 instead of the number of bits in the type of integer being decoded, which resulted in incorrect results for some inputs. Fix this, make the decoding more consistent with the unsigned version, and increase the LEB128 encoding and decoding test coverage.
2021-01-11Serialize incr comp structures to file via fixed-size bufferTyson Nottingham-0/+3
Reduce a large memory spike that happens during serialization by writing the incr comp structures to file by way of a fixed-size buffer, rather than an unbounded vector. Effort was made to keep the instruction count close to that of the previous implementation. However, buffered writing to a file inherently has more overhead than writing to a vector, because each write may result in a handleable error. To reduce this overhead, arrangements are made so that each LEB128-encoded integer can be written to the buffer with only one capacity and error check. Higher-level optimizations in which entire composite structures can be written with one capacity and error check are possible, but would require much more work. The performance is mostly on par with the previous implementation, with small to moderate instruction count regressions. The memory reduction is significant, however, so it seems like a worth-while trade-off.
2021-01-01rustc_serialize: specialize opaque decoding of some u8 sequencesTyson Nottingham-0/+1
2021-01-01rustc_serialize: specialize opaque encoding of some u8 sequencesTyson Nottingham-0/+1
2020-12-26stabilize min_const_genericsBastian Kauschke-1/+1
2020-09-26Deduplicate and generalize some (de/)serializer implsOliver Scherer-0/+1
2020-09-23/nightly/nightly-rustcErik Hofmayer-1/+1
2020-09-23Updated html_root_url for compiler cratesErik Hofmayer-1/+1
2020-08-30mv compiler to compiler/mark-0/+27