sort_tier_of Interface

interface
public module function sort_tier_of(key, i) result(tier)

Arguments

Type IntentOptional Attributes Name
type(sort_key_buf), intent(in) :: key

the bound key.

integer(kind=int64), intent(in) :: i

row, 1-based.

Return Value integer

0, 1 or 2.

Description

RAW output tier of row i under one key: values(0), NaNs(1), nulls(2).

Absolute, and neither descending nor nulls_first reaches this. That a descending sort still puts nulls last is Arrow's own rule. nulls_first is left out for a different reason: it only ever REVERSES the tier order, so sort_compare_key applies it once by negating the tier comparison rather than having this relabel on every call — which is what keeps the whole comparator chain inside GCC's default inlining budget. Only a real-family key can be tier 1.