org.rubato.math.yoneda
Interface FactorDenotator

All Superinterfaces:
java.lang.Iterable<Denotator>
All Known Implementing Classes:
ColimitDenotator, LimitDenotator, ListDenotator, NameDenotator, PowerDenotator

public interface FactorDenotator
extends java.lang.Iterable<Denotator>

Interface for denotators that have factors. These are all types of denotators except simple denotators.

Author:
Gérard Milmeister

Method Summary
 boolean appendFactor(Denotator d)
          Appends, if possible, the factor d.
 Denotator getFactor(int i)
          Returns the factor in position i.
 int getFactorCount()
          Returns the number of coordinates of the denotator.
 java.util.List<Denotator> getFactors()
          Returns a (new) list of the coordinates of the denotator.
 java.util.Iterator<Denotator> iterator()
          Returns an iterator over the coordinates.
 void setFactor(int i, Denotator d)
          Sets the factor d in position i.
 

Method Detail

getFactorCount

int getFactorCount()
Returns the number of coordinates of the denotator.

Returns:
number of coordinates

getFactor

Denotator getFactor(int i)
Returns the factor in position i.

Parameters:
i - the position of the factor

setFactor

void setFactor(int i,
               Denotator d)
               throws RubatoException
Sets the factor d in position i. This is a destructive operation; beware of aliasing.

Throws:
RubatoException

appendFactor

boolean appendFactor(Denotator d)
                     throws RubatoException
Appends, if possible, the factor d. This is a destructive operation; beware of aliasing.

Returns:
true iff the append is successful
Throws:
RubatoException

getFactors

java.util.List<Denotator> getFactors()
Returns a (new) list of the coordinates of the denotator.


iterator

java.util.Iterator<Denotator> iterator()
Returns an iterator over the coordinates.

Specified by:
iterator in interface java.lang.Iterable<Denotator>