Skip to content
  • Benjamin Otte's avatar
    selectionmodel: Change prototype of query_range() · 1f56f5c2
    Benjamin Otte authored
    1. Do not make position an inout variable
    The function is meant to return a range for a given position, not modify
    a position. So it makes no conceptual sense to use an inout variable.
    2. Pass the selected state as an out variable
    Using a boolean return value - in particular in an interface full of
    boolean return values - makes the return value intuitively feel like a
    success/failure return. Using an out variable clarifies the usage.
    3. Allow passing every position value
    Define what happens when position >= list.n_items
    4. Clarify the docs about how this function should behave
    In particular, mention the case from point (3)
    5. Add more tests
    Again, (3) needs testing.
    1f56f5c2