<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>HepProgramBuilder (Apache Calcite calcite API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="HepProgramBuilder (Apache Calcite calcite API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><b>Apache Calcite</b></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/calcite/plan/hep/HepProgram.html" title="class in org.apache.calcite.plan.hep"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/calcite/plan/hep/HepRelVertex.html" title="class in org.apache.calcite.plan.hep"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/calcite/plan/hep/HepProgramBuilder.html" target="_top">Frames</a></li>
<li><a href="HepProgramBuilder.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.calcite.plan.hep</div>
<h2 title="Class HepProgramBuilder" class="title">Class HepProgramBuilder</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.calcite.plan.hep.HepProgramBuilder</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">HepProgramBuilder</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block">HepProgramBuilder creates instances of <a href="../../../../../org/apache/calcite/plan/hep/HepProgram.html" title="class in org.apache.calcite.plan.hep"><code>HepProgram</code></a>.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#HepProgramBuilder--">HepProgramBuilder</a></span>()</code>
<div class="block">Creates a new HepProgramBuilder with an initially empty program.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#addCommonRelSubExprInstruction--">addCommonRelSubExprInstruction</a></span>()</code>
<div class="block">Adds an instruction to attempt to match instances of
 <a href="../../../../../org/apache/calcite/plan/CommonRelSubExprRule.html" title="class in org.apache.calcite.plan"><code>CommonRelSubExprRule</code></a>, but only in cases where vertices have more
 than one parent.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#addConverters-boolean-">addConverters</a></span>(boolean&nbsp;guaranteed)</code>
<div class="block">Adds an instruction to attempt to match instances of
 <a href="../../../../../org/apache/calcite/rel/convert/ConverterRule.html" title="class in org.apache.calcite.rel.convert"><code>ConverterRule</code></a>,
 but only where a conversion is actually required.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#addGroupBegin--">addGroupBegin</a></span>()</code>
<div class="block">Adds an instruction to begin a group of rules.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#addGroupEnd--">addGroupEnd</a></span>()</code>
<div class="block">Adds an instruction to end a group of rules, firing the group
 collectively.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#addMatchLimit-int-">addMatchLimit</a></span>(int&nbsp;limit)</code>
<div class="block">Adds an instruction to limit the number of pattern matches for subsequent
 instructions.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#addMatchOrder-org.apache.calcite.plan.hep.HepMatchOrder-">addMatchOrder</a></span>(<a href="../../../../../org/apache/calcite/plan/hep/HepMatchOrder.html" title="enum in org.apache.calcite.plan.hep">HepMatchOrder</a>&nbsp;order)</code>
<div class="block">Adds an instruction to change the order of pattern matching for
 subsequent instructions.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#addRuleByDescription-java.lang.String-">addRuleByDescription</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;ruleDescription)</code>
<div class="block">Adds an instruction to attempt to match a specific rule identified by its
 unique description.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>&lt;R extends <a href="../../../../../org/apache/calcite/plan/RelOptRule.html" title="class in org.apache.calcite.plan">RelOptRule</a>&gt;<br><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#addRuleClass-java.lang.Class-">addRuleClass</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;R&gt;&nbsp;ruleClass)</code>
<div class="block">Adds an instruction to attempt to match any rules of a given class.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#addRuleCollection-java.util.Collection-">addRuleCollection</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/calcite/plan/RelOptRule.html" title="class in org.apache.calcite.plan">RelOptRule</a>&gt;&nbsp;rules)</code>
<div class="block">Adds an instruction to attempt to match any rules in a given collection.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#addRuleInstance-org.apache.calcite.plan.RelOptRule-">addRuleInstance</a></span>(<a href="../../../../../org/apache/calcite/plan/RelOptRule.html" title="class in org.apache.calcite.plan">RelOptRule</a>&nbsp;rule)</code>
<div class="block">Adds an instruction to attempt to match a specific rule object.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#addSubprogram-org.apache.calcite.plan.hep.HepProgram-">addSubprogram</a></span>(<a href="../../../../../org/apache/calcite/plan/hep/HepProgram.html" title="class in org.apache.calcite.plan.hep">HepProgram</a>&nbsp;program)</code>
<div class="block">Adds an instruction to execute a subprogram.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/calcite/plan/hep/HepProgram.html" title="class in org.apache.calcite.plan.hep">HepProgram</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html#build--">build</a></span>()</code>
<div class="block">Returns the constructed program, clearing the state of this program
 builder as a side-effect.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="HepProgramBuilder--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>HepProgramBuilder</h4>
<pre>public&nbsp;HepProgramBuilder()</pre>
<div class="block">Creates a new HepProgramBuilder with an initially empty program. The
 program under construction has an initial match order of
 <a href="../../../../../org/apache/calcite/plan/hep/HepMatchOrder.html#DEPTH_FIRST"><code>HepMatchOrder.DEPTH_FIRST</code></a>, and an initial match limit of
 <a href="../../../../../org/apache/calcite/plan/hep/HepProgram.html#MATCH_UNTIL_FIXPOINT"><code>HepProgram.MATCH_UNTIL_FIXPOINT</code></a>.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="addRuleClass-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addRuleClass</h4>
<pre>public&nbsp;&lt;R extends <a href="../../../../../org/apache/calcite/plan/RelOptRule.html" title="class in org.apache.calcite.plan">RelOptRule</a>&gt;&nbsp;<a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a>&nbsp;addRuleClass(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;R&gt;&nbsp;ruleClass)</pre>
<div class="block">Adds an instruction to attempt to match any rules of a given class. The
 order in which the rules within a class will be attempted is arbitrary,
 so if more control is needed, use addRuleInstance instead.

 <p>Note that when this method is used, it is also necessary to add the
 actual rule objects of interest to the planner via
 <a href="../../../../../org/apache/calcite/plan/RelOptPlanner.html#addRule-org.apache.calcite.plan.RelOptRule-"><code>RelOptPlanner.addRule(org.apache.calcite.plan.RelOptRule)</code></a>. If the planner does not have any
 rules of the given class, this instruction is a nop.

 <p>TODO: support classification via rule annotations.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ruleClass</code> - class of rules to fire, e.g. ConverterRule.class</dd>
</dl>
</li>
</ul>
<a name="addRuleCollection-java.util.Collection-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addRuleCollection</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a>&nbsp;addRuleCollection(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../../../org/apache/calcite/plan/RelOptRule.html" title="class in org.apache.calcite.plan">RelOptRule</a>&gt;&nbsp;rules)</pre>
<div class="block">Adds an instruction to attempt to match any rules in a given collection.
 The order in which the rules within a collection will be attempted is
 arbitrary, so if more control is needed, use addRuleInstance instead. The
 collection can be "live" in the sense that not all rule instances need to
 have been added to it at the time this method is called. The collection
 contents are reevaluated for each execution of the program.

 <p>Note that when this method is used, it is NOT necessary to add the
 rules to the planner via <a href="../../../../../org/apache/calcite/plan/RelOptPlanner.html#addRule-org.apache.calcite.plan.RelOptRule-"><code>RelOptPlanner.addRule(org.apache.calcite.plan.RelOptRule)</code></a>; the instances
 supplied here will be used. However, adding the rules to the planner
 redundantly is good form since other planners may require it.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rules</code> - collection of rules to fire</dd>
</dl>
</li>
</ul>
<a name="addRuleInstance-org.apache.calcite.plan.RelOptRule-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addRuleInstance</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a>&nbsp;addRuleInstance(<a href="../../../../../org/apache/calcite/plan/RelOptRule.html" title="class in org.apache.calcite.plan">RelOptRule</a>&nbsp;rule)</pre>
<div class="block">Adds an instruction to attempt to match a specific rule object.

 <p>Note that when this method is used, it is NOT necessary to add the
 rule to the planner via <a href="../../../../../org/apache/calcite/plan/RelOptPlanner.html#addRule-org.apache.calcite.plan.RelOptRule-"><code>RelOptPlanner.addRule(org.apache.calcite.plan.RelOptRule)</code></a>; the instance
 supplied here will be used. However, adding the rule to the planner
 redundantly is good form since other planners may require it.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>rule</code> - rule to fire</dd>
</dl>
</li>
</ul>
<a name="addRuleByDescription-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addRuleByDescription</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a>&nbsp;addRuleByDescription(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;ruleDescription)</pre>
<div class="block">Adds an instruction to attempt to match a specific rule identified by its
 unique description.

 <p>Note that when this method is used, it is necessary to also add the
 rule object of interest to the planner via <a href="../../../../../org/apache/calcite/plan/RelOptPlanner.html#addRule-org.apache.calcite.plan.RelOptRule-"><code>RelOptPlanner.addRule(org.apache.calcite.plan.RelOptRule)</code></a>.
 This allows for some decoupling between optimizers and plugins: the
 optimizer only knows about rule descriptions, while the plugins supply
 the actual instances. If the planner does not have a rule matching the
 description, this instruction is a nop.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ruleDescription</code> - description of rule to fire</dd>
</dl>
</li>
</ul>
<a name="addGroupBegin--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addGroupBegin</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a>&nbsp;addGroupBegin()</pre>
<div class="block">Adds an instruction to begin a group of rules. All subsequent rules added
 (until the next endRuleGroup) will be collected into the group rather
 than firing individually. After addGroupBegin has been called, only
 addRuleXXX methods may be called until the next addGroupEnd.</div>
</li>
</ul>
<a name="addGroupEnd--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addGroupEnd</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a>&nbsp;addGroupEnd()</pre>
<div class="block">Adds an instruction to end a group of rules, firing the group
 collectively. The order in which the rules within a group will be
 attempted is arbitrary. Match order and limit applies to the group as a
 whole.</div>
</li>
</ul>
<a name="addConverters-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addConverters</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a>&nbsp;addConverters(boolean&nbsp;guaranteed)</pre>
<div class="block">Adds an instruction to attempt to match instances of
 <a href="../../../../../org/apache/calcite/rel/convert/ConverterRule.html" title="class in org.apache.calcite.rel.convert"><code>ConverterRule</code></a>,
 but only where a conversion is actually required.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>guaranteed</code> - if true, use only guaranteed converters; if false, use
                   only non-guaranteed converters</dd>
</dl>
</li>
</ul>
<a name="addCommonRelSubExprInstruction--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addCommonRelSubExprInstruction</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a>&nbsp;addCommonRelSubExprInstruction()</pre>
<div class="block">Adds an instruction to attempt to match instances of
 <a href="../../../../../org/apache/calcite/plan/CommonRelSubExprRule.html" title="class in org.apache.calcite.plan"><code>CommonRelSubExprRule</code></a>, but only in cases where vertices have more
 than one parent.</div>
</li>
</ul>
<a name="addMatchOrder-org.apache.calcite.plan.hep.HepMatchOrder-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMatchOrder</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a>&nbsp;addMatchOrder(<a href="../../../../../org/apache/calcite/plan/hep/HepMatchOrder.html" title="enum in org.apache.calcite.plan.hep">HepMatchOrder</a>&nbsp;order)</pre>
<div class="block">Adds an instruction to change the order of pattern matching for
 subsequent instructions. The new order will take effect for the rest of
 the program (not counting subprograms) or until another match order
 instruction is encountered.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>order</code> - new match direction to set</dd>
</dl>
</li>
</ul>
<a name="addMatchLimit-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMatchLimit</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a>&nbsp;addMatchLimit(int&nbsp;limit)</pre>
<div class="block">Adds an instruction to limit the number of pattern matches for subsequent
 instructions. The limit will take effect for the rest of the program (not
 counting subprograms) or until another limit instruction is encountered.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>limit</code> - limit to set; use <a href="../../../../../org/apache/calcite/plan/hep/HepProgram.html#MATCH_UNTIL_FIXPOINT"><code>HepProgram.MATCH_UNTIL_FIXPOINT</code></a> to
              remove limit</dd>
</dl>
</li>
</ul>
<a name="addSubprogram-org.apache.calcite.plan.hep.HepProgram-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addSubprogram</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/plan/hep/HepProgramBuilder.html" title="class in org.apache.calcite.plan.hep">HepProgramBuilder</a>&nbsp;addSubprogram(<a href="../../../../../org/apache/calcite/plan/hep/HepProgram.html" title="class in org.apache.calcite.plan.hep">HepProgram</a>&nbsp;program)</pre>
<div class="block">Adds an instruction to execute a subprogram. Note that this is different
 from adding the instructions from the subprogram individually. When added
 as a subprogram, the sequence will execute repeatedly until a fixpoint is
 reached, whereas when the instructions are added individually, the
 sequence will only execute once (with a separate fixpoint for each
 instruction).

 <p>The subprogram has its own state for match order and limit
 (initialized to the defaults every time the subprogram is executed) and
 any changes it makes to those settings do not affect the parent program.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>program</code> - subprogram to execute</dd>
</dl>
</li>
</ul>
<a name="build--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>build</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/calcite/plan/hep/HepProgram.html" title="class in org.apache.calcite.plan.hep">HepProgram</a>&nbsp;build()</pre>
<div class="block">Returns the constructed program, clearing the state of this program
 builder as a side-effect.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>immutable program</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><b>Apache Calcite</b></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/calcite/plan/hep/HepProgram.html" title="class in org.apache.calcite.plan.hep"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/calcite/plan/hep/HepRelVertex.html" title="class in org.apache.calcite.plan.hep"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/calcite/plan/hep/HepProgramBuilder.html" target="_top">Frames</a></li>
<li><a href="HepProgramBuilder.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &copy; 2012-2020 Apache Software Foundation. All Rights Reserved.</small></p>
</body>
</html>
