Avoid specialization in the metadata serialization code With the exception of a perf-only specialization for byte slices and byte vectors. This uses the same trick of introducing a new trait and having the Encodable and Decodable derives add a bound to it as used for TyEncoder/TyDecoder. The new code is clearer about which encoder/decoder uses which impl and it reduces the dependency of rustc on specialization, making it easier to remove support for specialization entirely or turn it into a construct that is only allowed for perf optimizations if we decide to do this. |
||
|---|---|---|
| .. | ||
| diagnostics | ||
| symbols | ||
| current_version.rs | ||
| hash_stable.rs | ||
| lib.rs | ||
| lift.rs | ||
| query.rs | ||
| serialize.rs | ||
| symbols.rs | ||
| type_foldable.rs | ||
| type_visitable.rs | ||