Package adql.query.operand.function
Class ADQLFunction
java.lang.Object
adql.query.operand.function.ADQLFunction
- All Implemented Interfaces:
ADQLObject
,ADQLOperand
- Direct Known Subclasses:
CastFunction
,CoalesceFunction
,GeometryFunction
,InUnitFunction
,LowerFunction
,MathFunction
,SQLFunction
,UpperFunction
,UserDefinedFunction
Represents any kind of function.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected class
Lets iterating on all parameters of the given function. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionGets an iterator on the intern ADQL objects.abstract int
Gets the number of parameters this function has.abstract ADQLOperand
getParameter
(int index) Gets the index-th parameter.abstract ADQLOperand[]
Gets the list of all parameters of this function.final TextPosition
Gets the position of this object/token in the ADQL query.Creates an iterator on the parameters of this function.abstract ADQLOperand
setParameter
(int index, ADQLOperand replacer) Replaces the index-th parameter by the given one.final void
setPosition
(TextPosition position) Set the position of thisADQLFunction
in the ADQL query string.toADQL()
Gets the ADQL expression of this object.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface adql.query.ADQLObject
getCopy, getFeatureDescription, getName
Methods inherited from interface adql.query.operand.ADQLOperand
isGeometry, isNumeric, isString
-
Constructor Details
-
ADQLFunction
public ADQLFunction()
-
-
Method Details
-
getPosition
Description copied from interface:ADQLObject
Gets the position of this object/token in the ADQL query.By default, no position should be set.
- Specified by:
getPosition
in interfaceADQLObject
- Returns:
- Position of this ADQL item in the ADQL query, or NULL if not written originally in the query (for example, if added afterwards).
-
setPosition
Set the position of thisADQLFunction
in the ADQL query string.- Parameters:
position
- New position of thisADQLFunction
- Since:
- 1.4
-
getNbParameters
public abstract int getNbParameters()Gets the number of parameters this function has.- Returns:
- Number of parameters.
-
getParameters
Gets the list of all parameters of this function.- Returns:
- Its parameters list.
-
getParameter
Gets the index-th parameter.- Parameters:
index
- Parameter number.- Returns:
- The corresponding parameter.
- Throws:
ArrayIndexOutOfBoundsException
- If the index is incorrect (index < 0 || index >= getNbParameters()).
-
setParameter
public abstract ADQLOperand setParameter(int index, ADQLOperand replacer) throws ArrayIndexOutOfBoundsException, NullPointerException, Exception Replaces the index-th parameter by the given one.- Parameters:
index
- Index of the parameter to replace.replacer
- The replacer.- Returns:
- The replaced parameter.
- Throws:
ArrayIndexOutOfBoundsException
- If the index is incorrect (index < 0 || index >= getNbParameters()).NullPointerException
- If a required parameter must be replaced by a NULL object.Exception
- If another error occurs.
-
paramIterator
Creates an iterator on the parameters of this function.- Returns:
- Parameters iterator.
-
adqlIterator
Description copied from interface:ADQLObject
Gets an iterator on the intern ADQL objects.Note: The returned iterator is particularly used by a
ISearchHandler
extension to browse a whole ADQL tree.- Specified by:
adqlIterator
in interfaceADQLObject
- Returns:
- An ADQL objects iterator.
- See Also:
-
toADQL
Description copied from interface:ADQLObject
Gets the ADQL expression of this object.- Specified by:
toADQL
in interfaceADQLObject
- Returns:
- The corresponding ADQL expression.
-