blob: 6a3ba37d2dac902d54186f4520d7fe4a946dd514 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
/* __ *\
** ________ ___ / / ___ Scala API **
** / __/ __// _ | / / / _ | (c) 2003-2005, LAMP/EPFL **
** __\ \/ /__/ __ |/ /__/ __ | **
** /____/\___/_/ |_/____/_/ | | **
** |/ **
\* */
package scala.dbc.statement.expression;
abstract class SetFunction {
/** A SQL-99 compliant string representation of the set quantifier. */
def sqlString: String;
}
object SetFunction {
abstract class Asterisk extends SetFunction {
def sqlString = "(*)";
}
abstract class General extends SetFunction {
def setQuantifier: Option[SetQuantifier];
def valueExpression: Expression;
def sqlString = (
"(" +
(setQuantifier match {
case None => ""
case Some(sq) => sq.sqlString + " "
}) +
valueExpression.sqlString + ")"
);
}
abstract class Binary extends SetFunction {
def sqlString = error("Binary set function is not supported yet.");
}
}
|