Raxol.Terminal.Output.Manager (Raxol v0.5.0)

View Source

Manages terminal output buffering and control sequences.

Summary

Functions

Clears all pending control sequences.

Clears the output buffer.

Enqueues a control sequence to be processed.

Enqueues output to the buffer.

Flushes the output buffer and returns the content.

Gets the current buffer size.

Gets the next control sequence from the queue.

Gets the current output buffer content.

Gets all pending control sequences.

Creates a new output manager instance.

Sets the maximum buffer size.

Types

t()

@type t() :: %Raxol.Terminal.Output.Manager{
  buffer_size: non_neg_integer(),
  control_sequences: [String.t()],
  max_buffer_size: pos_integer(),
  output_buffer: String.t()
}

Functions

clear_control_sequences(state)

Clears all pending control sequences.

clear_output_buffer(state)

Clears the output buffer.

enqueue_control_sequence(state, sequence)

Enqueues a control sequence to be processed.

enqueue_output(state, output)

Enqueues output to the buffer.

flush_output(state)

Flushes the output buffer and returns the content.

get_buffer_size(state)

Gets the current buffer size.

get_next_control_sequence(state)

Gets the next control sequence from the queue.

get_output_buffer(state)

Gets the current output buffer content.

get_pending_control_sequences(state)

Gets all pending control sequences.

new(opts \\ [])

Creates a new output manager instance.

set_max_buffer_size(state, size)

Sets the maximum buffer size.