8 #define GETFUNCTIONTYPE(o) (((Function *)o)->type)
12 Function(FunctionType _type) : type(_type) {}
15 virtual ~Function() {}
18 class FunctionOperator : public Function {
23 OverFlowBehavior overflowbehavior;
24 FunctionOperator(ArithOp op, Set **domain, uint numDomain, Set *range, OverFlowBehavior overflowbehavior);
25 uint64_t applyFunctionOperator(uint numVals, uint64_t *values);
26 bool isInRangeFunction(uint64_t val);
30 class FunctionTable : public Function {
33 UndefinedBehavior undefBehavior;
34 FunctionTable (Table *table, UndefinedBehavior behavior);