EiffelBase class
(HTML page generated by ISE Eiffel 4.2)
Eiffel Class
indexing
description: "Any medium that can perform input and/or output";
status: "See notice at end of class";
date: "$Date: 2007-03-30 19:10:11 +0000 (Fri, 30 Mar 2007) $";
revision: "$Revision: 95354 $"
deferred class IO_MEDIUM
inherit
MEMORY
export
{NONE} all
redefine
dispose
end
feature -- Access
name: STRING is
-- Medium name
deferred
end;
retrieved: ANY is
-- Retrieved object structure
-- To access resulting object under correct type,
-- use assignment attempt.
-- Will raise an exception (code Retrieve_exception)
-- if content is not a stored Eiffel structure.
require
exists: exists;
is_open_read: is_open_read;
support_storable: support_storable
deferred
ensure
result_exists: Result /= void
end;
feature -- Element change
basic_store (object: ANY) is
-- Produce an external representation of the
-- entire object structure reachable from object.
-- Retrievable within current system only.
require
object_not_void: object /= void;
exists: exists;
is_open_write: is_open_write;
support_storable: support_storable
deferred
end;
general_store (object: ANY) is
-- Produce an external representation of the
-- entire object structure reachable from object.
-- Retrievable from other systems for same platform
-- (machine architecture).
require
object_not_void: object /= void;
exists: exists;
is_open_write: is_open_write;
support_storable: support_storable
deferred
end;
independent_store (object: ANY) is
-- Produce an external representation of the
-- entire object structure reachable from object.
-- Retrievable from other systems for the same or other
-- platform (machine architecture).
require
object_not_void: object /= void;
exists: exists;
is_open_write: is_open_write;
support_storable: support_storable
deferred
end;
feature -- Status report
handle: INTEGER is
-- Handle to medium
require
valid_handle: handle_available
deferred
end;
handle_available: BOOLEAN is
-- Is the handle available after class has been
-- created?
deferred
end;
is_plain_text: BOOLEAN is
-- Is file reserved for text (character sequences)?
do
end;
last_character: CHARACTER;
-- Last character read by read_character
last_string: STRING;
-- Last string read
last_integer: INTEGER;
-- Last integer read by read_integer
last_real: REAL;
-- Last real read by read_real
last_double: DOUBLE;
-- Last double read by read_double
exists: BOOLEAN is
-- Does medium exist?
deferred
end;
is_open_read: BOOLEAN is
-- Is this medium opened for input
deferred
end;
is_open_write: BOOLEAN is
-- Is this medium opened for output
deferred
end;
is_readable: BOOLEAN is
-- Is medium readable?
require
handle_exists: exists
deferred
end;
is_executable: BOOLEAN is
-- Is medium executable?
require
handle_exists: exists
deferred
end;
is_writable: BOOLEAN is
-- Is medium writable?
require
handle_exists: exists
deferred
end;
readable: BOOLEAN is
-- Is there a current item that may be read?
require
handle_exists: exists
deferred
end;
extendible: BOOLEAN is
-- May new items be added?
deferred
end;
is_closed: BOOLEAN is
-- Is the I/O medium open
deferred
end;
support_storable: BOOLEAN is
-- Can medium be used to store an Eiffel object?
deferred
end;
feature -- Status setting
close is
-- Close medium.
require
medium_is_open: notis_closed
deferred
end;
feature -- Removal
dispose is
-- Ensure this medium is closed when garbage collected.
do
if notis_closed then
close
end
end;
feature -- Output
put_new_line is
-- Write a new line character to medium
-- Was declared in IO_MEDIUM as synonym of put_new_line and new_line.
require
extendible: extendible
deferred
end;
new_line is
-- Write a new line character to medium
-- Was declared in IO_MEDIUM as synonym of put_new_line and new_line.
require
extendible: extendible
deferred
end;
put_string (s: STRING) is
-- Write s to medium.
-- Was declared in IO_MEDIUM as synonym of put_string and putstring.
require
extendible: extendible;
non_void: s /= void
deferred
end;
putstring (s: STRING) is
-- Write s to medium.
-- Was declared in IO_MEDIUM as synonym of put_string and putstring.
require
extendible: extendible;
non_void: s /= void
deferred
end;
put_character (c: CHARACTER) is
-- Write c to medium.
-- Was declared in IO_MEDIUM as synonym of put_character and putchar.
require
extendible: extendible
deferred
end;
putchar (c: CHARACTER) is
-- Write c to medium.
-- Was declared in IO_MEDIUM as synonym of put_character and putchar.
require
extendible: extendible
deferred
end;
put_real (r: REAL) is
-- Write r to medium.
-- Was declared in IO_MEDIUM as synonym of put_real and putreal.
require
extendible: extendible
deferred
end;
putreal (r: REAL) is
-- Write r to medium.
-- Was declared in IO_MEDIUM as synonym of put_real and putreal.
require
extendible: extendible
deferred
end;
put_integer (i: INTEGER) is
-- Write i to medium.
-- Was declared in IO_MEDIUM as synonym of put_integer and putint.
require
extendible: extendible
deferred
end;
putint (i: INTEGER) is
-- Write i to medium.
-- Was declared in IO_MEDIUM as synonym of put_integer and putint.
require
extendible: extendible
deferred
end;
put_boolean (b: BOOLEAN) is
-- Write b to medium.
-- Was declared in IO_MEDIUM as synonym of put_boolean and putbool.
require
extendible: extendible
deferred
end;
putbool (b: BOOLEAN) is
-- Write b to medium.
-- Was declared in IO_MEDIUM as synonym of put_boolean and putbool.
require
extendible: extendible
deferred
end;
put_double (d: DOUBLE) is
-- Write d to medium.
-- Was declared in IO_MEDIUM as synonym of put_double and putdouble.
require
extendible: extendible
deferred
end;
putdouble (d: DOUBLE) is
-- Write d to medium.
-- Was declared in IO_MEDIUM as synonym of put_double and putdouble.
require
extendible: extendible
deferred
end;
feature -- Input
read_real is
-- Read a new real.
-- Make result available in last_real.
-- Was declared in IO_MEDIUM as synonym of read_real and readreal.
require
is_readable: readable
deferred
end;
readreal is
-- Read a new real.
-- Make result available in last_real.
-- Was declared in IO_MEDIUM as synonym of read_real and readreal.
require
is_readable: readable
deferred
end;
read_double is
-- Read a new double.
-- Make result available in last_double.
-- Was declared in IO_MEDIUM as synonym of read_double and readdouble.
require
is_readable: readable
deferred
end;
readdouble is
-- Read a new double.
-- Make result available in last_double.
-- Was declared in IO_MEDIUM as synonym of read_double and readdouble.
require
is_readable: readable
deferred
end;
read_character is
-- Read a new character.
-- Make result available in last_character.
-- Was declared in IO_MEDIUM as synonym of read_character and readchar.
require
is_readable: readable
deferred
end;
readchar is
-- Read a new character.
-- Make result available in last_character.
-- Was declared in IO_MEDIUM as synonym of read_character and readchar.
require
is_readable: readable
deferred
end;
read_integer is
-- Read a new integer.
-- Make result available in last_integer.
-- Was declared in IO_MEDIUM as synonym of read_integer and readint.
require
is_readable: readable
deferred
end;
readint is
-- Read a new integer.
-- Make result available in last_integer.
-- Was declared in IO_MEDIUM as synonym of read_integer and readint.
require
is_readable: readable
deferred
end;
read_stream (nb_char: INTEGER) is
-- Read a string of at most nb_char bound characters
-- or until end of medium is encountered.
-- Make result available in last_string.
-- Was declared in IO_MEDIUM as synonym of read_stream and readstream.
require
is_readable: readable
deferred
end;
readstream (nb_char: INTEGER) is
-- Read a string of at most nb_char bound characters
-- or until end of medium is encountered.
-- Make result available in last_string.
-- Was declared in IO_MEDIUM as synonym of read_stream and readstream.
require
is_readable: readable
deferred
end;
read_line is
-- Read characters until a new line or
-- end of medium.
-- Make result available in last_string.
-- Was declared in IO_MEDIUM as synonym of read_line and readline.
require
is_readable: readable
deferred
end;
readline is
-- Read characters until a new line or
-- end of medium.
-- Make result available in last_string.
-- Was declared in IO_MEDIUM as synonym of read_line and readline.
require
is_readable: readable
deferred
end;
feature -- Obsolete
lastchar: CHARACTER is
-- Last character read by read_character
do
Result := last_character
end;
laststring: STRING is
-- Last string read
do
Result := last_string
end;
lastint: INTEGER is
-- Last integer read by read_integer
do
Result := last_integer
end;
lastreal: REAL is
-- Last real read by read_real
do
Result := last_real
end;
lastdouble: DOUBLE is
-- Last double read by read_double
do
Result := last_double
end;
end -- class IO_MEDIUM
|