Next: mpg-ref-sub_atom, Previous: mpg-ref-stream_position_data, Up: mpg-bpr [Contents][Index]
stream_property/2 ISOstream_property(?Stream, ?Property)
Stream Stream has stream property Property.
stream_object
term
A stream property, one of the following:
file_name(F)F is the file name associated with the Stream.
mode(M)Stream has been opened in mode M.
id(ID) since release 4.2Stream has the unique identity ID. The identity of a stream is a positive integer that is never re-used during the life-time of the SICStus process. This is unlike the compound term Stream which is likely to be re-used for some new stream after the original stream denoted by Stream has been closed.
inputStream is an input stream. Note that both input and
output stream properties are set for bidirectional streams.
outputStream is an output stream. Note that both input and
output stream properties are set for bidirectional streams.
alias(A)Stream has an alias A.
position(P)P is a term representing the current stream position
of Stream.
Only guaranteed to be available if the stream has been opened with the
open/4 option reposition(true).
Same as stream_position(Stream, P) except that the latter can be
called on any stream, regardless of the value of the reposition/1
open/4 option.
end_of_stream(E)E describes the position of the input stream Stream,
with respect to the end of stream. If not all characters have been
read, or if peeking ahead to determine this fact would block,
then E is unified with not; otherwise, (all
characters read) but no end of stream indicator (-1 or
end_of_file) was reported yet, then E is unified with
at; otherwise, E is unified with past.
eof_action(A)A is the end-of-file action applicable to Stream, cf. the
eof_action option of open/4.
type(T)Stream is of type T, one of text, binary, cf. the
type option of open/4.
input_encoding(CS) since release 4.3output_encoding(CS) since release 4.3Stream is a text stream with encoding CS in the input direction, cf. the
encoding option of open/4. Note that the encoding used
may be different from the encoding option passed to
open/4 if a byte order mark or other information was used to
determine the real encoding of the file, cf. the encoding_signature option
of open/4.
encoding(CS)Stream is a text stream open in direction input, with input encoding CS or Stream is a text stream open in direction output but not in direction input, with output encoding CS.
Note that, for bi-directional streams, the encoding/1 property reflects the input_encoding/1.
eol(EOL)Stream is a text stream with end of line convention EOL, cf. the
eol option of open/4.
encoding_signature(ES)If Stream is a text stream, then ES is determined as follows:
If the file contents was used to determine the character encoding, then
ES will be true. Typically this is the result of opening, in
mode read, a text file that contains a byte order mark or some
other information that lets open/[3,4] determine a suitable
encoding, cf. the encoding_signature option of open/4.
Otherwise, if the stream is open in direction output, then ES will be as specified when the file was opened.
reposition(REPOSITION)REPOSITION is true if it is possible to set the position of the
stream with set_stream_position/2, cf. the reposition
option of open/4.
interactive since release 4.1Stream is an interactive stream.
Most streams have only a subset of these properties set.
More properties may be added in the future.
Can be used to backtrack over all currently open streams, including the standard input/output/error streams, and all their properties. See ref-iou-sfh-bos.
Stream errors (see ref-iou-sfh-est), plus:
domain_errorStream is not a valid stream object, or Property is not a valid stream property.