|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object | +--net.sf.saffron.opt.RuleOperand
A RuleOperand determines whether a VolcanoRule can be applied to a particular expression.
For example, the rule to pull a filter up from the left side of a join
takes operands: (Join (Filter) (Any)).
Note that children means different things if it is empty or it
is null: (Join (Filter ()) (Any)) means
that, to match the rule, Filter must have no operands.
| Field Summary | |
private RuleOperand[] |
children
|
private Class |
clazz
|
private CallingConvention |
convention
|
(package private) static RuleOperand[] |
noOperands
|
(package private) int |
ordinalInParent
|
(package private) int |
ordinalInRule
|
(package private) RuleOperand |
parent
|
(package private) VolcanoRule |
rule
|
(package private) int[] |
solveOrder
|
| Constructor Summary | |
RuleOperand(Class clazz,
CallingConvention convention,
RuleOperand[] children)
Creates an operand which matches any CallingConvention. |
|
RuleOperand(Class clazz,
RuleOperand[] children)
Creates an operand which matches any CallingConvention. |
|
| Method Summary | |
Object[] |
getChildren()
returns an array of the object's children. |
boolean |
matches(SaffronRel rel)
Returns whether a relational expression matches this operand. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
static final RuleOperand[] noOperands
RuleOperand parent
VolcanoRule rule
int[] solveOrder
int ordinalInParent
int ordinalInRule
private final CallingConvention convention
private final Class clazz
private final RuleOperand[] children
| Constructor Detail |
public RuleOperand(Class clazz,
RuleOperand[] children)
CallingConvention.
public RuleOperand(Class clazz,
CallingConvention convention,
RuleOperand[] children)
CallingConvention.
| Method Detail |
public Object[] getChildren()
Walkable
getChildren in interface Walkablepublic boolean matches(SaffronRel rel)
|
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||