home
wiki
classes/clusters list
class information
+
Point of view
ANY
ANY
FILTER_OUTPUT_STREAM
FILTER
STREAM_HANDLER
WEAK_ARRAY
INTERNALS_HANDLER
All features
class STD_ERROR
Summary
top
To write on the standard error output. As for UNIX, the default standard error file is the screen.
Note: only one instance of this class should be necessary. Access it through
ANY
.std_error.
See also
STANDARD_STREAMS
Direct parents
inherit list:
TERMINAL_OUTPUT_STREAM
insert list:
REDIRECTION_TOOLS
Overview
top
creation features
make
exported features
is_connected
:
BOOLEAN
True if the stream is connected.
disconnect
Try to disconnect the stream.
can_put_character
(c:
CHARACTER
):
BOOLEAN
can_disconnect
:
BOOLEAN
True if the stream can be safely disconnected (without data loss, etc.)
put_character
(c:
CHARACTER
)
flush
Flushes the pipe.
detach
Shake off the filter.
event_can_write
:
EVENT_DESCRIPTOR
descriptor
:
INTEGER_32
Some OS-dependent descriptor.
has_descriptor
:
BOOLEAN
True if that stream can be associated to some OS-meaningful descriptor.
is_filtered
:
BOOLEAN
put_string
(s:
STRING
)
Output
s
to current output device.
put_unicode_string
(unicode_string:
UNICODE_STRING
)
Output the UTF-8 encoding of the
unicode_string
.
put_line
(s:
STRING
)
Output the string followed by a
'%N'
.
To write a number:
put_integer
(i:
INTEGER_64
)
Output
i
to current output device.
put_integer_format
(i:
INTEGER_64
, s:
INTEGER_32
)
Output
i
to current output device using at most
s
character.
put_real
(r:
REAL_64
)
Output
r
to current output device.
put_real_format
(r:
REAL_64
, f:
INTEGER_32
)
Output
r
with only
f
digit for the fractionnal part.
put_real_scientific
(r:
REAL_64
, f:
INTEGER_32
)
Output
r
using the scientific notation with only
f
digit for the fractionnal part.
put_number
(number:
NUMBER
)
Output the
number
.
Other features:
put_boolean
(b:
BOOLEAN
)
Output
b
to current output device according to the Eiffel format.
put_pointer
(p:
POINTER
)
Output a viewable version of
p
.
put_new_line
Output a newline character.
put_spaces
(nb:
INTEGER_32
)
Output
nb
spaces character.
append_file
(file_name:
STRING
)
is_connected
:
BOOLEAN
attribute
top
True if the stream is connected.
Only in that case can data be transfered via this stream.
disconnect
top
Try to disconnect the stream.
Note that it *does not* ensure that the stream will effectively be disconnected (some terminal streams, for instance, are always connected) but the feature can be used to
"shake off"
filters.
require
is_connected
can_disconnect
is_connected
can_disconnect
ensure
not is_filtered
can_put_character
(c:
CHARACTER
):
BOOLEAN
top
can_disconnect
:
BOOLEAN
attribute
top
True if the stream can be safely disconnected (without data loss, etc.)
require
is_connected
is_connected
put_character
(c:
CHARACTER
)
top
require
is_connected
not is_filtered and then can_put_character(c)
flush
top
Flushes the pipe.
If
is_filtered
, calls the filter's
flush
instead.
require
is_connected
detach
top
Shake off the filter.
ensure
not is_filtered
event_can_write
:
EVENT_DESCRIPTOR
top
descriptor
:
INTEGER_32
top
Some OS-dependent descriptor.
Mainly used by the sequencer library (see READY_CONDITION).
require
is_connected
has_descriptor
has_descriptor
:
BOOLEAN
top
True if that stream can be associated to some OS-meaningful descriptor.
require
is_connected
is_filtered
:
BOOLEAN
deferred
top
put_string
(s:
STRING
)
top
Output
s
to current output device.
require
is_connected
not
is_filtered
s /= Void
put_unicode_string
(unicode_string:
UNICODE_STRING
)
top
Output the UTF-8 encoding of the
unicode_string
.
require
is_connected
not
is_filtered
unicode_string /= Void
put_line
(s:
STRING
)
top
Output the string followed by a
'%N'
.
%
put_integer
(i:
INTEGER_64
)
frozen
top
Output
i
to current output device.
require
is_connected
not
is_filtered
put_integer_format
(i:
INTEGER_64
, s:
INTEGER_32
)
frozen
top
Output
i
to current output device using at most
s
character.
require
is_connected
not
is_filtered
put_real
(r:
REAL_64
)
top
Output
r
to current output device.
require
is_connected
not
is_filtered
put_real_format
(r:
REAL_64
, f:
INTEGER_32
)
top
Output
r
with only
f
digit for the fractionnal part.
Examples:
put_real(3.519,2) print
"3.51"
.
require
is_connected
not
is_filtered
f >= 0
put_real_scientific
(r:
REAL_64
, f:
INTEGER_32
)
top
Output
r
using the scientific notation with only
f
digit for the fractionnal part.
Examples:
put_real_scientific(3.519,2) print
"3.16e+00"
.
require
is_connected
not
is_filtered
f >= 0
put_number
(number:
NUMBER
)
top
Output the
number
.
require
is_connected
not
is_filtered
number /= Void
put_boolean
(b:
BOOLEAN
)
top
Output
b
to current output device according to the Eiffel format.
require
is_connected
not
is_filtered
put_pointer
(p:
POINTER
)
top
Output a viewable version of
p
.
require
is_connected
not
is_filtered
put_new_line
top
Output a newline character.
require
is_connected
not
is_filtered
put_spaces
(nb:
INTEGER_32
)
top
Output
nb
spaces character.
require
is_connected
not
is_filtered
nb >= 0
append_file
(file_name:
STRING
)
top
require
is_connected
not
is_filtered
(create {
FILE_TOOLS
}).is_readable(file_name)