ptolemy.data
Class IntToken

java.lang.Object
  |
  +--ptolemy.data.Token
        |
        +--ptolemy.data.ScalarToken
              |
              +--ptolemy.data.IntToken
All Implemented Interfaces:
java.io.Serializable

public class IntToken
extends ScalarToken

A token that contains an integer number.

Since:
Ptolemy II 0.2
Version:
$Id: IntToken.java,v 1.71.2.1 2002/05/08 01:13:36 cxh Exp $
Author:
Neil Smyth, Yuhong Xiong
See Also:
Serialized Form

Fields inherited from class ptolemy.data.ScalarToken
_unitCategoryExponents
 
Constructor Summary
IntToken()
          Construct a token with integer 0.
IntToken(int value)
          Construct a token with the specified value.
IntToken(java.lang.String init)
          Construct an IntToken from the specified string.
 
Method Summary
 ScalarToken absolute()
          Return an IntToken containing the absolute value of the value of this token.
 Token add(Token rightArgument)
          Return a new token whose value is the sum of this token and the argument.
 Token addReverse(Token leftArgument)
          Return a new token whose value is the sum of this token and the argument.
 Complex complexValue()
          Return the value of this token as a Complex.
static Token convert(Token token)
          Convert the specified token into an instance of IntToken.
 Token divide(Token divisor)
          Return a new token whose value is the value of this token divided by the value of the argument token.
 Token divideReverse(Token dividend)
          Return a new token whose value is the value of the argument token divided by the value of this token.
 double doubleValue()
          Return the value in the token as a double.
 boolean equals(java.lang.Object object)
          Return true if the argument is an instance of IntToken with the same value.
 Type getType()
          Return the type of this token.
 int hashCode()
          Return a hash code value for this token.
 int intValue()
          Return the value in the token as an int.
 BooleanToken isEqualTo(Token token)
          Test the value and units of this token and the argument token for equality.
 BooleanToken isLessThan(ScalarToken token)
          Check if the value of this token is strictly less than that of the argument token.
 long longValue()
          Return the value in the token as a long.
 Token modulo(Token rightArgument)
          Return a new token whose value is the value of this token modulo the value of the argument token.
 Token moduloReverse(Token leftArgument)
          Return a new token whose value is the value of the argument token modulo the value of this token.
 Token multiply(Token rightFactor)
          Return a new token whose value is the value of this token multiplied by the value of the argument token.
 Token multiplyReverse(Token leftFactor)
          Return a new token whose value is the value of the argument token multiplied by the value of this token.
 Token one()
          Returns a new IntToken with value 1.
 Token subtract(Token rightArgument)
          Return a new token whose value is the value of the argument token subtracted from the value of this token.
 Token subtractReverse(Token leftArgument)
          Return a new token whose value is the value of this token subtracted from the value of the argument token.
 java.lang.String toString()
          Return the value of this token as a string that can be parsed by the expression language to recover a token with the same value.
 Token zero()
          Returns a new IntToken with value 0.
 
Methods inherited from class ptolemy.data.ScalarToken
_addCategoryExponents, _areUnitsEqual, _copyOfCategoryExponents, _isUnitless, _subtractCategoryExponents, fixValue, inUnitsOf, setUnitCategory, unitsString
 
Methods inherited from class ptolemy.data.Token
_notSupportedMessage, isCloseTo, isCloseTo
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

IntToken

public IntToken()
Construct a token with integer 0.

IntToken

public IntToken(int value)
Construct a token with the specified value.

IntToken

public IntToken(java.lang.String init)
         throws IllegalActionException
Construct an IntToken from the specified string.
Throws:
IllegalActionException - If the token could not be created with the given String.
Method Detail

absolute

public ScalarToken absolute()
Return an IntToken containing the absolute value of the value of this token.
Overrides:
absolute in class ScalarToken
Returns:
An IntToken.

add

public Token add(Token rightArgument)
          throws IllegalActionException
Return a new token whose value is the sum of this token and the argument. Type resolution also occurs here, with the returned token type chosen to achieve a lossless conversion.
Overrides:
add in class Token
Parameters:
rightArgument - The token to add to this token.
Returns:
A new token containing the result.
Throws:
IllegalActionException - If the argument token is not of a type that can be added to this token, or the units of this token and the argument token are not the same.

addReverse

public Token addReverse(Token leftArgument)
                 throws IllegalActionException
Return a new token whose value is the sum of this token and the argument. Type resolution also occurs here, with the returned token type chosen to achieve a lossless conversion.
Overrides:
addReverse in class Token
Parameters:
leftArgument - The token to add this token to.
Returns:
A new token containing the result.
Throws:
IllegalActionException - If the argument token is not of a type that can be added to this token, or the units of this token and the argument token are not the same.

complexValue

public Complex complexValue()
Return the value of this token as a Complex. The real part of the Complex is the value of this token, the imaginary part is set to 0.
Overrides:
complexValue in class ScalarToken
Returns:
A Complex.

convert

public static Token convert(Token token)
                     throws IllegalActionException
Convert the specified token into an instance of IntToken. This method does lossless conversion. If the argument is already an instance of IntToken, it is returned without any change. Otherwise, if the argument is below IntToken in the type hierarchy, it is converted to an instance of IntToken or one of the subclasses of IntToken and returned. If none of the above condition is met, an exception is thrown.
Parameters:
token - The token to be converted to a IntToken.
Returns:
A IntToken.
Throws:
IllegalActionException - If the conversion cannot be carried out.

divide

public Token divide(Token divisor)
             throws IllegalActionException
Return a new token whose value is the value of this token divided by the value of the argument token. Type resolution also occurs here, with the returned token type chosen to achieve a lossless conversion. If two integers are divided, the result will be an integer which is the quotient.
Overrides:
divide in class Token
Parameters:
divisor - The token to divide this token by
Returns:
A new token containing the result.
Throws:
IllegalActionException - If the argument token is not of a type that can be divide this token by.

divideReverse

public Token divideReverse(Token dividend)
                    throws IllegalActionException
Return a new token whose value is the value of the argument token divided by the value of this token. Type resolution also occurs here, with the returned token type chosen to achieve a lossless conversion.
Overrides:
divideReverse in class Token
Parameters:
dividend - The token to be divided by the value of this token.
Returns:
A new token containing the result.
Throws:
IllegalActionException - If the argument token is not of a type that can be divided by this tokens value.

doubleValue

public double doubleValue()
Return the value in the token as a double.
Overrides:
doubleValue in class ScalarToken
Returns:
The value contained in this token as a double.

equals

public boolean equals(java.lang.Object object)
Return true if the argument is an instance of IntToken with the same value.
Overrides:
equals in class Token
Parameters:
object - An instance of Object.
Returns:
True if the argument is an instance of IntToken with the same value.

getType

public Type getType()
Return the type of this token.
Overrides:
getType in class ScalarToken
Returns:
BaseType.INT

hashCode

public int hashCode()
Return a hash code value for this token. This method just returns the contained integer.
Overrides:
hashCode in class Token
Returns:
A hash code value for this token.

isEqualTo

public BooleanToken isEqualTo(Token token)
                       throws IllegalActionException
Test the value and units of this token and the argument token for equality. Type resolution also occurs here, with the returned token type chosen to achieve a lossless conversion.
Overrides:
isEqualTo in class Token
Parameters:
token - The token with which to test equality.
Returns:
a boolean token that contains the value true if the value and units of this token are equal to those of the argument token.
Throws:
IllegalActionException - If the argument token is not of a type that can be compared with this token.

isLessThan

public BooleanToken isLessThan(ScalarToken token)
                        throws IllegalActionException
Check if the value of this token is strictly less than that of the argument token.
Overrides:
isLessThan in class ScalarToken
Parameters:
token - A ScalarToken.
Returns:
A BooleanToken with value true if this token is strictly less than the argument.
Throws:
IllegalActionException - If the type of the argument token is incomparable with the type of this token, or the units of this token and the argument are not the same.

intValue

public int intValue()
Return the value in the token as an int.
Overrides:
intValue in class ScalarToken
Returns:
The int value contained in this token.

longValue

public long longValue()
Return the value in the token as a long.
Overrides:
longValue in class ScalarToken
Returns:
The int value contained in this token as a long.

modulo

public Token modulo(Token rightArgument)
             throws IllegalActionException
Return a new token whose value is the value of this token modulo the value of the argument token. Type resolution also occurs here, with the returned token type chosen to achieve a lossless conversion.
Overrides:
modulo in class Token
Parameters:
rightArgument - The token to modulo this token by.
Returns:
A new token containing the result.
Throws:
IllegalActionException - If the argument token is not of a type that can be used with modulo, or the units of this token and the argument token are not the same.

moduloReverse

public Token moduloReverse(Token leftArgument)
                    throws IllegalActionException
Return a new token whose value is the value of the argument token modulo the value of this token. Type resolution also occurs here, with the returned token type chosen to achieve a lossless conversion.
Overrides:
moduloReverse in class Token
Parameters:
leftArgument - The token to apply modulo to by the value of this token.
Returns:
A new token containing the result.
Throws:
IllegalActionException - If the argument token is not of a type that can apply modulo by this token, or if the units of this token are not the same as those of the argument.

multiply

public Token multiply(Token rightFactor)
               throws IllegalActionException
Return a new token whose value is the value of this token multiplied by the value of the argument token. Type resolution also occurs here, with the returned token type chosen to achieve a lossless conversion.
Overrides:
multiply in class Token
Parameters:
rightFactor - The token to multiply this token by.
Returns:
A new token containing the result.
Throws:
IllegalActionException - If the argument token is not of a type that can be multiplied to this token.

multiplyReverse

public Token multiplyReverse(Token leftFactor)
                      throws IllegalActionException
Return a new token whose value is the value of the argument token multiplied by the value of this token. Type resolution also occurs here, with the returned token type chosen to achieve a lossless conversion.
Overrides:
multiplyReverse in class Token
Parameters:
leftFactor - The token to be multiplied by the value of this token.
Returns:
A new token containing the result.
Throws:
IllegalActionException - If the argument token is not of a type that can be multiplied by this token.

one

public Token one()
Returns a new IntToken with value 1.
Overrides:
one in class Token
Returns:
A new IntToken with value 1.

subtract

public Token subtract(Token rightArgument)
               throws IllegalActionException
Return a new token whose value is the value of the argument token subtracted from the value of this token. Type resolution also occurs here, with the returned token type chosen to achieve a lossless conversion.
Overrides:
subtract in class Token
Parameters:
rightArgument - The token to subtract from this token.
Returns:
A new token containing the result.
Throws:
IllegalActionException - If the argument token is not of a type that can be subtracted from this token, or the units of this token and the argument token are not the same.

subtractReverse

public Token subtractReverse(Token leftArgument)
                      throws IllegalActionException
Return a new token whose value is the value of this token subtracted from the value of the argument token. Type resolution also occurs here, with the returned token type chosen to achieve a lossless conversion.
Overrides:
subtractReverse in class Token
Parameters:
leftArgument - The token to add this token to.
Returns:
A new token containing the result.
Throws:
IllegalActionException - If the argument token is not of a type that can be added to this token, or the units of this token and the argument token are not the same.

toString

public java.lang.String toString()
Return the value of this token as a string that can be parsed by the expression language to recover a token with the same value. If this token has a unit, the return string also includes a unit string produced by the unitsString() method in the super class.
Overrides:
toString in class Token
Returns:
A String representing the int value and the units (if any) of this token.
See Also:
ScalarToken.unitsString()

zero

public Token zero()
Returns a new IntToken with value 0.
Overrides:
zero in class Token
Returns:
A new IntToken with value 0.