ABLE 2.0.0 07/02/2003 10:25:01

com.ibm.able.data
Class AbleDiscreteVariable

java.lang.Object
  |
  +--com.ibm.able.data.AbleLhs
        |
        +--com.ibm.able.data.AbleVariable
              |
              +--com.ibm.able.data.AbleGenericVariable
                    |
                    +--com.ibm.able.data.AbleTypedVariable
                          |
                          +--com.ibm.able.data.AbleDiscreteVariable
All Implemented Interfaces:
AbleRd, AbleWr, java.io.Serializable
Direct Known Subclasses:
AbleDiscreteField

public class AbleDiscreteVariable
extends AbleTypedVariable
implements java.io.Serializable

This class defines the Able data discrete variable.

Discrete variables are essentially numeric variables, but rather than assuming any arbitrary number as the current value, a discrete variable can be assigned only 1 of N pre-defined numbers.

See Also:
Serialized Form

Field Summary
protected  double myInitialValue
          The initial double value used to reset this variable
protected  double myMaxValue
          The maximum value in myValueList, if known.
protected  boolean myMaxValueKnown
          A flag that indicates whether the maximum value in myValueList has been determined.
protected  double myMinValue
          The minimum value in myValueList, if known.
protected  boolean myMinValueKnown
          A flag that indicates whether the minimum value in myValueList has been determined.
protected  double myValue
          The current value of the variable.
protected  java.util.Vector myValueList
          The list of possible values that this variable can assume.
 
Fields inherited from class com.ibm.able.data.AbleTypedVariable
myDataTypeClass, myDataTypeClassName, myDataTypeName, myInitialParms
 
Fields inherited from class com.ibm.able.data.AbleVariable
myBoundFlag, myChgSupport, myComment, myContext, myDataType, myGlobalFlag, myId, myName, myPrompt, myReferences, myStaticFlag, myTemplateFlag, myValueInitial
 
Constructor Summary
AbleDiscreteVariable(java.lang.Object[] theValueList)
          Create a new AbleDiscreteVariable, used to initialize another discrete variable, over the specified set of numbers.
AbleDiscreteVariable(java.lang.Object[] theValueList, double theInitialValue)
          Create a new AbleDiscreteVariable, used to initialize another discrete variable, over the specified set of numbers with specified initial value.
AbleDiscreteVariable(java.lang.String theName)
          Create a new discrete variable.
AbleDiscreteVariable(java.lang.String theName, boolean theStaticFlag, boolean theGlobalFlag, java.util.Vector theValueList)
          Create a new discrete variable over the specified numbers.
AbleDiscreteVariable(java.lang.String theName, java.util.Vector theValueList)
          Create a new discrete variable over the specified numbers.
AbleDiscreteVariable(java.util.Vector theValueList)
          Create a new AbleDiscreteVariable, used to initialize another discrete variable, over the specified set of numbers.
AbleDiscreteVariable(java.util.Vector theValueList, double theInitialValue)
          Create a new AbleDiscreteVariable, used to initialize another discrete variable, over the specified set of numbers with specified initial value.
 
Method Summary
 void addValue(double theValue)
          Add a value to the list of pre-defined values.
 java.lang.String arlDclString()
          Return a formal ARL "declaration" string that describes this data object.
 void asgnEq(AbleRd theRhs)
          Assignment: assign the current value of theRhs to this data object.
 boolean cmpEq(AbleRd theRhs)
          Comparison, equal to: compare the current value of this data object to the current value of theRhs.
 boolean cmpGt(AbleRd theRhs)
          Comparison, greater than: compare the current value of this data object to the current value of theRhs.
 boolean cmpGtEq(AbleRd theRhs)
          Comparison, greater than or equal to: compare the current value of this data object to the current value of theRhs.
 boolean cmpLt(AbleRd theRhs)
          Comparison, less than: compare the current value of this data object to the current value of theRhs.
 boolean cmpLtEq(AbleRd theRhs)
          Comparison, less than or equal to: compare the current value of this data object to the current value of theRhs.
 boolean cmpNeq(AbleRd theRhs)
          Comparison, not equal to: compare the current value of this data object to the current value of theRhs.
 boolean getBooleanValue()
          Retrieve the value of this data object as a boolean value.
 java.lang.Class getDataTypeClass()
          Retrieve the actual class of this object's underlying data type.
 java.lang.String getDataTypeClassName()
          Retrieve the name of the class of this object's underlying data type.
 AbleFuzzySet getFuzzyValue()
          Retrieve the value of this data object as a fuzzy value.
 java.lang.Object getGenericValue()
          Retrieve the value of this data object as an Object.
 int getIndexOf(double theValue)
          Retrieve the index of a value in the list of pre-defined values.
 java.lang.Class getLiteralClass()
          Retrieve the class of this variable's related AbleLiteral data type.
 double getMaxValue()
          Retrieve the maximum value in the list of pre-defined values.
 double getMinValue()
          Retrieve the minimum value in the list of pre-defined values.
 double getNumericValue()
          Retrieve the value of this data object as a numeric value.
 java.lang.Object getRawValue()
          Retrieve the variable's current value.
 java.lang.String getStringValue()
          Retrieve the value of this data object as a string value.
 AbleLiteral getValue()
          Retrieve the value of this data object as a literal.
 double getValueAt(int theIndex)
          Retrieve the value at a specific location in the list of pre-defined values.
 java.util.Vector getValueList()
          Retrieve the list of pre-defined values for this variable.
 int getValueListSize()
          Retrieve the number of pre-defined values for this variable.
 java.lang.String getValueString()
          Retrieve the variable's current value as a string.
 void init()
          Init the variable to its initial state.
 void removeValue(double theValue)
          Remove a value from the list of pre-defined values.
 void reset()
          Reset the variable to its intial state.
 void setBooleanValue(boolean theNewValue)
          Set the value of this data object from a boolean value.
 void setFuzzyValue(AbleFuzzySet theNewValue)
          Set the value of this data object from a fuzzy value.
 void setGenericValue(java.lang.Object theNewValue)
          Set the value of this data object from an object.
 void setInitialValue(AbleRd theInitialValue)
          Set the initial value for this variable
 void setNumericValue(double theNewValue)
          Set the value of this data object from a numeric value.
 void setStringValue(java.lang.String theNewValue)
          Set the value of this data object from a string value.
 void setValue(AbleLiteral theNewValue)
          Set the value of this data object from a literal object.
 void setValueList(java.util.Vector theNewValueList)
          Set the list of pre-defined values, any one of which may be assigned to the current value of this variable.
 void setValueString(java.lang.String theNewValue)
          Set the variable's current value from a string.
 java.lang.String toString()
          Retrieve a string describing (the contents of) the object.
 java.lang.String traceString(int theTraceStringFlavor)
          Retrieve a string describing (the contents of) the object.
 boolean valueExist(double theValue)
          Determine whether a value exists in the list of pre-defined values.
 java.lang.String xmlDclString()
          Return a formal XML "declaration" string that describes this data object.
 
Methods inherited from class com.ibm.able.data.AbleTypedVariable
getDataTypeName, setRawValue
 
Methods inherited from class com.ibm.able.data.AbleGenericVariable
cmpIs, compDivide, compMinus, compMultiply, compPlus, compUnaryMinus, replaceValues
 
Methods inherited from class com.ibm.able.data.AbleVariable
arlCRdString, arlInitializerString, getArlComment, getChgSupport, getComment, getContext, getDataType, getDataTypeAsString, getId, getName, getPrompt, getPromptString, getReferences, getReferent, getReferents, getTemplateString, isBound, isConstant, isGlobal, isLocal, isStatic, isTemplate, notStatic, setChgSupport, setComment, setContext, setId, setPrompt, setReferences, setStatic, setTemplate, xmlCRdString, xmlCWrString, xmlInitializerString
 
Methods inherited from class com.ibm.able.data.AbleLhs
asgnIs, asgnIs, bitwiseAND, bitwiseNOT, bitwiseOR, bitwiseShiftLeft, bitwiseShiftRight, bitwiseShiftRightZeroFill, bitwiseXOR, compModulo, Copyright, logicalAND, logicalNOT, logicalOR
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

myValue

protected double myValue
The current value of the variable.

Initialized to Double.NaN.


myValueList

protected java.util.Vector myValueList
The list of possible values that this variable can assume.

myInitialValue

protected double myInitialValue
The initial double value used to reset this variable

myMaxValueKnown

protected boolean myMaxValueKnown
A flag that indicates whether the maximum value in myValueList has been determined.

myMaxValue

protected double myMaxValue
The maximum value in myValueList, if known. If not known, the value is Double.NaN.

myMinValueKnown

protected boolean myMinValueKnown
A flag that indicates whether the minimum value in myValueList has been determined.

myMinValue

protected double myMinValue
The minimum value in myValueList, if known. If not known, the value is Double.NaN.
Constructor Detail

AbleDiscreteVariable

public AbleDiscreteVariable(java.lang.Object[] theValueList)
                     throws AbleDataException
Create a new AbleDiscreteVariable, used to initialize another discrete variable, over the specified set of numbers.

The initial value of this variable is set to Double.NaN.

Parameters:
theValueList - A list of numbers (AbleLiteral objects representing numeric values), any one of which can be the current value of this variable.


AbleDiscreteVariable

public AbleDiscreteVariable(java.util.Vector theValueList)
                     throws AbleDataException
Create a new AbleDiscreteVariable, used to initialize another discrete variable, over the specified set of numbers.

The initial value of this variable is set to Double.NaN.

Parameters:
theValueList - A list of numbers (Double objects), any one of which can be the current value of this variable. The list is cloned.


AbleDiscreteVariable

public AbleDiscreteVariable(java.lang.Object[] theValueList,
                            double theInitialValue)
                     throws AbleDataException
Create a new AbleDiscreteVariable, used to initialize another discrete variable, over the specified set of numbers with specified initial value.
Parameters:
theValueList - A list of numbers (AbleLiteral objects representing Double value), any one of which can be the current value of this variable.

theInitialValue - The initial value for this variable. Must be a member of theValueList.

AbleDiscreteVariable

public AbleDiscreteVariable(java.util.Vector theValueList,
                            double theInitialValue)
                     throws AbleDataException
Create a new AbleDiscreteVariable, used to initialize another discrete variable, over the specified set of numbers with specified initial value.
Parameters:
theValueList - A list of numbers (Double objects), any one of which can be the current value of this variable. The list is cloned.

theInitialValue - The initial value for this variable. Must be a member of theValueList.

AbleDiscreteVariable

public AbleDiscreteVariable(java.lang.String theName,
                            java.util.Vector theValueList)
Create a new discrete variable over the specified numbers.

The initial value of this variable cannot be specified and is set to Double.NaN.

Parameters:
theName - The unique name of the variable.

theValueList - A list of numbers (Double objects), any one of which can be the current value of this variable. The list is cloned.


AbleDiscreteVariable

public AbleDiscreteVariable(java.lang.String theName,
                            boolean theStaticFlag,
                            boolean theGlobalFlag,
                            java.util.Vector theValueList)
Create a new discrete variable over the specified numbers.

The initial value of this variable cannot be specified and is set to Double.NaN.

Parameters:
theName - The unique name of the variable.

theStaticFlag - Use true if this variable is to be marked as static, which means that it will ignore future reset requests; use false if the variable can be reset to its initial value when requested.

theGlobalFlag - Use true if this variable is to be considered global; use false if the variable is to be considered local.

theValueList - A list of numbers (Double objects), any one of which can be the current value of this variable. The list is cloned.


AbleDiscreteVariable

public AbleDiscreteVariable(java.lang.String theName)
Create a new discrete variable. The value list must be set in a subsequent call.

The initial value of this variable cannot be specified and is set to Double.NaN.

Parameters:
theName - The unique name of the variable.

Method Detail

getBooleanValue

public boolean getBooleanValue()
                        throws AbleDataException
Retrieve the value of this data object as a boolean value.
Overrides:
getBooleanValue in class AbleGenericVariable
Returns:
A boolean, if the value of this object can be represented as a boolean value. If the current value is NaN, an exception is thrown; if the current value is 0.0, false is returned; any other numeric value returns true.
Throws:
AbleDataException - If the value of this object cannot be represented as a boolean value.

getFuzzyValue

public AbleFuzzySet getFuzzyValue()
                           throws AbleDataException
Retrieve the value of this data object as a fuzzy value.
Overrides:
getFuzzyValue in class AbleGenericVariable
Returns:
A fuzzy set, if the value of this object can be represented as a fuzzy value. This method always throws an exception.
Throws:
AbleDataException - If the value of this object cannot be represented as a fuzzy value.

getGenericValue

public java.lang.Object getGenericValue()
                                 throws AbleDataException
Retrieve the value of this data object as an Object.
Overrides:
getGenericValue in class AbleGenericVariable
Returns:
A Double object.
Throws:
AbleDataException - If the value of this object cannot be represented as an Object.

getNumericValue

public double getNumericValue()
                       throws AbleDataException
Retrieve the value of this data object as a numeric value.
Overrides:
getNumericValue in class AbleGenericVariable
Returns:
A double, if the value of this object can be represented as a numeric value.
Throws:
AbleDataException - If the value of this object cannot be represented as a numeric value.

getStringValue

public java.lang.String getStringValue()
                                throws AbleDataException
Retrieve the value of this data object as a string value.
Overrides:
getStringValue in class AbleGenericVariable
Returns:
A String, if the value of this object can be represented as a string value.
Throws:
AbleDataException - If the value of this object cannot be represented as a string value.

getValue

public AbleLiteral getValue()
                     throws AbleDataException
Retrieve the value of this data object as a literal.
Overrides:
getValue in class AbleGenericVariable
Returns:
An AbleNumericLiteral object.
Throws:
AbleDataException - If the value of this object cannot be represented as a literal.

asgnEq

public void asgnEq(AbleRd theRhs)
            throws AbleDataException
Assignment: assign the current value of theRhs to this data object.
Overrides:
asgnEq in class AbleGenericVariable
Parameters:
theRhs - The right-hand, or source, side of the assignment.

Throws:
AbleDataException - If the right-hand side cannot be converted (if necessary) and assigned to this data object.

cmpEq

public boolean cmpEq(AbleRd theRhs)
              throws AbleDataException
Comparison, equal to: compare the current value of this data object to the current value of theRhs.

"==" is used for numeric and boolean compares; equals() is used for Object compares; and Collator.equals() is used for String compares.

Overrides:
cmpEq in class AbleGenericVariable
Parameters:
theRhs - The right-hand side of the comparison.

Returns:
true, if this data object is equal to theRhs; false, otherwise.
Throws:
AbleDataException - If the right-hand side cannot be converted (if necessary) and compared to this data object.

cmpGt

public boolean cmpGt(AbleRd theRhs)
              throws AbleDataException
Comparison, greater than: compare the current value of this data object to the current value of theRhs.

">" is used for numeric compares; Collator.compare() is used for String compares. Use of other data types on the left-hand side causes an exception.

Overrides:
cmpGt in class AbleGenericVariable
Parameters:
theRhs - The right-hand side of the comparison.

Returns:
true, if this data object is greater than theRhs; false, otherwise.
Throws:
AbleDataException - If the right-hand side cannot be converted (if necessary) and compared to this data object.

cmpGtEq

public boolean cmpGtEq(AbleRd theRhs)
                throws AbleDataException
Comparison, greater than or equal to: compare the current value of this data object to the current value of theRhs.

">=" is used for numeric compares; Collator.compare() is used for String compares. Use of other data types on the left-hand side causes an exception.

Overrides:
cmpGtEq in class AbleGenericVariable
Parameters:
theRhs - The right-hand side of the comparison.

Returns:
true, if this data object is greater than or equal to theRhs; false, otherwise.
Throws:
AbleDataException - If the right-hand side cannot be converted (if necessary) and compared to this data object.

cmpLt

public boolean cmpLt(AbleRd theRhs)
              throws AbleDataException
Comparison, less than: compare the current value of this data object to the current value of theRhs.

"<" is used for numeric compares; Collator.compare() is used for String compares. Use of other data types on the left-hand side causes an exception.

Overrides:
cmpLt in class AbleGenericVariable
Parameters:
theRhs - The right-hand side of the comparison.

Returns:
true, if this data object is less than theRhs; false, otherwise.
Throws:
AbleDataException - If the right-hand side cannot be converted (if necessary) and compared to this data object.

cmpLtEq

public boolean cmpLtEq(AbleRd theRhs)
                throws AbleDataException
Comparison, less than or equal to: compare the current value of this data object to the current value of theRhs.

"<=" is used for numeric compares; Collator.compare() is used for String compares. Use of other data types on the left-hand side causes an exception.

Overrides:
cmpLtEq in class AbleGenericVariable
Parameters:
theRhs - The right-hand side of the comparison.

Returns:
true, if this data object is less than or equal to theRhs; false, otherwise.
Throws:
AbleDataException - If the right-hand side cannot be converted (if necessary) and compared to this data object.

cmpNeq

public boolean cmpNeq(AbleRd theRhs)
               throws AbleDataException
Comparison, not equal to: compare the current value of this data object to the current value of theRhs.

"!=" is used for numeric and boolean compares; ! equals() is used for Object compares; and ! Collator.equals() is used for String compares.

Overrides:
cmpNeq in class AbleGenericVariable
Parameters:
theRhs - The right-hand side of the comparison.

Returns:
true, if this data object is not equal to theRhs; false, otherwise.
Throws:
AbleDataException - If the right-hand side cannot be converted (if necessary) and compared to this data object.

setBooleanValue

public void setBooleanValue(boolean theNewValue)
                     throws AbleDataException
Set the value of this data object from a boolean value.
Overrides:
setBooleanValue in class AbleGenericVariable
Parameters:
theNewValue - A boolean value. If the new value is true the variable is set to 1.0, but only if 1.0 is a valid pre-defined number for this variable; if the new value is false the variable is set to 0.0, but only if 0.0 is a valid pre-defined number; in all other cases an exception is thrown.

Throws:
AbleDataException - If the value of this object cannot be represented as a boolean value.

setFuzzyValue

public void setFuzzyValue(AbleFuzzySet theNewValue)
                   throws AbleDataException
Set the value of this data object from a fuzzy value. This method always throws an exception.
Overrides:
setFuzzyValue in class AbleGenericVariable
Parameters:
theNewValue - A fuzzy set.

Throws:
AbleDataException - If the value of this object cannot be represented as a fuzzy value.

setGenericValue

public void setGenericValue(java.lang.Object theNewValue)
                     throws AbleDataException
Set the value of this data object from an object.
Overrides:
setGenericValue in class AbleGenericVariable
Parameters:
theNewValue - Any type of Object.

Throws:
AbleDataException - If the value of this object cannot be derived from the specified Object.

setNumericValue

public void setNumericValue(double theNewValue)
                     throws AbleDataException
Set the value of this data object from a numeric value.
Overrides:
setNumericValue in class AbleGenericVariable
Parameters:
theNewValue - Any number. The variable is set to the new value, but only if that value is a pre-defined number of the variable; otherwise an exception is thrown.

Throws:
AbleDataException - If the value of this object cannot be represented as a numeric value.

setStringValue

public void setStringValue(java.lang.String theNewValue)
                    throws AbleDataException
Set the value of this data object from a string value.
Overrides:
setStringValue in class AbleTypedVariable
Parameters:
theNewValue - A string. The variable is set to the value of the string, but only if the string can be parsed to a double and that number is a pre-defined number of the variable; otherwise an exception is thrown.

Throws:
AbleDataException - If the value of this object cannot be represented as a string value.

setValue

public void setValue(AbleLiteral theNewValue)
              throws AbleDataException
Set the value of this data object from a literal object.
Overrides:
setValue in class AbleGenericVariable
Parameters:
theNewValue - An Able literal of any type. An attempt is made to convert the literal to an appropriate type before assigning it to this "writable" object.

Throws:
AbleDataException - If the value of this object cannot be determined from the literal object.

arlDclString

public java.lang.String arlDclString()
Return a formal ARL "declaration" string that describes this data object.
Overrides:
arlDclString in class AbleTypedVariable
Returns:
A String describing the data object in formal rule language.

xmlDclString

public java.lang.String xmlDclString()
Return a formal XML "declaration" string that describes this data object.
Overrides:
xmlDclString in class AbleTypedVariable
Returns:
A String describing the data object in XML.

setValueString

public void setValueString(java.lang.String theNewValue)
                    throws AbleDataException
Set the variable's current value from a string. Note: This method is provided for the use of a rule language parser.
Overrides:
setValueString in class AbleGenericVariable

getValueString

public java.lang.String getValueString()
Retrieve the variable's current value as a string. Note: This method is provided for the use of a rule language parser.
Overrides:
getValueString in class AbleGenericVariable

reset

public void reset()
           throws AbleDataException
Reset the variable to its intial state.
Overrides:
reset in class AbleTypedVariable

init

public void init()
          throws AbleDataException
Init the variable to its initial state.
Overrides:
init in class AbleTypedVariable

getDataTypeClass

public java.lang.Class getDataTypeClass()
Description copied from class: AbleLhs
Retrieve the actual class of this object's underlying data type.
Overrides:
getDataTypeClass in class AbleTypedVariable
Following copied from class: com.ibm.able.data.AbleLhs
Returns:
The class of the underlying data type.

getDataTypeClassName

public java.lang.String getDataTypeClassName()
Description copied from class: AbleLhs
Retrieve the name of the class of this object's underlying data type.
Overrides:
getDataTypeClassName in class AbleTypedVariable
Following copied from class: com.ibm.able.data.AbleLhs
Returns:
A String that is the name of the class of the underlying data type.

getLiteralClass

public java.lang.Class getLiteralClass()
Retrieve the class of this variable's related AbleLiteral data type.
Overrides:
getLiteralClass in class AbleGenericVariable
Returns:
The class of the literal data type.

setInitialValue

public void setInitialValue(AbleRd theInitialValue)
                     throws AbleDataException
Set the initial value for this variable
Overrides:
setInitialValue in class AbleVariable
Parameters:
theInitialValue - An AbleCategoricalVariable used to set the initial value

getRawValue

public java.lang.Object getRawValue()
Retrieve the variable's current value.

setValueList

public void setValueList(java.util.Vector theNewValueList)
Set the list of pre-defined values, any one of which may be assigned to the current value of this variable. Values not appearing in this list may not be assigned to this variable.

If the current value of this variable does not appear in the new value list, the current value is set to Double.NaN.

Parameters:
theNewValueList - A list where each element is a Double object.

The input list is cloned and saved.


getValueList

public java.util.Vector getValueList()
Retrieve the list of pre-defined values for this variable.
Returns:
A reference to the actual list and not a clone.

getValueListSize

public int getValueListSize()
Retrieve the number of pre-defined values for this variable.
Returns:
The number of values in the value list.

valueExist

public boolean valueExist(double theValue)
Determine whether a value exists in the list of pre-defined values.
Parameters:
theValue - A value whose existence in the list of pre-defined values is to be determined.

Returns:
true if the specified value exists in the list, false otherwise.

addValue

public void addValue(double theValue)
              throws AbleDataException
Add a value to the list of pre-defined values.
Parameters:
theValue - A value to add to the list of pre-defined values.

Throws:
AbleDataException - if the specified value already exists in the list.

removeValue

public void removeValue(double theValue)
                 throws AbleDataException
Remove a value from the list of pre-defined values.

If the current value of this variable corresponds to the value being removed, the current value is set to Double.NaN.

Parameters:
theValue - A value to remove from the list of pre-defined values.

Throws:
AbleDataException - if the specified value does not exist in the list.

getIndexOf

public int getIndexOf(double theValue)
               throws AbleDataException
Retrieve the index of a value in the list of pre-defined values.
Parameters:
theValue - A value whose index is to be returned.

Returns:
The index of the specified value.
Throws:
AbleDataException - if the specified value does not exist in the list.

getValueAt

public double getValueAt(int theIndex)
                  throws AbleDataException
Retrieve the value at a specific location in the list of pre-defined values.
Parameters:
theIndex - The location whose value is to be returned.

Returns:
The value at the specified location.
Throws:
AbleDataException - if the specified location is out of bounds.

getMaxValue

public double getMaxValue()
Retrieve the maximum value in the list of pre-defined values.

If the value is already known, it is simply returned. If the value is not known, it is computed, which can possibly be time consuming depending on the size of the list of pre-defined values. Any change to the list, by adding or removing elements with the provided methods, means that the value will need to be recomputed.

If the user obtains a direct reference to the list by means of the getValueList() method, and then manipulates the list directly, this method will not return the correct value.

Returns:
The maximum of all the values in the list of pre-defined values. If the list is empty or otherwise not set, Double.NaN is returned.

getMinValue

public double getMinValue()
Retrieve the minimum value in the list of pre-defined values.

If the value is already known, it is simply returned. If the value is not known, it is computed, which can possibly be time consuming depending on the size of the list of pre-defined values. Any change to the list, by adding or removing elements with the provided methods, means that the value will need to be recomputed.

If the user obtains a direct reference to the list by means of the getValueList() method, and then manipulates the list directly, this method will not return the correct value.

Returns:
The minimum of all the values in the list of pre-defined values. If the list is empty or otherwise not set, Double.NaN is returned.

toString

public java.lang.String toString()
Retrieve a string describing (the contents of) the object.
Overrides:
toString in class AbleTypedVariable
Returns:
A String containing the current contents of the object.

traceString

public java.lang.String traceString(int theTraceStringFlavor)
Retrieve a string describing (the contents of) the object.
Overrides:
traceString in class AbleTypedVariable
Parameters:
theFlavor - An Able.TraceStringFlavor value.

Returns:
A String containing the current contents of the object.

ABLE 2.0.0 07/02/2003 10:25:01

(C) Copyright IBM Corporation 1999, 2003