This library contains primitives to read lines, files, multiple
terms, etc. The package clib provides a shared object (DLL)
named readutil. If the library can locate this shared
object it will use the foreign implementation for reading character
codes. Otherwise it will use a Prolog implementation. Distributed
applications should make sure to deliver the readutil
shared object if performance of these predicates is critical.
On end-of-file the atom end_of_file is returned. See
also
at_end_of_stream/[0,1].
read_header_data(Stream, Header) :-
read_line_to_codes(Stream, Header, Tail),
read_header_data(Header, Stream, Tail).
read_header_data("\r\n", _, _) :- !.
read_header_data("\n", _, _) :- !.
read_header_data("", _, _) :- !.
read_header_data(_, Stream, Tail) :-
read_line_to_codes(Stream, Tail, NewTail),
read_header_data(Tail, Stream, NewTail).
|
tail(Tail) is defined, forming a difference-list.
tail(Tail) is defined, forming a difference-list.