aboutsummaryrefslogtreecommitdiff
path: root/aoc2023/build/packages/adglent/src/adglent_ffi.erl
blob: a6a92e60530a499409a6fdb20dcdeb73725a5c4e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
-module(adglent_ffi).

-export([get_line/1]).

-spec get_line(io:prompt()) -> {ok, unicode:unicode_binary()} | {error, eof | no_data}.
get_line(Prompt) ->
    case io:get_line(Prompt) of
        eof -> {error, eof};
        {error, _} -> {error, no_data};
        Data when is_binary(Data) -> {ok, Data};
        Data when is_list(Data) -> {ok, unicode:characters_to_binary(Data)}
    end.