public enum EnumerableConvention extends Enum<EnumerableConvention> implements Convention
Enumerable.Convention.Impl| Enum Constant and Description |
|---|
INSTANCE |
| Modifier and Type | Field and Description |
|---|---|
static double |
COST_MULTIPLIER
Cost of an enumerable node versus implementing an equivalent node in a
"typical" calling convention.
|
NONE| Modifier and Type | Method and Description |
|---|---|
Class |
getInterface() |
String |
getName() |
RelTraitDef |
getTraitDef()
Returns the RelTraitDef that defines this RelTrait.
|
void |
register(RelOptPlanner planner)
Registers a trait instance with the planner.
|
boolean |
satisfies(RelTrait trait)
Returns whether this trait satisfies a given trait.
|
String |
toString()
Returns a succinct name for this trait.
|
static EnumerableConvention |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static EnumerableConvention[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, valueOfpublic static final EnumerableConvention INSTANCE
public static final double COST_MULTIPLIER
public static EnumerableConvention[] values()
for (EnumerableConvention c : EnumerableConvention.values()) System.out.println(c);
public static EnumerableConvention valueOf(String name)
name - the name of the enum constant to be returned.IllegalArgumentException - if this enum type has no constant
with the specified nameNullPointerException - if the argument is nullpublic String toString()
RelTraittoString in interface RelTraittoString in class Enum<EnumerableConvention>public Class getInterface()
getInterface in interface Conventionpublic String getName()
getName in interface Conventionpublic RelTraitDef getTraitDef()
RelTraitgetTraitDef in interface RelTraitpublic boolean satisfies(RelTrait trait)
RelTraitA trait satisfies another if it is the same or stricter. For example,
ORDER BY x, y satisfies ORDER BY x.
A trait's satisfies relation must be a partial order (reflexive,
anti-symmetric, transitive). Many traits cannot be "loosened"; their
satisfies is an equivalence relation, where only X satisfies X.
If a trait has multiple values
(see RelCompositeTrait)
a collection (T0, T1, ...) satisfies T if any Ti satisfies T.
public void register(RelOptPlanner planner)
RelTraitThis is an opportunity to add rules that relate to that trait. However, typical implementations will do nothing.
Copyright © 2012–2015 The Apache Software Foundation. All rights reserved.