fn read_fill_parameters(
buf: &mut impl Buf,
) -> Result<Vec<KeyValuePair>, CodecError>Expand description
Read one FILL_PARAMETERS value off buf: its Number of Parameters and
that many parameters.
Section 9.19.15: “Its value is a Number of Parameters (vi64) followed by that many Parameters that apply to the fill fetch stream (see Section 3.4), encoded as if they were Parameters for a separate message (see Section 9.19).” Nothing states the value’s length, so each inner parameter is read in the shape its type names, as a message’s own are.
“The value of FILL_PARAMETERS is a separate parameter scope. Parameters
inside it are not considered to appear in the enclosing message for the
purposes of Section 9.19”. The inner Type Delta chain therefore starts
from 0, and the outer parameter after FILL_PARAMETERS deltas from 0x23.
A type outside Table 7 is CodecError::ParameterOutOfScope, reported
against FILL_PARAMETERS itself. A type draft-23 does not define at all is
CodecError::UnknownMessageParameter, checked first.