-module(stdin). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]). -export([stdin/0]). -spec read_line() -> {ok, binary()} | {error, nil}. read_line() -> _pipe = io:get_line(<<""/utf8>>), _pipe@1 = gleam@dynamic:from(_pipe), _pipe@2 = gleam@dynamic:string(_pipe@1), gleam@result:nil_error(_pipe@2). -spec assert_upwrap({ok, FNQ} | {error, any()}) -> FNQ. assert_upwrap(Res) -> {ok, A} = case Res of {ok, _} -> Res; _assert_fail -> erlang:error(#{gleam_error => let_assert, message => <<"Assertion pattern match failed"/utf8>>, value => _assert_fail, module => <<"stdin"/utf8>>, function => <<"assert_upwrap"/utf8>>, line => 17}) end, A. -spec stdin() -> gleam@iterator:iterator(binary()). stdin() -> _pipe = gleam@iterator:repeatedly(fun read_line/0), _pipe@1 = gleam@iterator:take_while(_pipe, fun gleam@result:is_ok/1), gleam@iterator:map(_pipe@1, fun assert_upwrap/1).