|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
|
+--saffron.util.EnumeratedValues.BasicValue
|
+--saffron.opt.CallingConvention
CallingConvention enumerates allowable calling conventions.
| Field Summary | |
static CallingConvention |
ARRAY
|
static int |
ARRAY_ORDINAL
The ARRAY calling convention results in a Java expression
which evaluates to an array containing the rows returned. |
static CallingConvention |
COLLECTION
|
static int |
COLLECTION_ORDINAL
The COLLECTION calling convention results in a Java
expression which evaluates to a Collection, typically
a ArrayList. |
static EnumeratedValues |
enumeration
|
static CallingConvention |
ENUMERATION
|
static int |
ENUMERATION_ORDINAL
|
static CallingConvention |
EXISTS
|
static int |
EXISTS_ORDINAL
The EXISTS calling convention is only allowed for a
terminator. |
static CallingConvention |
HASHTABLE
|
static int |
HASHTABLE_ORDINAL
|
static CallingConvention |
ITERABLE
|
static int |
ITERABLE_ORDINAL
The ITERABLE calling convention means that the expression
is converted to an openjava expression
(Expression) which evalutes to an object which
implements Iterable. |
static CallingConvention |
ITERATOR
|
static int |
ITERATOR_ORDINAL
The ITERATOR calling convention means that the expression
is converted to an openjava expression (Expression) which evalutes to an Iterator. |
static CallingConvention |
JAVA
|
static int |
JAVA_ORDINAL
The JAVA calling convention means that the expression is
converted into an Openjava parse tree, which can then be un-parsed,
compiled, and executed as java code. |
static CallingConvention |
MAP
|
static int |
MAP_ORDINAL
|
static CallingConvention[] |
noConventions
|
static CallingConvention |
NONE
|
static int |
NONE_ORDINAL
The NONE calling convention means that expression does not
support any calling convention -- in other words, it is not
implementable, and has to be transformed to something else in order to
be implemented. |
static CallingConvention |
PLAN
|
static int |
PLAN_ORDINAL
The PLAN calling convention means that the expression is
converted to a Plan. |
static CallingConvention |
RESULT_SET
|
static int |
RESULT_SET_ORDINAL
The RESULT_SET calling convention means that the expression
is a JDBC result set. |
static CallingConvention[] |
values
|
static CallingConvention |
VECTOR
|
static int |
VECTOR_ORDINAL
|
| Fields inherited from class saffron.util.EnumeratedValues.BasicValue |
description_, name_, ordinal_ |
| Constructor Summary | |
CallingConvention(String name,
int ordinal)
|
|
| Methods inherited from class saffron.util.EnumeratedValues.BasicValue |
equals, getDescription, getName, getOrdinal, toString, unexpected |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
public static final CallingConvention[] noConventions
public static final int NONE_ORDINAL
NONE calling convention means that expression does not
support any calling convention -- in other words, it is not
implementable, and has to be transformed to something else in order to
be implemented.
public static final CallingConvention NONE
public static final int PLAN_ORDINAL
PLAN calling convention means that the expression is
converted to a Plan. (We still need to specify
whether the objects returned from that plan are good after further
objects have been retrieved. It makes a lot of difference when
implementing a blocking expression such as an aggregation.)
public static final CallingConvention PLAN
public static final int JAVA_ORDINAL
JAVA calling convention means that the expression is
converted into an Openjava parse tree, which can then be un-parsed,
compiled, and executed as java code.
The Rel.implement(saffron.opt.Implementor, int) method generates a piece of
code which will call the piece of code corresponding to the parent once
for each row:
Implementor.generateParentBody(saffron.rel.Rel, openjava.ptree.StatementList), which in turn calls Rel.implement(saffron.opt.Implementor, int)() on the parent.Implementor.getStatementList()).
public static final CallingConvention JAVA
public static final int ITERATOR_ORDINAL
ITERATOR calling convention means that the expression
is converted to an openjava expression (Expression) which evalutes to an Iterator. See Converter.
public static final CallingConvention ITERATOR
public static final int ARRAY_ORDINAL
ARRAY calling convention results in a Java expression
which evaluates to an array containing the rows returned. Compare with
JAVA_ORDINAL, where a loop does something for each row
returned).
public static final CallingConvention ARRAY
public static final int COLLECTION_ORDINAL
COLLECTION calling convention results in a Java
expression which evaluates to a Collection, typically
a ArrayList.
public static final CallingConvention COLLECTION
public static final int VECTOR_ORDINAL
public static final CallingConvention VECTOR
public static final int ENUMERATION_ORDINAL
public static final CallingConvention ENUMERATION
public static final int MAP_ORDINAL
public static final CallingConvention MAP
public static final int HASHTABLE_ORDINAL
public static final CallingConvention HASHTABLE
public static final int ITERABLE_ORDINAL
ITERABLE calling convention means that the expression
is converted to an openjava expression
(Expression) which evalutes to an object which
implements Iterable.
public static final CallingConvention ITERABLE
public static final int EXISTS_ORDINAL
EXISTS calling convention is only allowed for a
terminator.
public static final CallingConvention EXISTS
public static final int RESULT_SET_ORDINAL
RESULT_SET calling convention means that the expression
is a JDBC result set.
When a result set is converted to another convention such as array or
iterator, the default object type is Row.
public static final CallingConvention RESULT_SET
public static final CallingConvention[] values
public static final EnumeratedValues enumeration
| Constructor Detail |
public CallingConvention(String name,
int ordinal)
|
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||