Current section

Files

Jump to
islands_text_client lib islands text client input.ex
Raw

lib/islands/text/client/input.ex

defmodule Islands.Text.Client.Input do
alias IO.ANSI.Plus, as: ANSI
alias Islands.Text.Client.Input.{Checker, Getter}
alias Islands.Text.Client.State
@type t :: IO.chardata() | IO.nodata()
@spec get_input(ANSI.ansilist(), State.t()) :: t()
defdelegate get_input(prompt, state), to: Getter
@spec check_input(t, State.t()) :: State.t() | no_return
defdelegate check_input(input, state), to: Checker
end