fn record_fallbacks(msg: &Message, line: &str, report: &mut DecodeReport)Expand description
Record every fallback the decoder took on msg, which decoded from
line.
decode_dispatch only reports a fallback for the top-level type and
for control_request.subtype. Every other discriminator the decoder
does not model is absorbed silently, in one of two ways that need
different detection:
- Preserved.
Message::SystemandContentBlock::Unknownkeep the payload verbatim, so the decoded value is indistinguishable from a modelled one. Detected by asking which bucket it landed in. - Replaced. A
#[serde(other)]variant discards the wire value, so re-encoding emits the marker instead. Detected by re-encoding and comparing, which the preserved kind is invisible to because it round-trips exactly.