Package org.apache.calcite.plan.hep
Class HepProgram
- java.lang.Object
-
- org.apache.calcite.plan.hep.HepProgram
-
public class HepProgram extends java.lang.Object
HepProgram specifies the order in which rules should be attempted byHepPlanner
. UseHepProgramBuilder
to create a new instance of HepProgram.Note that the structure of a program is immutable, but the planner uses it as read/write during planning, so a program can only be in use by a single planner at a time.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) HepInstruction.EndGroup
group
(package private) com.google.common.collect.ImmutableList<HepInstruction>
instructions
static int
MATCH_UNTIL_FIXPOINT
Symbolic constant for matching until no more matches occur.(package private) int
matchLimit
(package private) HepMatchOrder
matchOrder
-
Constructor Summary
Constructors Constructor Description HepProgram(java.util.List<HepInstruction> instructions)
Creates a new empty HepProgram.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static HepProgramBuilder
builder()
(package private) void
initialize(boolean clearCache)
-
-
-
Field Detail
-
MATCH_UNTIL_FIXPOINT
public static final int MATCH_UNTIL_FIXPOINT
Symbolic constant for matching until no more matches occur.- See Also:
- Constant Field Values
-
instructions
final com.google.common.collect.ImmutableList<HepInstruction> instructions
-
matchLimit
int matchLimit
-
matchOrder
HepMatchOrder matchOrder
-
group
HepInstruction.EndGroup group
-
-
Constructor Detail
-
HepProgram
HepProgram(java.util.List<HepInstruction> instructions)
Creates a new empty HepProgram. The program has an initial match order ofHepMatchOrder.ARBITRARY
, and an initial match limit ofMATCH_UNTIL_FIXPOINT
.
-
-
Method Detail
-
builder
public static HepProgramBuilder builder()
-
initialize
void initialize(boolean clearCache)
-
-