Raxol.Terminal.Buffer.OperationsBehaviour behaviour (Raxol v0.5.0)

View Source

Defines the behaviour for terminal buffer operations.

Summary

Types

buffer()

@type buffer() :: [[Raxol.Terminal.Buffer.Cell.t()]]

style()

@type style() :: map()

Callbacks

delete_lines(buffer, pos_integer, non_neg_integer, non_neg_integer)

@callback delete_lines(
  buffer(),
  pos_integer(),
  non_neg_integer(),
  non_neg_integer()
) :: {buffer(), non_neg_integer(), non_neg_integer()}

delete_lines( buffer, pos_integer, non_neg_integer, non_neg_integer, non_neg_integer, non_neg_integer )

erase_in_display(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()}

erase_in_line(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()}

index(buffer)

@callback index(buffer()) :: buffer()

insert_lines(buffer, pos_integer, 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()}

insert_lines( buffer, pos_integer, non_neg_integer, non_neg_integer, non_neg_integer, non_neg_integer )

maybe_scroll(buffer)

@callback maybe_scroll(buffer()) :: buffer()

next_line(buffer)

@callback next_line(buffer()) :: buffer()

resize(buffer, non_neg_integer, non_neg_integer)

@callback resize(buffer(), non_neg_integer(), non_neg_integer()) :: buffer()

reverse_index(buffer)

@callback reverse_index(buffer()) :: buffer()

scroll_down(buffer, pos_integer, non_neg_integer, non_neg_integer)

@callback scroll_down(
  buffer(),
  pos_integer(),
  non_neg_integer(),
  non_neg_integer()
) :: {buffer(), non_neg_integer(), non_neg_integer()}

scroll_up(buffer, pos_integer, non_neg_integer, non_neg_integer)

write_char(buffer, non_neg_integer, non_neg_integer, binary, style)

@callback write_char(
  buffer(),
  non_neg_integer(),
  non_neg_integer(),
  binary(),
  style()
) :: {buffer(), non_neg_integer(), non_neg_integer()}