Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Core::ReadStream Class Reference

#include <ReadStream.h>

Inheritance diagram for Core::ReadStream:

Inheritance graph
[legend]
Collaboration diagram for Core::ReadStream:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ReadStream (SequenceableCollection *collection)
virtual StringclassName (void) const
 Answer receiver class name.
virtual void flush (void)
virtual Objectnext (void)
virtual void nextPut (Object *object)
virtual long readPosition (void)
virtual bool isReadable (void)
virtual bool isWritable (void)

Constructor & Destructor Documentation

ReadStream::ReadStream SequenceableCollection collection  ) 
 

Definition at line 28 of file ReadStream.cc.

00029   : InternalStream(collection)
00030 {
00031     /* Does nothing */
00032 }


Member Function Documentation

String * ReadStream::className void   )  const [virtual]
 

Answer receiver class name.

Because there isn't any standard way to obtain class name this method comes to place.

Every class should rewrite this method but many didn't (yet).

Reimplemented from Core::InternalStream.

Reimplemented in Core::ReadAppendStream.

Definition at line 35 of file ReadStream.cc.

00036 {
00037     return new String("ReadStream");
00038 }

void ReadStream::flush void   )  [virtual]
 

Reimplemented from Core::Stream.

Reimplemented in Core::ReadAppendStream.

Definition at line 41 of file ReadStream.cc.

References Core::Object::shouldNotImplement().

00042 {
00043     shouldNotImplement(new String(__PRETTY_FUNCTION__));
00044 }

bool ReadStream::isReadable void   )  [virtual]
 

Reimplemented from Core::Stream.

Definition at line 65 of file ReadStream.cc.

00066 {
00067     return true;
00068 }

bool ReadStream::isWritable void   )  [virtual]
 

Reimplemented from Core::Stream.

Reimplemented in Core::ReadAppendStream.

Definition at line 70 of file ReadStream.cc.

00071 {
00072     return false;
00073 }

Object * ReadStream::next void   )  [virtual]
 

Reimplemented from Core::PositionableStream.

Definition at line 46 of file ReadStream.cc.

References Core::PositionableStream::_position, Core::SequenceableCollection::at(), Core::PositionableStream::collection, nil, and Core::PositionableStream::read_limit.

00047 {
00048     if (_position >= read_limit) {
00049         return nil;
00050     } else
00051         return collection->at(_position++);
00052 }

void ReadStream::nextPut Object object  )  [virtual]
 

Reimplemented from Core::Stream.

Reimplemented in Core::ReadAppendStream.

Definition at line 54 of file ReadStream.cc.

References Core::Object::shouldNotImplement().

00055 {
00056     shouldNotImplement(new String(__PRETTY_FUNCTION__));
00057 }

long ReadStream::readPosition void   )  [virtual]
 

Definition at line 59 of file ReadStream.cc.

References Core::PositionableStream::_position.

00060 {
00061     return _position;
00062 }


The documentation for this class was generated from the following files:
Generated on Mon Nov 27 09:51:52 2006 for Smalltalk like C++ Class Library by  doxygen 1.4.2