Skip to main content

assert_cursor_contract

Function assert_cursor_contract 

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