Package adql.query.operand.function
Class MathFunction
- java.lang.Object
-
- adql.query.operand.function.ADQLFunction
-
- adql.query.operand.function.MathFunction
-
- All Implemented Interfaces:
ADQLObject,ADQLOperand
public class MathFunction extends ADQLFunction
It represents any basic mathematical function.- Version:
- 1.4 (06/2015)
- Author:
- Grégory Mantelet (CDS;ARI)
- See Also:
MathFunctionType
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class adql.query.operand.function.ADQLFunction
ADQLFunction.ParameterIterator
-
-
Constructor Summary
Constructors Constructor Description MathFunction(MathFunction toCopy)Builds a mathematical function by copying the given one.MathFunction(MathFunctionType t)Creates a mathematical function without parameter.MathFunction(MathFunctionType t, ADQLOperand parameter)Creates a mathematical function with only one parameter.MathFunction(MathFunctionType t, ADQLOperand parameter1, ADQLOperand parameter2)Creates a mathematical function with two parameters.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ADQLObjectgetCopy()Gets a (deep) copy of this ADQL object.java.lang.StringgetName()Gets the name of this object in ADQL.intgetNbParameters()Gets the number of parameters this function has.ADQLOperandgetParameter(int index)Gets the index-th parameter.ADQLOperand[]getParameters()Gets the list of all parameters of this function.MathFunctionTypegetType()Gets the type of the function (ABS, COS, SIN, ...).booleanisGeometry()Tell whether this operand is a geometrical region or not.booleanisNumeric()Tell whether this operand is numeric or not.booleanisString()Tell whether this operand is a string or not.ADQLOperandsetParameter(int index, ADQLOperand replacer)Replaces the index-th parameter by the given one.-
Methods inherited from class adql.query.operand.function.ADQLFunction
adqlIterator, getPosition, paramIterator, setPosition, toADQL
-
-
-
-
Constructor Detail
-
MathFunction
public MathFunction(MathFunctionType t) throws java.lang.Exception
Creates a mathematical function without parameter.- Parameters:
t- The type of the function.- Throws:
java.lang.Exception- If the given function parameters are incorrect.- See Also:
MathFunction(MathFunctionType, ADQLOperand, ADQLOperand)
-
MathFunction
public MathFunction(MathFunctionType t, ADQLOperand parameter) throws java.lang.Exception
Creates a mathematical function with only one parameter.- Parameters:
t- The type of the function.parameter- Its only parameter.- Throws:
java.lang.Exception- If the given function parameters are incorrect.- See Also:
MathFunction(MathFunctionType, ADQLOperand, ADQLOperand)
-
MathFunction
public MathFunction(MathFunctionType t, ADQLOperand parameter1, ADQLOperand parameter2) throws java.lang.Exception
Creates a mathematical function with two parameters.- Parameters:
t- The type of the function.parameter1- Its first parameter.parameter2- Its second parameter.- Throws:
java.lang.Exception- If the given function parameters are incorrect.
-
MathFunction
public MathFunction(MathFunction toCopy) throws java.lang.Exception
Builds a mathematical function by copying the given one.- Parameters:
toCopy- The mathematical function to copy.- Throws:
java.lang.Exception- If there is an error during the copy.
-
-
Method Detail
-
getType
public final MathFunctionType getType()
Gets the type of the function (ABS, COS, SIN, ...).- Returns:
- Its type.
- See Also:
MathFunctionType
-
getCopy
public ADQLObject getCopy() throws java.lang.Exception
Description copied from interface:ADQLObjectGets a (deep) copy of this ADQL object.- Returns:
- The copy of this ADQL object.
- Throws:
java.lang.Exception- If there is any error during the copy.
-
getName
public java.lang.String getName()
Description copied from interface:ADQLObjectGets the name of this object in ADQL.- Returns:
- The name of this ADQL object.
-
isNumeric
public final boolean isNumeric()
Description copied from interface:ADQLOperandTell whether this operand is numeric or not.- Returns:
- true if this operand is numeric, false otherwise.
-
isString
public final boolean isString()
Description copied from interface:ADQLOperandTell whether this operand is a string or not.- Returns:
- true if this operand is a string, false otherwise.
-
isGeometry
public final boolean isGeometry()
Description copied from interface:ADQLOperandTell whether this operand is a geometrical region or not.- Returns:
- true if this operand is a geometry, false otherwise.
-
getParameters
public ADQLOperand[] getParameters()
Description copied from class:ADQLFunctionGets the list of all parameters of this function.- Specified by:
getParametersin classADQLFunction- Returns:
- Its parameters list.
-
getNbParameters
public int getNbParameters()
Description copied from class:ADQLFunctionGets the number of parameters this function has.- Specified by:
getNbParametersin classADQLFunction- Returns:
- Number of parameters.
-
getParameter
public ADQLOperand getParameter(int index) throws java.lang.ArrayIndexOutOfBoundsException
Description copied from class:ADQLFunctionGets the index-th parameter.- Specified by:
getParameterin classADQLFunction- Parameters:
index- Parameter number.- Returns:
- The corresponding parameter.
- Throws:
java.lang.ArrayIndexOutOfBoundsException- If the index is incorrect (index < 0 || index >= getNbParameters()).
-
setParameter
public ADQLOperand setParameter(int index, ADQLOperand replacer) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.NullPointerException, java.lang.Exception
Description copied from class:ADQLFunctionReplaces the index-th parameter by the given one.- Specified by:
setParameterin classADQLFunction- Parameters:
index- Index of the parameter to replace.replacer- The replacer.- Returns:
- The replaced parameter.
- Throws:
java.lang.ArrayIndexOutOfBoundsException- If the index is incorrect (index < 0 || index >= getNbParameters()).java.lang.NullPointerException- If a required parameter must be replaced by a NULL object.java.lang.Exception- If another error occurs.
-
-