GNU
|
Liberty Eiffel
|
Automated Tests
|
Wiki
|
Savannah project
|
Debian packages
|
Documentation
>
libraries
>
STREAM
+
Point of view
All features
ANY
RECYCLING_POOL
STREAM_HANDLER
FILTER
All features
deferred class STREAM
Summary
top
A stream of characters.
There are two kinds of streams: + input streams (see
INPUT_STREAM
) + output_streams (see
OUTPUT_STREAM
)
Streams can: + be connected (e.g. to some system object) + be used to read or write characters, only if they are connected + be filtered (see
FILTER
)
Direct parents
Insert list:
DISPOSABLE
,
RECYCLABLE
Known children
Inherit list:
FILE_STREAM
,
INPUT_STREAM
,
OUTPUT_STREAM
Overview
top
Features
{
ANY
}
is_connected
:
BOOLEAN
True if the stream is connected.
disconnect
Try to disconnect the stream.
descriptor
:
INTEGER_32
Some OS-dependent descriptor.
has_descriptor
:
BOOLEAN
True if that stream can be associated to some OS-meaningful descriptor.
can_disconnect
:
BOOLEAN
True if the stream can be safely disconnected (without data loss, etc.)
url
:
URL
The
URL
to this stream as resource
{}
url_memory
:
URL
new_url
:
URL
{
STREAM_HANDLER
}
stream_pointer
:
POINTER
Some Back-end-dependent pointer (
FILE
* in C, InputStream or OutputStream in Java)
has_stream_pointer
:
BOOLEAN
True if that stream can be associated to some Back-end-meaningful stream pointer.
{
FILTER
}
filtered_descriptor
:
INTEGER_32
Find the descriptor of the terminal stream...
filtered_has_descriptor
:
BOOLEAN
True if the underlying terminal stream has a descriptor
filtered_stream_pointer
:
POINTER
Find the pointer of the terminal stream...
filtered_has_stream_pointer
:
BOOLEAN
True if the underlying terminal stream has a pointer
{
ANY
}
event_exception
:
EVENT_DESCRIPTOR
{}
stream_exception
:
STREAM_EXCEPTION
{
RECYCLING_POOL
}
recycle
Do whatever needs to be done to free resources or recycle other objects when recycling this one
{}
dispose
Action to be executed just before garbage collection reclaims an object.
{}
sequencer_descriptor
(file:
POINTER
):
INTEGER_32
is_connected
:
BOOLEAN
deferred function
{
ANY
}
top
True if the stream is connected.
Only in that case can data be transferred via this stream.
disconnect
deferred procedure
{
ANY
}
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
descriptor
:
INTEGER_32
effective function
{
ANY
}
top
Some OS-dependent descriptor.
Mainly used by the sequencer library (see READY_CONDITION).
require
is_connected
has_descriptor
has_descriptor
:
BOOLEAN
effective function
{
ANY
}
top
True if that stream can be associated to some OS-meaningful descriptor.
require
is_connected
can_disconnect
:
BOOLEAN
deferred function
{
ANY
}
top
True if the stream can be safely disconnected (without data loss, etc.)
require
is_connected
url
:
URL
frozen
effective function
{
ANY
}
top
The
URL
to this stream as resource
ensure
not_void:
Result /= Void
always_the_same:
Result =
url
url_memory
:
URL
writable attribute
{}
top
new_url
:
URL
deferred function
{}
top
ensure
Result /= Void
stream_pointer
:
POINTER
effective function
{
STREAM_HANDLER
}
top
Some Back-end-dependent pointer (
FILE
* in C, InputStream or OutputStream in Java)
require
is_connected
has_stream_pointer
has_stream_pointer
:
BOOLEAN
effective function
{
STREAM_HANDLER
}
top
True if that stream can be associated to some Back-end-meaningful stream pointer.
require
is_connected
filtered_descriptor
:
INTEGER_32
deferred function
{
FILTER
}
top
Find the descriptor of the terminal stream...
Filters do not have descriptors of their own
require
is_connected
filtered_has_descriptor
filtered_has_descriptor
:
BOOLEAN
deferred function
{
FILTER
}
top
True if the underlying terminal stream has a descriptor
require
is_connected
filtered_stream_pointer
:
POINTER
deferred function
{
FILTER
}
top
Find the pointer of the terminal stream...
Filters do not have pointers of their own
require
is_connected
filtered_has_stream_pointer
filtered_has_stream_pointer
:
BOOLEAN
deferred function
{
FILTER
}
top
True if the underlying terminal stream has a pointer
require
is_connected
event_exception
:
EVENT_DESCRIPTOR
effective function
{
ANY
}
top
stream_exception
:
STREAM_EXCEPTION
writable attribute
{}
top
recycle
effective procedure
{
RECYCLING_POOL
}
top
Do whatever needs to be done to free resources or recycle other objects when recycling this one
dispose
effective procedure
{}
top
Action to be executed just before garbage collection reclaims an object.
sequencer_descriptor
(file:
POINTER
):
INTEGER_32
{}
top