Raxol.Terminal.Buffer.OperationsBehaviour behaviour (Raxol v0.5.0)
View SourceDefines the behaviour for terminal buffer operations.
Summary
Types
@type buffer() :: [[Raxol.Terminal.Buffer.Cell.t()]]
@type style() :: map()
Callbacks
@callback delete_lines( buffer(), pos_integer(), non_neg_integer(), non_neg_integer() ) :: {buffer(), non_neg_integer(), non_neg_integer()}
@callback delete_lines( buffer(), pos_integer(), non_neg_integer(), non_neg_integer(), non_neg_integer(), non_neg_integer() ) :: {buffer(), non_neg_integer(), non_neg_integer()}
@callback erase_in_display(buffer(), 0..2, non_neg_integer(), non_neg_integer()) :: {buffer(), non_neg_integer(), non_neg_integer()}
@callback erase_in_line(buffer(), 0..2, non_neg_integer(), non_neg_integer()) :: {buffer(), non_neg_integer(), non_neg_integer()}
@callback insert_lines( buffer(), pos_integer(), non_neg_integer(), non_neg_integer() ) :: {buffer(), non_neg_integer(), non_neg_integer()}
@callback insert_lines( buffer(), pos_integer(), non_neg_integer(), non_neg_integer(), non_neg_integer(), non_neg_integer() ) :: {buffer(), non_neg_integer(), non_neg_integer()}
@callback resize(buffer(), non_neg_integer(), non_neg_integer()) :: buffer()
@callback scroll_down( buffer(), pos_integer(), non_neg_integer(), non_neg_integer() ) :: {buffer(), non_neg_integer(), non_neg_integer()}
@callback scroll_up( buffer(), pos_integer(), non_neg_integer(), non_neg_integer() ) :: {buffer(), non_neg_integer(), non_neg_integer()}
@callback write_char( buffer(), non_neg_integer(), non_neg_integer(), binary(), style() ) :: {buffer(), non_neg_integer(), non_neg_integer()}