[ Stream I/O | The ECLiPSe Built-In Predicates | Reference Manual | Alphabetic Index ]
set_stream_property(+Stream, +Prop, +Value)
Sets the property Prop of the stream Stream to the value Value.
- +Stream
- Atom or integer denoting an open stream.
- +Prop
- Atom.
- ?Value
- atom, string or integer.
Description
Used to set various stream properties:
Prop Value Description
compress on, off a hint for output operations (e.g.
write_exdr/2) to use a more compact
output format (output streams only).
Default: on (file,pipe,socket) or off.
end_of_line lf, crlf which end-of-line sequence to write
event atom event on writing to empty stream
(see open/4)
flush flush, explicit or implicit flushing
end_of_line
macro_expansion on, off expand term macros (input streams only)
offset integer current position in the
stream, same as seek/2
output_options list default output options for all term
output on this stream. The list
format is as in write_term/2,3.
prompt string prompt string (input streams only)
prompt_stream integer output stream for the prompt
or atom (input streams only)
sigio on, off enable/disable SIGIO signals on
this stream (UNIX only)
yield on, off yield on end-of-file (see open/4)
Fail Conditions
None.
Resatisfiable
No.
Exceptions
- (4) instantiation fault
- Stream, Prop or Value is not instantiated.
- (5) type error
- Stream is neither an atom nor an integer.
- (5) type error
- Prop is instantiated, but not to an atom.
- (5) type error
- Value is of the wrong type for the given property.
- (6) out of range
- Prop is an atom, but not a settable property.
- (6) out of range
- Value is not recognised for the given property.
- (193) illegal stream specification
- Stream does not denote an open stream.
Examples
Success:
set_stream_property(input, prompt, "hello: ").
set_stream_property(Stream, flush, end_of_line).
set_stream_property(Stream, end_of_line, crlf).
See Also
open / 3, open / 4, current_stream / 1, seek / 2, get_stream_info / 3, write_term / 2, write_term / 3