1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
//! **What a §9 config read answers**, as one type (bl-dd88) — the carrier that
//! matches the questions' own ([`config::Read`](crate::boundary::config::Read)).
//!
//! The five reads folded onto one carrier in bl-719a and their five answers did
//! not, so the roster named the family once on the asking side and five times
//! on the answering one. [`encode`](super::encode) had already collapsed them
//! into a single arm on the argument that *"the §9 config family's answers, one
//! arm since bl-2410: the carrier its questions were folded onto has a matching
//! set of replies, and the roster names the family once on this side too"* —
//! this is that sentence made true of the type as well.
//!
//! **The fold is in the carrier, never in the surface.** Each member keeps its
//! own reply `kind` on the wire, so no protocol version moves and the corpus
//! regenerates byte-identical; that identity is the check that the move was
//! behaviour-preserving, exactly as it was for the questions.
use ConfigView;
/// One §9 config read's answer.