pub enum GroupOrder {
Ascending,
Descending,
}Expand description
The order a FETCH response’s Groups arrive in, which decides how a Group ID Delta is applied.
Draft-21 Section 11.4.1.1: “If the Group Order is Ascending, the Group ID is the prior Object’s Group ID plus the Group ID Delta + 1. If the Group Order is Descending, the Group ID is the prior Object’s Group ID minus the (Group ID Delta + 1).”
The order is not on the data stream — it is settled by the control exchange
that opened the FETCH, whose GROUP_ORDER parameter (Section 9.20.9) spells
Ascending 0x1 and Descending 0x2 — so FetchObjectReader has to be told
which one it is reading. Getting it wrong does not fail to parse: it decodes
every Object under a Group ID that walks the wrong way.
Variants§
Ascending
Group IDs increase: a delta adds to the prior Group ID.
Descending
Group IDs decrease: a delta subtracts from the prior Group ID.