summaryrefslogtreecommitdiffstats
path: root/qlparser/querytree.hh
diff options
context:
space:
mode:
authorAndrei Aiordachioaie <a.aiordachioaie@jacobs-university.de>2010-01-25 18:55:43 +0100
committerAndrei Aiordachioaie <a.aiordachioaie@jacobs-university.de>2010-01-25 22:25:01 +0100
commit45032ffd23ce741dd9cd63a4befcea89f2fd19cf (patch)
treebc89903eaabab627492f5364bdfe0a9410e88634 /qlparser/querytree.hh
parent068b5df28a09ce77d4ce3844ab6d8730d38e85a1 (diff)
downloadrasdaman-upstream-45032ffd23ce741dd9cd63a4befcea89f2fd19cf.tar.gz
rasdaman-upstream-45032ffd23ce741dd9cd63a4befcea89f2fd19cf.tar.xz
rasdaman-upstream-45032ffd23ce741dd9cd63a4befcea89f2fd19cf.zip
Added a layer of abstraction for optimization levels.
Diffstat (limited to 'qlparser/querytree.hh')
-rw-r--r--qlparser/querytree.hh10
1 files changed, 10 insertions, 0 deletions
diff --git a/qlparser/querytree.hh b/qlparser/querytree.hh
index d6f28cc..cfeafb7 100644
--- a/qlparser/querytree.hh
+++ b/qlparser/querytree.hh
@@ -84,6 +84,13 @@ class QueryTree
public:
+ enum OptimizationLevel
+ {
+ STANDARDIZATION = 1,
+ SIMPLIFICATION = 2,
+ SUBEXPRESSIONS = 3
+ };
+
/// default constructor
QueryTree();
@@ -198,6 +205,9 @@ class QueryTree
static void (*optimizationFnc)(unsigned int, QtNode*);
+ // Validity checks for the level of optimization
+ bool isValidOptimizationLevel( int level );
+
/// used by public seeSubexpression()
vector<QtNode::QtNodeList>* seeSubexpression( QtNode::QtNodeList* leafList );