Did you know ... Search Documentation:
Pack prolog_library_collection -- prolog/stream_ext.pl
PublicShow source

Some predicates in the library use the external programs ‘iconv’ and ‘uchardet’.

 copy_stream_type(+In:istream, +Out:ostream) is det
Like copy_stream_data/2, but also sets the stream type of Out to match the stream type of In, if needed,
 guess_encoding(+In:istream, -Encoding:atom) is det
If the encoding cannot be guessed (`unknown'), the error cannot_guess_encoding/0 is thrown.
 number_of_open_files(-N:nonneg) is det
 read_line_to_atom(+In:istream, -Atom:atom) is nondet
 read_line_to_number(+In:istream, -N:number) is nondet
 read_stream_to_atom(+In:istream, -Atom:atom) is det
 read_stream_to_string(+In:istream, -String:string) is det
 recode_stream(+In:istream, +FromEncoding:atom, -Out:ostream) is det
We only recode to UTF-8.

See the output of command ~iconv -l~ for the supported encodings.

Assumes that In and Out are binary streams.

 stream_line(+In:istream, -Line:string) is nondet
 stream_line_column(+Stream:stream, -Line:nonneg, -Column:nonneg) is det
 stream_metadata(+Stream:stream, -Metadata:dict) is det
 wc(+In:istream, -Stats:dict) is det
Linux-only parsing of GNU wc output.