-module(stdin). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]). -export([read_lines/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, GXY} | {error, any()}) -> GXY. 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 read_lines() -> gleam@yielder:yielder(binary()). read_lines() -> _pipe = gleam@yielder:repeatedly(fun read_line/0), _pipe@1 = gleam@yielder:take_while(_pipe, fun gleam@result:is_ok/1), gleam@yielder:map(_pipe@1, fun assert_upwrap/1).