uk.ac.bbk.dcs.automed.qproc.functions
Class BuiltInFunction

java.lang.Object
  extended by uk.ac.bbk.dcs.automed.qproc.functions.BuiltInFunction
Direct Known Subclasses:
And, Append, Average, Bag2List, Bag2Set, BComprehension, CallToWrapper, Choose, Comprehension, Concat, Count, CrimeIQLFun1, Div, Divide, ElementsFromRDB, Equals, Flatmap, Foldl, Foldr, GenerateElemUID, GenerateElemUIDOffSet, generateGID, GenerateNestLists, generateSID, GetMonth, Greater, GreaterEqual, Group, Id, If, IndexOf, Intersect, LastIndexOf, Length, Less, LessEqual, Let, Like, List2Bag, List2Set, LoadFromFile, LowerCase, Map, Max, Member, Min, Minus, Mod, Monus, Multiply, NestListsFromRDB, Not, NotEqual, Or, PairFirst, PairSecond, Plus, Range, RenameUID, SComprehension, Set2Bag, Set2List, Single, SingleBag, SingleSet, SkolemiseEdge, Sort, SortDistinct, Split, SubCollection, Substring, Sum, ToDateTime, ToFloat, ToInteger, ToString, UpperCase

public abstract class BuiltInFunction
extends java.lang.Object

Interface class for all functions.


Field Summary
 int arity
           
protected  java.util.logging.Logger logger
           
 java.util.ArrayList typeList
           
 
Constructor Summary
BuiltInFunction()
           
 
Method Summary
 void finalize()
           
 int getArity()
           
 java.util.ArrayList getTypeList()
           
abstract  Cell perform(Cell[] args, Evaluator e)
           
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected java.util.logging.Logger logger

arity

public int arity

typeList

public java.util.ArrayList typeList
Constructor Detail

BuiltInFunction

public BuiltInFunction()
Method Detail

getTypeList

public final java.util.ArrayList getTypeList()
                                      throws ParseException
Returns:
the list of types of the built-in function
Throws:
ParseException

getArity

public final int getArity()
                   throws QProcException
Returns:
the arity of the function.
Throws:
QProcException

perform

public abstract Cell perform(Cell[] args,
                             Evaluator e)
                      throws TypeException,
                             QProcException
Returns:
a Cell object that is the root of a graph that represents the result of applying the built-in function to the arguments args. Uses the Evaluator e to evaluate any sub-queries that need to be evaluated.
Throws:
TypeException
QProcException

finalize

public void finalize()
Overrides:
finalize in class java.lang.Object