Raxol.Terminal.Parser.StateManagerBehaviour behaviour (Raxol v0.5.0)

View Source

Behaviour for terminal parser state management.

Summary

Types

t()

@type t() :: term()

Callbacks

get_charset_state(t)

@callback get_charset_state(t()) :: map()

get_last_col_exceeded(t)

@callback get_last_col_exceeded(t()) :: boolean()

get_mode_manager(t)

@callback get_mode_manager(t()) :: map()

get_scroll_region(t)

@callback get_scroll_region(t()) :: map()

get_state(t)

@callback get_state(Raxol.Terminal.Emulator.Struct.t()) :: Raxol.Terminal.Parser.State.t()

get_state_name(t)

@callback get_state_name(Raxol.Terminal.Emulator.Struct.t()) :: atom()

get_state_stack(t)

@callback get_state_stack(t()) :: list()

in_control_sequence_state?(t)

@callback in_control_sequence_state?(Raxol.Terminal.Emulator.Struct.t()) :: boolean()

in_escape_state?(t)

@callback in_escape_state?(Raxol.Terminal.Emulator.Struct.t()) :: boolean()

in_ground_state?(t)

@callback in_ground_state?(Raxol.Terminal.Emulator.Struct.t()) :: boolean()

new()

@callback new() :: Raxol.Terminal.Parser.State.t()

reset_to_ground(t)

reset_to_initial_state(t)

@callback reset_to_initial_state(t()) :: t()

set_state_name(t, atom)

update_charset_state(t, map)

@callback update_charset_state(t(), map()) :: t()

update_last_col_exceeded(t, boolean)

@callback update_last_col_exceeded(t(), boolean()) :: t()

update_mode_manager(t, map)

@callback update_mode_manager(t(), map()) :: t()

update_scroll_region(t, map)

@callback update_scroll_region(t(), map()) :: t()

update_state(t, t)

@callback update_state(
  Raxol.Terminal.Emulator.Struct.t(),
  Raxol.Terminal.Parser.State.t()
) ::
  Raxol.Terminal.Emulator.Struct.t()

update_state_stack(t, list)

@callback update_state_stack(t(), list()) :: t()