pub fn assert_cursor_contract<B: Observable + Cursor, F: FnMut(Size) -> B>(
make: F,
)Expand description
Drives B through Cursor’s tracked-cursor obligation.
External writes (an app calling Cursor::set_cursor_position between two draws) must not
desync a backend’s internal cursor tracking from where the cursor actually is (retroglyph#713).
§Panics
Panics if the tracked cursor desyncs, or if any Output call returns Err.