Skip to main content

read_fill_parameters

Function read_fill_parameters 

Source
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.