Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

PolyWordRep Class Reference

#include <PolyWordRep.h>

Inheritance diagram for PolyWordRep::

PureRep RefCounter List of all members.

Public Methods

 PolyWordRep ()
 PolyWordRep (const Letter &let)
 PolyWordRep (const Word &w)
 PolyWordRep (const class AbelianWord &aw)
 PolyWordRep (const PolyWordRep &src)
 ~PolyWordRep ()
int length () const
int numberOfLetters () const
bool isCollected () const
const LetterfirstLetter () const
const LetterlastLetter () const
void printOn (ostream &s) const
ostream& write (ostream &s) const
istream& read (istream &s)
void debugInfo () const
Word toWord () const
Chars toChars (const VectorOf< Chars > &name) const
void freelyReduce ()
PolyWord inverse () const
void append (const PolyWord &w)
void append (const Letter &w)
void clear ()
void removeFirstLetter ()
PolyWord raiseToPower (int power) const
Chars inTermsOf (const VectorOf< Chars > &v) const
void duplicate (PolyWordNode *&ptrToFirst, PolyWordNode *&ptrToLast) const
virtual PureRepclone () const
void removeTheLetter (PolyWordNode *theLetter)

Static Public Methods

void bind (PolyWordNode *leftNode, PolyWordNode *rightNode)

Private Attributes

PolyWordNodefirst
PolyWordNodelast
int theNumberOfNodes

Friends

class  PolyWordIterator
class  ConstPolyWordIterator

Constructor & Destructor Documentation

PolyWordRep::PolyWordRep ( ) [inline]
 

Definition at line 60 of file PolyWordRep.h.

Referenced by clone().

PolyWordRep::PolyWordRep ( const Letter & let ) [inline]
 

Definition at line 62 of file PolyWordRep.h.

PolyWordRep::PolyWordRep ( const Word & w )
 

PolyWordRep::PolyWordRep ( const class AbelianWord & aw )
 

PolyWordRep::PolyWordRep ( const PolyWordRep & src ) [inline]
 

Definition at line 70 of file PolyWordRep.h.

PolyWordRep::~PolyWordRep ( ) [inline]
 

Definition at line 76 of file PolyWordRep.h.


Member Function Documentation

int PolyWordRep::length ( ) const
 

int PolyWordRep::numberOfLetters ( ) const [inline]
 

Definition at line 87 of file PolyWordRep.h.

bool PolyWordRep::isCollected ( ) const
 

const Letter & PolyWordRep::firstLetter ( ) const [inline]
 

Definition at line 94 of file PolyWordRep.h.

const Letter & PolyWordRep::lastLetter ( ) const [inline]
 

Definition at line 100 of file PolyWordRep.h.

void PolyWordRep::printOn ( ostream & s ) const
 

ostream& PolyWordRep::write ( ostream & s ) const
 

istream& PolyWordRep::read ( istream & s )
 

void PolyWordRep::debugInfo ( ) const
 

Word PolyWordRep::toWord ( ) const
 

Chars PolyWordRep::toChars ( const VectorOf< Chars > & name ) const
 

void PolyWordRep::freelyReduce ( )
 

PolyWord PolyWordRep::inverse ( ) const
 

void PolyWordRep::append ( const PolyWord & w )
 

void PolyWordRep::append ( const Letter & w )
 

void PolyWordRep::clear ( )
 

Referenced by ~PolyWordRep().

void PolyWordRep::removeFirstLetter ( ) [inline]
 

Definition at line 147 of file PolyWordRep.h.

PolyWord PolyWordRep::raiseToPower ( int power ) const
 

Chars PolyWordRep::inTermsOf ( const VectorOf< Chars > & v ) const
 

void PolyWordRep::duplicate ( PolyWordNode *& ptrToFirst,
PolyWordNode *& ptrToLast ) const
 

void PolyWordRep::bind ( PolyWordNode * leftNode,
PolyWordNode * rightNode ) [inline, static]
 

Definition at line 167 of file PolyWordRep.h.

PureRep * PolyWordRep::clone ( ) const [inline, virtual]
 

Returns a pointer to a copy of the object. Should be implemented as a member which gives a new `deep-copy' by each representation derived from this; normally, by making it new CopyConstrutor(*this) with CopyConstructor doing `deep-copy' (`' because it is enough for the copy constructor to do logical deep copy).

Reimplemented from PureRep.

Definition at line 176 of file PolyWordRep.h.

void PolyWordRep::removeTheLetter ( PolyWordNode * theLetter )
 

Referenced by removeFirstLetter().


Friends And Related Function Documentation

friend class PolyWordIterator [friend]
 

Definition at line 173 of file PolyWordRep.h.

friend class ConstPolyWordIterator [friend]
 

Definition at line 174 of file PolyWordRep.h.


Member Data Documentation

PolyWordNode* PolyWordRep::first [private]
 

Definition at line 186 of file PolyWordRep.h.

PolyWordNode * PolyWordRep::last [private]
 

Definition at line 186 of file PolyWordRep.h.

int PolyWordRep::theNumberOfNodes [private]
 

Definition at line 187 of file PolyWordRep.h.


The documentation for this class was generated from the following file:
Generated at Tue Jun 19 09:50:02 2001 for Magnus Classes by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001