You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by ee...@apache.org on 2011/01/05 23:55:24 UTC
svn commit: r1055677 -
/cassandra/trunk/src/java/org/apache/cassandra/cql/Cql.g
Author: eevans
Date: Wed Jan 5 22:55:24 2011
New Revision: 1055677
URL: http://svn.apache.org/viewvc?rev=1055677&view=rev
Log:
move term-pair parse and map update to separate rule
Patch by Pavel Yaskevich (w/ minor changes); reviewed by eevans for CASSANDRA-1705
Modified:
cassandra/trunk/src/java/org/apache/cassandra/cql/Cql.g
Modified: cassandra/trunk/src/java/org/apache/cassandra/cql/Cql.g
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/cql/Cql.g?rev=1055677&r1=1055676&r2=1055677&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/cql/Cql.g (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/cql/Cql.g Wed Jan 5 22:55:24 2011
@@ -127,7 +127,7 @@ updateStatement returns [UpdateStatement
}
K_UPDATE columnFamily=IDENT
(K_USING K_CONSISTENCY '.' K_LEVEL { cLevel = ConsistencyLevel.valueOf($K_LEVEL.text); })?
- K_SET c1=term '=' v1=term { columns.put(c1, v1); } (',' cN=term '=' vN=term { columns.put(cN, vN); })*
+ K_SET termPair[columns] (',' termPair[columns])*
K_WHERE K_KEY '=' key=term endStmnt
{
return new UpdateStatement($columnFamily.text, cLevel, columns, key);
@@ -172,6 +172,11 @@ termList returns [List<Term> items]
t1=term { $items.add(t1); } (',' tN=term { $items.add(tN); })*
;
+// term = term
+termPair[Map<Term, Term> columns]
+ : key=term '=' value=term { columns.put(key, value); }
+ ;
+
// Note: ranges are inclusive so >= and >, and < and <= all have the same semantics.
relation returns [Relation rel]
: { Term entity = new Term("KEY", STRING_LITERAL); }