
get_stream(+StreamId, ?Stream)

   Succeeds if Stream is the stream to which the stream StreamId is assigned. 

Arguments
   StreamId            Stream alias (atom), or handle
   Stream              Variable, stream handle or alias (atom)

Type
   Stream I/O

Description

   StreamId is an existing symbolic stream alias or a stream handle.
   If Stream is a variable, it will get bound to a stream handle corresponding
   to StreamId.  If Stream is a symbolic stream alias or a handle, then
   the predicate succeeds iff StreamId and Stream denote the same stream.

   The predefined symbolic system stream names are:

   input, output, error, warning_output, log_output,
   stdin, stdout, stderr, null



Modes and Determinism
   get_stream(+, -) is det
   get_stream(+, +) is semidet

Fail Conditions
   Fails if Stream is not a stream with the stream identifier StreamId

Exceptions
     4 --- One or both of StreamId and Stream is not instantiated.
     5 --- Stream is neither an atom, a stream handle nor a variable.
     5 --- StreamId is neither an atom nor a stream handle.
   193 --- StreamId is an illegal stream specification.

Examples
   
Success:
      ?- get_stream(input,S).
      S = $&(stream,0)
      Yes (0.00s cpu)

      ?- set_stream(a,input), get_stream(input,a), get_stream(a,input).
      Yes (0.00s cpu)

Fail:
      set_stream(b,input), get_stream(b,output).

Error:
      get_stream(Id, S).      (Error 4).
      get_stream(1.0,S).      (Error 5).
      get_stream(3, S).       (Error 5).
      get_stream(blah,S).     (Error 193). % does not exist


See Also
   set_stream / 2
