[Checkins] SVN: Sandbox/ocql-foliage/trunk/src/ocql/engine/query
moved properties
Adam Groszer
agroszer at gmail.com
Wed Sep 26 12:46:16 EDT 2007
Log message for revision 80117:
moved properties
Changed:
U Sandbox/ocql-foliage/trunk/src/ocql/engine/queryobject.py
U Sandbox/ocql-foliage/trunk/src/ocql/engine/queryparser.py
-=-
Modified: Sandbox/ocql-foliage/trunk/src/ocql/engine/queryobject.py
===================================================================
--- Sandbox/ocql-foliage/trunk/src/ocql/engine/queryobject.py 2007-09-26 16:45:53 UTC (rev 80116)
+++ Sandbox/ocql-foliage/trunk/src/ocql/engine/queryobject.py 2007-09-26 16:46:16 UTC (rev 80117)
@@ -15,26 +15,23 @@
class Expression(Term, QueryObject):
pass
-class MetadataStoreMixin:
- _metadata = None
-
- def setMetadata(self, metadata):
- self._metadata = metadata
-
- def getMetadata(self):
- return self._metadata
-
#
# General
#
class hasClassWith(Expression):
#NotImplemented
+ expression = None
+ klass = None
+ conditional = None
+
def __init__(self, expr, klass, conditional):
self.expression = expression
self.klass = klass
self.conditional = conditional
class Identifier(Expression):
+ name = None
+
def __init__(self, name):
self.name = name
@@ -43,6 +40,8 @@
class Constant(Expression):
#this shall be abstract?
+ value = None
+
def __init__(self, value):
self.value=value
@@ -60,7 +59,11 @@
#TODO: convert value to string?
pass
-class Query(Expression, MetadataStoreMixin):
+class Query(Expression):
+ collection_type = None
+ terms = None
+ target = None
+
def __init__(self, collection_type, terms, target):
self.collection_type = collection_type
self.terms = terms
@@ -68,12 +71,12 @@
def rewrite(self, algebra):
if len(self.terms):
- ft = self.terms[0]
- if isinstance(ft,In):
+ firstTerm = self.terms[0]
+ if isinstance(firstTerm, In):
return algebra.Iter(
self.collection_type,
algebra.Lambda(
- ft.identifier.name,
+ firstTerm.identifier.name,
Query(
self.collection_type,
self.terms[1:],
@@ -82,17 +85,17 @@
), algebra.Make(
self.collection_type,
set,
- ft.expression.rewrite(algebra)
- ) # FIXME: ?set? must be determined by type(ft.expression)
+ firstTerm.expression.rewrite(algebra)
+ ) # FIXME: ?set? must be determined by type(firstTerm.expression)
)
- elif isinstance(ft,Alias):
+ elif isinstance(firstTerm,Alias):
return Query(
self.collection_type,
- [In(ft.identifier,ft.expression)]+self.terms[1:],
+ [In(firstTerm.identifier,firstTerm.expression)]+self.terms[1:],
self.target).rewrite(algebra)
else:
return algebra.If(
- ft.rewrite(algebra),
+ firstTerm.rewrite(algebra),
Query(
self.collection_type,
self.terms[1:],
@@ -105,11 +108,17 @@
self.target.rewrite(algebra))
class In(Term):
+ identifier = None
+ expression = None
+
def __init__(self, identifier, expression):
self.identifier = identifier
self.expression = expression
class Alias(Term):
+ identifier = None
+ expression = None
+
def __init__(self, identifier, expression):
self.identifier = identifier
self.expression = expression
@@ -118,6 +127,9 @@
# Binary operators
#
class Binary(Expression):
+ left = None
+ right = None
+
def __init__(self, left, right):
self.left = left
self.right = right
@@ -183,6 +195,8 @@
# Unary operators
#
class Unary(Expression):
+ expression = None
+
def __init__(self, expression):
self.expression = expression
@@ -195,7 +209,7 @@
class Count(Aggregate):
def rewrite(self, algebra):
- return algebra.reduce(
+ return algebra.Reduce(
bag, # FIXME milyen bag
0,
algebra.Lambda('i',algebra.Constant(1)),
@@ -216,6 +230,9 @@
raise NotImplemented()
class Quanted:
+ quantor = None
+ expression = None
+
def __init__(self, quantor, expression):
self.quantor = quantor
self.expression = expression
@@ -244,22 +261,31 @@
)
class Atmost(Quantor):
+ expr = None
+
def __init__(self, expr):
raise NotImplemented(self)
self.expr = expr
class Atleast(Quantor):
+ expr = None
+
def __init__(self, expr):
raise NotImplemented(self)
self.expr = expr
class Just(Quantor):
+ expr = None
+
def __init__(self, expr):
raise NotImplemented(self)
self.expr = expr
# Logical operators
class Condition(Expression):
+ left = None
+ right = None
+
def __init__(self, left, right):
self.left = left
self.right = right
Modified: Sandbox/ocql-foliage/trunk/src/ocql/engine/queryparser.py
===================================================================
--- Sandbox/ocql-foliage/trunk/src/ocql/engine/queryparser.py 2007-09-26 16:45:53 UTC (rev 80116)
+++ Sandbox/ocql-foliage/trunk/src/ocql/engine/queryparser.py 2007-09-26 16:46:16 UTC (rev 80117)
@@ -62,5 +62,5 @@
def compile(self, query):
x = WIRED
- x.setMetadata(self.metadata)
+ #x.setMetadata(self.metadata)
return x
\ No newline at end of file
More information about the Checkins
mailing list