| <!DOCTYPE HTML> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc --> |
| <title>RexProgramTest (Calcite 1.21.0 Test API)</title> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> |
| <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style"> |
| <script type="text/javascript" src="../../../../script.js"></script> |
| <script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script> |
| <script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script> |
| <!--[if IE]> |
| <script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script> |
| <![endif]--> |
| <script type="text/javascript" src="../../../../jquery/jquery-3.3.1.js"></script> |
| <script type="text/javascript" src="../../../../jquery/jquery-migrate-3.0.1.js"></script> |
| <script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="RexProgramTest (Calcite 1.21.0 Test API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":9,"i20":9,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10,"i53":10,"i54":10,"i55":10,"i56":10,"i57":10,"i58":10,"i59":10,"i60":10,"i61":10,"i62":10,"i63":10,"i64":10,"i65":10,"i66":10,"i67":10,"i68":10,"i69":10,"i70":10,"i71":10,"i72":10,"i73":10,"i74":10,"i75":10,"i76":10,"i77":10,"i78":10,"i79":10,"i80":10,"i81":10,"i82":10,"i83":10,"i84":10,"i85":10,"i86":10,"i87":10,"i88":10,"i89":10,"i90":10,"i91":10,"i92":10,"i93":10,"i94":10,"i95":10,"i96":10,"i97":10,"i98":10,"i99":10,"i100":10,"i101":10,"i102":10,"i103":10,"i104":10,"i105":10,"i106":10,"i107":10,"i108":10,"i109":10,"i110":10,"i111":10,"i112":10,"i113":10}; |
| var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| var pathtoroot = "../../../../"; |
| var useModuleDirectories = true; |
| loadScripts(document, 'script');</script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <header role="banner"> |
| <nav role="navigation"> |
| <div class="fixedNav"> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a id="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a id="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/RexProgramTest.html">Use</a></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> |
| <div class="subNav"> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../../../allclasses.html">All Classes</a></li> |
| </ul> |
| <ul class="navListSearch"> |
| <li><label for="search">SEARCH:</label> |
| <input type="text" id="search" value="search" disabled="disabled"> |
| <input type="reset" id="reset" value="reset" disabled="disabled"> |
| </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> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li>Nested | </li> |
| <li><a href="#field.summary">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a id="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| </div> |
| <div class="navPadding"> </div> |
| <script type="text/javascript"><!-- |
| $('.navPadding').css('padding-top', $('.fixedNav').css("height")); |
| //--> |
| </script> |
| </nav> |
| </header> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <main role="main"> |
| <div class="header"> |
| <div class="subTitle"><span class="packageLabelInType">Package</span> <a href="package-summary.html">org.apache.calcite.test</a></div> |
| <h2 title="Class RexProgramTest" class="title">Class RexProgramTest</h2> |
| </div> |
| <div class="contentContainer"> |
| <ul class="inheritance"> |
| <li>java.lang.Object</li> |
| <li> |
| <ul class="inheritance"> |
| <li><a href="RexProgramBuilderBase.html" title="class in org.apache.calcite.test">org.apache.calcite.test.RexProgramBuilderBase</a></li> |
| <li> |
| <ul class="inheritance"> |
| <li>org.apache.calcite.test.RexProgramTest</li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <hr> |
| <pre>public class <span class="typeNameLabel">RexProgramTest</span> |
| extends <a href="RexProgramBuilderBase.html" title="class in org.apache.calcite.test">RexProgramBuilderBase</a></pre> |
| <div class="block">Unit tests for <code>RexProgram</code> and |
| <code>RexProgramBuilder</code>.</div> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- =========== FIELD SUMMARY =========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="field.summary"> |
| <!-- --> |
| </a> |
| <h3>Field Summary</h3> |
| <ul class="blockList"> |
| <li class="blockList"><a id="fields.inherited.from.class.org.apache.calcite.test.RexProgramBuilderBase"> |
| <!-- --> |
| </a> |
| <h3>Fields inherited from class org.apache.calcite.test.<a href="RexProgramBuilderBase.html" title="class in org.apache.calcite.test">RexProgramBuilderBase</a></h3> |
| <code><a href="RexProgramBuilderBase.html#executor">executor</a>, <a href="RexProgramBuilderBase.html#falseLiteral">falseLiteral</a>, <a href="RexProgramBuilderBase.html#MAX_FIELDS">MAX_FIELDS</a>, <a href="RexProgramBuilderBase.html#nullBool">nullBool</a>, <a href="RexProgramBuilderBase.html#nullInt">nullInt</a>, <a href="RexProgramBuilderBase.html#nullVarchar">nullVarchar</a>, <a href="RexProgramBuilderBase.html#rexBuilder">rexBuilder</a>, <a href="RexProgramBuilderBase.html#simplify">simplify</a>, <a href="RexProgramBuilderBase.html#trueLiteral">trueLiteral</a>, <a href="RexProgramBuilderBase.html#typeFactory">typeFactory</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="constructor.summary"> |
| <!-- --> |
| </a> |
| <h3>Constructor Summary</h3> |
| <table class="memberSummary"> |
| <caption><span>Constructors</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Constructor</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| <tr class="altColor"> |
| <th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">RexProgramTest</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Creates a RexProgramTest.</div> |
| </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| </section> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colSecond" scope="col">Method</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| <tr id="i0" class="altColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#assertNode(java.lang.String,java.lang.String,org.apache.calcite.rex.RexNode)">assertNode</a></span>​(java.lang.String message, |
| java.lang.String expected, |
| org.apache.calcite.rex.RexNode node)</code></th> |
| <td class="colLast"> |
| <div class="block">Asserts that given node has expected string representation with account of node type</div> |
| </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#assertTypeAndToString(org.apache.calcite.rex.RexNode,java.lang.String,java.lang.String)">assertTypeAndToString</a></span>​(org.apache.calcite.rex.RexNode rexNode, |
| java.lang.String representation, |
| java.lang.String type)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkCnf(org.apache.calcite.rex.RexNode,java.lang.String)">checkCnf</a></span>​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkExponentialCnf(int)">checkExponentialCnf</a></span>​(int n)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkIs(org.apache.calcite.rex.RexNode,boolean)">checkIs</a></span>​(org.apache.calcite.rex.RexNode e, |
| boolean expected)</code></th> |
| <td class="colLast"> |
| <div class="block">Checks that <code>RexNode.isAlwaysTrue()</code>, |
| <code>RexNode.isAlwaysTrue()</code> and <code>RexSimplify</code> agree that |
| an expression reduces to true or false.</div> |
| </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkPullFactors(org.apache.calcite.rex.RexNode,java.lang.String)">checkPullFactors</a></span>​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkPullFactorsUnchanged(org.apache.calcite.rex.RexNode)">checkPullFactorsUnchanged</a></span>​(org.apache.calcite.rex.RexNode node)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkSimplify(org.apache.calcite.rex.RexNode,java.lang.String)">checkSimplify</a></span>​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected)</code></th> |
| <td class="colLast"> |
| <div class="block">Simplifies an expression and checks that the result is as expected.</div> |
| </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkSimplify2(org.apache.calcite.rex.RexNode,java.lang.String,java.lang.String)">checkSimplify2</a></span>​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected, |
| java.lang.String expectedFalse)</code></th> |
| <td class="colLast"> |
| <div class="block">Simplifies an expression and checks the result if unknowns remain |
| unknown, or if unknown becomes false.</div> |
| </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkSimplify3(org.apache.calcite.rex.RexNode,java.lang.String,java.lang.String,java.lang.String)">checkSimplify3</a></span>​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected, |
| java.lang.String expectedFalse, |
| java.lang.String expectedTrue)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkSimplify3_(org.apache.calcite.rex.RexNode,java.lang.String,java.lang.String,java.lang.String)">checkSimplify3_</a></span>​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected, |
| java.lang.String expectedFalse, |
| java.lang.String expectedTrue)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i11" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkSimplifyDynamicParam()">checkSimplifyDynamicParam</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i12" class="altColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkSimplifyFilter(org.apache.calcite.rex.RexNode,java.lang.String)">checkSimplifyFilter</a></span>​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i13" class="rowColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkSimplifyFilter(org.apache.calcite.rex.RexNode,org.apache.calcite.plan.RelOptPredicateList,java.lang.String)">checkSimplifyFilter</a></span>​(org.apache.calcite.rex.RexNode node, |
| org.apache.calcite.plan.RelOptPredicateList predicates, |
| java.lang.String expected)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i14" class="altColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkSimplifyUnchanged(org.apache.calcite.rex.RexNode)">checkSimplifyUnchanged</a></span>​(org.apache.calcite.rex.RexNode node)</code></th> |
| <td class="colLast"> |
| <div class="block">Simplifies an expression and checks that the result is unchanged.</div> |
| </td> |
| </tr> |
| <tr id="i15" class="rowColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkThresholdCnf(org.apache.calcite.rex.RexNode,int,java.lang.String)">checkThresholdCnf</a></span>​(org.apache.calcite.rex.RexNode node, |
| int threshold, |
| java.lang.String expected)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i16" class="altColor"> |
| <td class="colFirst"><code>private org.apache.calcite.rex.RexProgramBuilder</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createProg(int)">createProg</a></span>​(int variant)</code></th> |
| <td class="colLast"> |
| <div class="block">Creates a program, depending on variant: |
| |
| |
| <code>select (x + y) + (x + 1) as a, (x + x) as b from t(x, y)</code> |
| <code>select (x + y) + (x + 1) as a, (x + (x + 1)) as b |
| from t(x, y)</code> |
| <code>select (x + y) + (x + 1) as a, (x + x) as b from t(x, y) |
| where ((x + y) > 1) and ((x + y) > 1)</code> |
| <code>select (x + y) + (x + 1) as a, (x + x) as b from t(x, y) |
| where not case |
| when x + 1 > 5 then true |
| when y is null then null |
| else false |
| end</code> |
| </div> |
| </td> |
| </tr> |
| <tr id="i17" class="rowColor"> |
| <td class="colFirst"><code>private java.lang.Comparable</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#eval(org.apache.calcite.rex.RexNode)">eval</a></span>​(org.apache.calcite.rex.RexNode e)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i18" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#fieldAccessEqualsHashCode()">fieldAccessEqualsHashCode</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i19" class="rowColor"> |
| <td class="colFirst"><code>private static java.lang.String</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getString(com.google.common.collect.ImmutableMap)">getString</a></span>​(com.google.common.collect.ImmutableMap<org.apache.calcite.rex.RexNode,​org.apache.calcite.rex.RexNode> map)</code></th> |
| <td class="colLast"> |
| <div class="block">Converts a map to a string, sorting on the string representation of its |
| keys.</div> |
| </td> |
| </tr> |
| <tr id="i20" class="altColor"> |
| <td class="colFirst"><code>private static int</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#nodeCount(org.apache.calcite.rex.RexNode)">nodeCount</a></span>​(org.apache.calcite.rex.RexNode node)</code></th> |
| <td class="colLast"> |
| <div class="block">Returns the number of nodes (including leaves) in a Rex tree.</div> |
| </td> |
| </tr> |
| <tr id="i21" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#notDistinct()">notDistinct</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i22" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removeRedundantCast()">removeRedundantCast</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i23" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setUp()">setUp</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i24" class="altColor"> |
| <td class="colFirst"><code>private org.apache.calcite.rex.RexNode</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#simplify(org.apache.calcite.rex.RexNode)">simplify</a></span>​(org.apache.calcite.rex.RexNode e)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i25" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#simplifyNull()">simplifyNull</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i26" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#simplifyStrong()">simplifyStrong</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i27" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testBooleanComparisions()">testBooleanComparisions</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i28" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testBuildProgram()">testBuildProgram</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Tests construction of a RexProgram.</div> |
| </td> |
| </tr> |
| <tr id="i29" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testCastLiteral()">testCastLiteral</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i30" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testCnf()">testCnf</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for <code>RexUtil.toCnf(org.apache.calcite.rex.RexBuilder, org.apache.calcite.rex.RexNode)</code>.</div> |
| </td> |
| </tr> |
| <tr id="i31" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testCnf2()">testCnf2</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-394">[CALCITE-394] |
| Add RexUtil.toCnf, to convert expressions to conjunctive normal form |
| (CNF)</a>.</div> |
| </td> |
| </tr> |
| <tr id="i32" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testCnfExponential()">testCnfExponential</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Tests formulas of various sizes whose size is exponential when converted |
| to CNF.</div> |
| </td> |
| </tr> |
| <tr id="i33" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testCompareTimestampWithTimeZone()">testCompareTimestampWithTimeZone</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i34" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testConstantMap()">testConstantMap</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i35" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testDuplicateAnd()">testDuplicateAnd</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Checks translation of AND(x, x).</div> |
| </td> |
| </tr> |
| <tr id="i36" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testElimDups()">testElimDups</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Tests construction and normalization of a RexProgram.</div> |
| </td> |
| </tr> |
| <tr id="i37" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testInDigest()">testInDigest</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2842">[CALCITE-2842] |
| Computing digest of IN expressions leads to Exceptions</a>.</div> |
| </td> |
| </tr> |
| <tr id="i38" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testInterpreter()">testInterpreter</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i39" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsAlwaysTrueAndFalseNotXisNullisNotNullisFalse()">testIsAlwaysTrueAndFalseNotXisNullisNotNullisFalse</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i40" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsAlwaysTrueAndFalseNotXisNullisNotNullisNotTrue()">testIsAlwaysTrueAndFalseNotXisNullisNotNullisNotTrue</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i41" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsAlwaysTrueAndFalseNotXisNullisNotNullisTrue()">testIsAlwaysTrueAndFalseNotXisNullisNotNullisTrue</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i42" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsAlwaysTrueAndFalseXisNotNullisNotNull()">testIsAlwaysTrueAndFalseXisNotNullisNotNull</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i43" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsAlwaysTrueAndFalseXisNotNullisNull()">testIsAlwaysTrueAndFalseXisNotNullisNull</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i44" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsAlwaysTrueAndFalseXisNullisNotNull()">testIsAlwaysTrueAndFalseXisNullisNotNull</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i45" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsAlwaysTrueAndFalseXisNullisNotNullisFalse()">testIsAlwaysTrueAndFalseXisNullisNotNullisFalse</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit tests for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2438">[CALCITE-2438] |
| RexCall#isAlwaysTrue returns incorrect result</a>.</div> |
| </td> |
| </tr> |
| <tr id="i46" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsAlwaysTrueAndFalseXisNullisNotNullisNotFalse()">testIsAlwaysTrueAndFalseXisNullisNotNullisNotFalse</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i47" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsAlwaysTrueAndFalseXisNullisNotNullisNotTrue()">testIsAlwaysTrueAndFalseXisNullisNotNullisNotTrue</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i48" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsAlwaysTrueAndFalseXisNullisNotNullisTrue()">testIsAlwaysTrueAndFalseXisNullisNotNullisTrue</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i49" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsAlwaysTrueAndFalseXisNullisNull()">testIsAlwaysTrueAndFalseXisNullisNull</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i50" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsDeterministic()">testIsDeterministic</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i51" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsNullRecursion()">testIsNullRecursion</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i52" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsNullSimplificationWithIsDistinctFrom()">testIsNullSimplificationWithIsDistinctFrom</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i53" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testIsNullSimplificationWithUnaryPlus()">testIsNullSimplificationWithUnaryPlus</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i54" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testLosslessCast()">testLosslessCast</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for <code>RexUtil.isLosslessCast(RexNode)</code>.</div> |
| </td> |
| </tr> |
| <tr id="i55" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testNestedAndSimplification()">testNestedAndSimplification</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2840">[CALCITE-2840] |
| Simplification should use more specific UnknownAs modes during simplification</a>.</div> |
| </td> |
| </tr> |
| <tr id="i56" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testNoCommonReturnTypeFails()">testNoCommonReturnTypeFails</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i57" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testNormalize()">testNormalize</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Tests construction and normalization of a RexProgram.</div> |
| </td> |
| </tr> |
| <tr id="i58" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testNotRecursion()">testNotRecursion</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i59" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testOrSimplificationNotWeakensCondition()">testOrSimplificationNotWeakensCondition</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-3192">[CALCITE-3192] |
| Simplify OR incorrectly weaks condition</a>.</div> |
| </td> |
| </tr> |
| <tr id="i60" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testPullFactors()">testPullFactors</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for <code>RexUtil.pullFactors(org.apache.calcite.rex.RexBuilder, org.apache.calcite.rex.RexNode)</code>.</div> |
| </td> |
| </tr> |
| <tr id="i61" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testPushNotIntoCase()">testPushNotIntoCase</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i62" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testRedundantIsFalse()">testRedundantIsFalse</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i63" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testRedundantIsNotFalse()">testRedundantIsNotFalse</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i64" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testRedundantIsNotTrue()">testRedundantIsNotTrue</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i65" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testRedundantIsTrue()">testRedundantIsTrue</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i66" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testRemovalOfNullabilityWideningCast()">testRemovalOfNullabilityWideningCast</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i67" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSelfComparisions()">testSelfComparisions</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2421">[CALCITE-2421] |
| to-be-filled </a>.</div> |
| </td> |
| </tr> |
| <tr id="i68" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimpleDynamicVars()">testSimpleDynamicVars</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i69" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplify()">testSimplify</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i70" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyAnd()">testSimplifyAnd</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i71" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyAnd3()">testSimplifyAnd3</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i72" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyAndNot()">testSimplifyAndNot</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i73" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyAndPush()">testSimplifyAndPush</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i74" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseAndNotSimplicationIsInAction()">testSimplifyCaseAndNotSimplicationIsInAction</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i75" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseBranchesCollapse()">testSimplifyCaseBranchesCollapse</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i76" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseBranchesCollapse2()">testSimplifyCaseBranchesCollapse2</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i77" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseBranchRemovalStrengthensType()">testSimplifyCaseBranchRemovalStrengthensType</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i78" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseCasting()">testSimplifyCaseCasting</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i79" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseCompaction()">testSimplifyCaseCompaction</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i80" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseCompaction2()">testSimplifyCaseCompaction2</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i81" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseCompactionDiv()">testSimplifyCaseCompactionDiv</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i82" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseDiv1()">testSimplifyCaseDiv1</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Tests a CASE value branch that contains division.</div> |
| </td> |
| </tr> |
| <tr id="i83" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseDiv2()">testSimplifyCaseDiv2</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Tests a CASE condition that contains division,</div> |
| </td> |
| </tr> |
| <tr id="i84" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseFirstBranchIsSafe()">testSimplifyCaseFirstBranchIsSafe</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i85" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseNotNullableBoolean()">testSimplifyCaseNotNullableBoolean</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-1289">[CALCITE-1289] |
| RexUtil.simplifyCase() should account for nullability</a>.</div> |
| </td> |
| </tr> |
| <tr id="i86" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseNullableBoolean()">testSimplifyCaseNullableBoolean</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i87" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCaseNullableVarChar()">testSimplifyCaseNullableVarChar</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i88" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCastIsNull()">testSimplifyCastIsNull</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2929">[CALCITE-2929] |
| Simplification of IS NULL checks are incorrectly assuming that CAST-s are possible</a>.</div> |
| </td> |
| </tr> |
| <tr id="i89" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCastIsNull2()">testSimplifyCastIsNull2</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2929">[CALCITE-2929] |
| Simplification of IS NULL checks are incorrectly assuming that CAST-s are possible</a>.</div> |
| </td> |
| </tr> |
| <tr id="i90" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCastLiteral()">testSimplifyCastLiteral</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i91" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCastLiteral2()">testSimplifyCastLiteral2</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i92" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCastLiteral3()">testSimplifyCastLiteral3</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i93" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCoalesce()">testSimplifyCoalesce</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2505">[CALCITE-2505] |
| RexSimplify wrongly simplifies "COALESCE(+(NULL), x)" to "NULL"</a>.</div> |
| </td> |
| </tr> |
| <tr id="i94" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCondition()">testSimplifyCondition</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Tests how the condition is simplified.</div> |
| </td> |
| </tr> |
| <tr id="i95" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyCondition2()">testSimplifyCondition2</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Tests how the condition is simplified.</div> |
| </td> |
| </tr> |
| <tr id="i96" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyDynamicParam()">testSimplifyDynamicParam</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i97" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyFalse()">testSimplifyFalse</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i98" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyFilter()">testSimplifyFilter</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i99" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyIsNotNull()">testSimplifyIsNotNull</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i100" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyLiterals()">testSimplifyLiterals</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i101" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyNot()">testSimplifyNot</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i102" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyNotAnd()">testSimplifyNotAnd</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i103" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyOrNot()">testSimplifyOrNot</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i104" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyOrNotEqualsNotNullable()">testSimplifyOrNotEqualsNotNullable</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Test case for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-3198">[CALCITE-3198] |
| Enhance RexSimplify to handle (x<>a or x<>b)</a>.</div> |
| </td> |
| </tr> |
| <tr id="i105" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyOrNotEqualsNotNullable2()">testSimplifyOrNotEqualsNotNullable2</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Test case for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-3198">[CALCITE-3198] |
| Enhance RexSimplify to handle (x<>a or x<>b)</a>.</div> |
| </td> |
| </tr> |
| <tr id="i106" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyOrNotEqualsNullable()">testSimplifyOrNotEqualsNullable</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Test case for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-3198">[CALCITE-3198] |
| Enhance RexSimplify to handle (x<>a or x<>b)</a>.</div> |
| </td> |
| </tr> |
| <tr id="i107" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyOrNotEqualsNullable2()">testSimplifyOrNotEqualsNullable2</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Test case for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-3198">[CALCITE-3198] |
| Enhance RexSimplify to handle (x<>a or x<>b)</a>.</div> |
| </td> |
| </tr> |
| <tr id="i108" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyOrTerms()">testSimplifyOrTerms</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i109" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyRecurseIntoArithmetics()">testSimplifyRecurseIntoArithmetics</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i110" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testSimplifyUnknown()">testSimplifyUnknown</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i111" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testStrong()">testStrong</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for <code>Strong</code>.</div> |
| </td> |
| </tr> |
| <tr id="i112" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#testThresholdCnf()">testThresholdCnf</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-1290">[CALCITE-1290] |
| When converting to CNF, fail if the expression exceeds a threshold</a>.</div> |
| </td> |
| </tr> |
| <tr id="i113" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#xAndNotX()">xAndNotX</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.org.apache.calcite.test.RexProgramBuilderBase"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class org.apache.calcite.test.<a href="RexProgramBuilderBase.html" title="class in org.apache.calcite.test">RexProgramBuilderBase</a></h3> |
| <code><a href="RexProgramBuilderBase.html#abstractCast(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType)">abstractCast</a>, <a href="RexProgramBuilderBase.html#add(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">add</a>, <a href="RexProgramBuilderBase.html#and(java.lang.Iterable)">and</a>, <a href="RexProgramBuilderBase.html#and(org.apache.calcite.rex.RexNode...)">and</a>, <a href="RexProgramBuilderBase.html#case_(java.lang.Iterable)">case_</a>, <a href="RexProgramBuilderBase.html#case_(org.apache.calcite.rex.RexNode...)">case_</a>, <a href="RexProgramBuilderBase.html#cast(org.apache.calcite.rex.RexNode,org.apache.calcite.rel.type.RelDataType)">cast</a>, <a href="RexProgramBuilderBase.html#coalesce(org.apache.calcite.rex.RexNode...)">coalesce</a>, <a href="RexProgramBuilderBase.html#div(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">div</a>, <a href="RexProgramBuilderBase.html#divInt(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">divInt</a>, <a href="RexProgramBuilderBase.html#eq(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">eq</a>, <a href="RexProgramBuilderBase.html#ge(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">ge</a>, <a href="RexProgramBuilderBase.html#gt(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">gt</a>, <a href="RexProgramBuilderBase.html#in(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode...)">in</a>, <a href="RexProgramBuilderBase.html#input(org.apache.calcite.rel.type.RelDataType,int)">input</a>, <a href="RexProgramBuilderBase.html#isDistinctFrom(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">isDistinctFrom</a>, <a href="RexProgramBuilderBase.html#isFalse(org.apache.calcite.rex.RexNode)">isFalse</a>, <a href="RexProgramBuilderBase.html#isNotDistinctFrom(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">isNotDistinctFrom</a>, <a href="RexProgramBuilderBase.html#isNotFalse(org.apache.calcite.rex.RexNode)">isNotFalse</a>, <a href="RexProgramBuilderBase.html#isNotNull(org.apache.calcite.rex.RexNode)">isNotNull</a>, <a href="RexProgramBuilderBase.html#isNotTrue(org.apache.calcite.rex.RexNode)">isNotTrue</a>, <a href="RexProgramBuilderBase.html#isNull(org.apache.calcite.rex.RexNode)">isNull</a>, <a href="RexProgramBuilderBase.html#isTrue(org.apache.calcite.rex.RexNode)">isTrue</a>, <a href="RexProgramBuilderBase.html#isUnknown(org.apache.calcite.rex.RexNode)">isUnknown</a>, <a href="RexProgramBuilderBase.html#le(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">le</a>, <a href="RexProgramBuilderBase.html#literal(boolean)">literal</a>, <a href="RexProgramBuilderBase.html#literal(int)">literal</a>, <a href="RexProgramBuilderBase.html#literal(java.lang.Boolean)">literal</a>, <a href="RexProgramBuilderBase.html#literal(java.lang.Integer)">literal</a>, <a href="RexProgramBuilderBase.html#literal(java.lang.String)">literal</a>, <a href="RexProgramBuilderBase.html#literal(java.math.BigDecimal)">literal</a>, <a href="RexProgramBuilderBase.html#literal(java.math.BigDecimal,org.apache.calcite.rel.type.RelDataType)">literal</a>, <a href="RexProgramBuilderBase.html#lt(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">lt</a>, <a href="RexProgramBuilderBase.html#mul(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">mul</a>, <a href="RexProgramBuilderBase.html#ne(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">ne</a>, <a href="RexProgramBuilderBase.html#not(org.apache.calcite.rex.RexNode)">not</a>, <a href="RexProgramBuilderBase.html#null_(org.apache.calcite.rel.type.RelDataType)">null_</a>, <a href="RexProgramBuilderBase.html#nullable(org.apache.calcite.rel.type.RelDataType)">nullable</a>, <a href="RexProgramBuilderBase.html#nullIf(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">nullIf</a>, <a href="RexProgramBuilderBase.html#or(java.lang.Iterable)">or</a>, <a href="RexProgramBuilderBase.html#or(org.apache.calcite.rex.RexNode...)">or</a>, <a href="RexProgramBuilderBase.html#plus(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">plus</a>, <a href="RexProgramBuilderBase.html#sub(org.apache.calcite.rex.RexNode,org.apache.calcite.rex.RexNode)">sub</a>, <a href="RexProgramBuilderBase.html#tBoolean()">tBoolean</a>, <a href="RexProgramBuilderBase.html#tBoolean(boolean)">tBoolean</a>, <a href="RexProgramBuilderBase.html#tInt()">tInt</a>, <a href="RexProgramBuilderBase.html#tInt(boolean)">tInt</a>, <a href="RexProgramBuilderBase.html#tVarchar()">tVarchar</a>, <a href="RexProgramBuilderBase.html#tVarchar(boolean)">tVarchar</a>, <a href="RexProgramBuilderBase.html#unaryMinus(org.apache.calcite.rex.RexNode)">unaryMinus</a>, <a href="RexProgramBuilderBase.html#unaryPlus(org.apache.calcite.rex.RexNode)">unaryPlus</a>, <a href="RexProgramBuilderBase.html#vBool()">vBool</a>, <a href="RexProgramBuilderBase.html#vBool(int)">vBool</a>, <a href="RexProgramBuilderBase.html#vBoolNotNull()">vBoolNotNull</a>, <a href="RexProgramBuilderBase.html#vBoolNotNull(int)">vBoolNotNull</a>, <a href="RexProgramBuilderBase.html#vInt()">vInt</a>, <a href="RexProgramBuilderBase.html#vInt(int)">vInt</a>, <a href="RexProgramBuilderBase.html#vIntNotNull()">vIntNotNull</a>, <a href="RexProgramBuilderBase.html#vIntNotNull(int)">vIntNotNull</a>, <a href="RexProgramBuilderBase.html#vVarchar()">vVarchar</a>, <a href="RexProgramBuilderBase.html#vVarchar(int)">vVarchar</a>, <a href="RexProgramBuilderBase.html#vVarcharNotNull()">vVarcharNotNull</a>, <a href="RexProgramBuilderBase.html#vVarcharNotNull(int)">vVarcharNotNull</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class java.lang.Object</h3> |
| <code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="constructor.detail"> |
| <!-- --> |
| </a> |
| <h3>Constructor Detail</h3> |
| <a id="<init>()"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>RexProgramTest</h4> |
| <pre>public RexProgramTest()</pre> |
| <div class="block">Creates a RexProgramTest.</div> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| <!-- ============ METHOD DETAIL ========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a id="setUp()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setUp</h4> |
| <pre class="methodSignature">public void setUp()</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="RexProgramBuilderBase.html#setUp()">setUp</a></code> in class <code><a href="RexProgramBuilderBase.html" title="class in org.apache.calcite.test">RexProgramBuilderBase</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkCnf(org.apache.calcite.rex.RexNode,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkCnf</h4> |
| <pre class="methodSignature">private void checkCnf​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected)</pre> |
| </li> |
| </ul> |
| <a id="checkThresholdCnf(org.apache.calcite.rex.RexNode,int,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkThresholdCnf</h4> |
| <pre class="methodSignature">private void checkThresholdCnf​(org.apache.calcite.rex.RexNode node, |
| int threshold, |
| java.lang.String expected)</pre> |
| </li> |
| </ul> |
| <a id="checkPullFactorsUnchanged(org.apache.calcite.rex.RexNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkPullFactorsUnchanged</h4> |
| <pre class="methodSignature">private void checkPullFactorsUnchanged​(org.apache.calcite.rex.RexNode node)</pre> |
| </li> |
| </ul> |
| <a id="checkPullFactors(org.apache.calcite.rex.RexNode,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkPullFactors</h4> |
| <pre class="methodSignature">private void checkPullFactors​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected)</pre> |
| </li> |
| </ul> |
| <a id="assertNode(java.lang.String,java.lang.String,org.apache.calcite.rex.RexNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>assertNode</h4> |
| <pre class="methodSignature">private void assertNode​(java.lang.String message, |
| java.lang.String expected, |
| org.apache.calcite.rex.RexNode node)</pre> |
| <div class="block">Asserts that given node has expected string representation with account of node type</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>message</code> - extra message that clarifies where the node came from</dd> |
| <dd><code>expected</code> - expected string representation of the node</dd> |
| <dd><code>node</code> - node to check</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkSimplify(org.apache.calcite.rex.RexNode,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkSimplify</h4> |
| <pre class="methodSignature">private void checkSimplify​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected)</pre> |
| <div class="block">Simplifies an expression and checks that the result is as expected.</div> |
| </li> |
| </ul> |
| <a id="checkSimplifyUnchanged(org.apache.calcite.rex.RexNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkSimplifyUnchanged</h4> |
| <pre class="methodSignature">private void checkSimplifyUnchanged​(org.apache.calcite.rex.RexNode node)</pre> |
| <div class="block">Simplifies an expression and checks that the result is unchanged.</div> |
| </li> |
| </ul> |
| <a id="checkSimplify2(org.apache.calcite.rex.RexNode,java.lang.String,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkSimplify2</h4> |
| <pre class="methodSignature">private void checkSimplify2​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected, |
| java.lang.String expectedFalse)</pre> |
| <div class="block">Simplifies an expression and checks the result if unknowns remain |
| unknown, or if unknown becomes false. If the result is the same, use |
| <a href="#checkSimplify(org.apache.calcite.rex.RexNode,java.lang.String)"><code>checkSimplify(RexNode, String)</code></a>.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>node</code> - Expression to simplify</dd> |
| <dd><code>expected</code> - Expected simplification</dd> |
| <dd><code>expectedFalse</code> - Expected simplification, if unknown is to be treated |
| as false</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="checkSimplify3(org.apache.calcite.rex.RexNode,java.lang.String,java.lang.String,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkSimplify3</h4> |
| <pre class="methodSignature">private void checkSimplify3​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected, |
| java.lang.String expectedFalse, |
| java.lang.String expectedTrue)</pre> |
| </li> |
| </ul> |
| <a id="checkSimplify3_(org.apache.calcite.rex.RexNode,java.lang.String,java.lang.String,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkSimplify3_</h4> |
| <pre class="methodSignature">private void checkSimplify3_​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected, |
| java.lang.String expectedFalse, |
| java.lang.String expectedTrue)</pre> |
| </li> |
| </ul> |
| <a id="checkSimplifyFilter(org.apache.calcite.rex.RexNode,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkSimplifyFilter</h4> |
| <pre class="methodSignature">private void checkSimplifyFilter​(org.apache.calcite.rex.RexNode node, |
| java.lang.String expected)</pre> |
| </li> |
| </ul> |
| <a id="checkSimplifyFilter(org.apache.calcite.rex.RexNode,org.apache.calcite.plan.RelOptPredicateList,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkSimplifyFilter</h4> |
| <pre class="methodSignature">private void checkSimplifyFilter​(org.apache.calcite.rex.RexNode node, |
| org.apache.calcite.plan.RelOptPredicateList predicates, |
| java.lang.String expected)</pre> |
| </li> |
| </ul> |
| <a id="nodeCount(org.apache.calcite.rex.RexNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>nodeCount</h4> |
| <pre class="methodSignature">private static int nodeCount​(org.apache.calcite.rex.RexNode node)</pre> |
| <div class="block">Returns the number of nodes (including leaves) in a Rex tree.</div> |
| </li> |
| </ul> |
| <a id="testBuildProgram()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testBuildProgram</h4> |
| <pre class="methodSignature">public void testBuildProgram()</pre> |
| <div class="block">Tests construction of a RexProgram.</div> |
| </li> |
| </ul> |
| <a id="testNormalize()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testNormalize</h4> |
| <pre class="methodSignature">public void testNormalize()</pre> |
| <div class="block">Tests construction and normalization of a RexProgram.</div> |
| </li> |
| </ul> |
| <a id="testElimDups()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testElimDups</h4> |
| <pre class="methodSignature">public void testElimDups()</pre> |
| <div class="block">Tests construction and normalization of a RexProgram.</div> |
| </li> |
| </ul> |
| <a id="testSimplifyCondition()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCondition</h4> |
| <pre class="methodSignature">public void testSimplifyCondition()</pre> |
| <div class="block">Tests how the condition is simplified.</div> |
| </li> |
| </ul> |
| <a id="testSimplifyCondition2()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCondition2</h4> |
| <pre class="methodSignature">public void testSimplifyCondition2()</pre> |
| <div class="block">Tests how the condition is simplified.</div> |
| </li> |
| </ul> |
| <a id="testDuplicateAnd()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testDuplicateAnd</h4> |
| <pre class="methodSignature">public void testDuplicateAnd()</pre> |
| <div class="block">Checks translation of AND(x, x).</div> |
| </li> |
| </ul> |
| <a id="createProg(int)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createProg</h4> |
| <pre class="methodSignature">private org.apache.calcite.rex.RexProgramBuilder createProg​(int variant)</pre> |
| <div class="block">Creates a program, depending on variant: |
| |
| <ol> |
| <li><code>select (x + y) + (x + 1) as a, (x + x) as b from t(x, y)</code> |
| <li><code>select (x + y) + (x + 1) as a, (x + (x + 1)) as b |
| from t(x, y)</code> |
| <li><code>select (x + y) + (x + 1) as a, (x + x) as b from t(x, y) |
| where ((x + y) > 1) and ((x + y) > 1)</code> |
| <li><code>select (x + y) + (x + 1) as a, (x + x) as b from t(x, y) |
| where not case |
| when x + 1 > 5 then true |
| when y is null then null |
| else false |
| end</code> |
| </ol></div> |
| </li> |
| </ul> |
| <a id="testStrong()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testStrong</h4> |
| <pre class="methodSignature">public void testStrong()</pre> |
| <div class="block">Unit test for <code>Strong</code>.</div> |
| </li> |
| </ul> |
| <a id="xAndNotX()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>xAndNotX</h4> |
| <pre class="methodSignature">public void xAndNotX()</pre> |
| </li> |
| </ul> |
| <a id="testLosslessCast()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testLosslessCast</h4> |
| <pre class="methodSignature">public void testLosslessCast()</pre> |
| <div class="block">Unit test for <code>RexUtil.isLosslessCast(RexNode)</code>.</div> |
| </li> |
| </ul> |
| <a id="removeRedundantCast()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>removeRedundantCast</h4> |
| <pre class="methodSignature">public void removeRedundantCast()</pre> |
| </li> |
| </ul> |
| <a id="testNoCommonReturnTypeFails()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testNoCommonReturnTypeFails</h4> |
| <pre class="methodSignature">public void testNoCommonReturnTypeFails()</pre> |
| </li> |
| </ul> |
| <a id="testCnf()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testCnf</h4> |
| <pre class="methodSignature">public void testCnf()</pre> |
| <div class="block">Unit test for <code>RexUtil.toCnf(org.apache.calcite.rex.RexBuilder, org.apache.calcite.rex.RexNode)</code>.</div> |
| </li> |
| </ul> |
| <a id="testCnf2()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testCnf2</h4> |
| <pre class="methodSignature">public void testCnf2()</pre> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-394">[CALCITE-394] |
| Add RexUtil.toCnf, to convert expressions to conjunctive normal form |
| (CNF)</a>.</div> |
| </li> |
| </ul> |
| <a id="testThresholdCnf()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testThresholdCnf</h4> |
| <pre class="methodSignature">public void testThresholdCnf()</pre> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-1290">[CALCITE-1290] |
| When converting to CNF, fail if the expression exceeds a threshold</a>.</div> |
| </li> |
| </ul> |
| <a id="testCnfExponential()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testCnfExponential</h4> |
| <pre class="methodSignature">public void testCnfExponential()</pre> |
| <div class="block">Tests formulas of various sizes whose size is exponential when converted |
| to CNF.</div> |
| </li> |
| </ul> |
| <a id="checkExponentialCnf(int)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkExponentialCnf</h4> |
| <pre class="methodSignature">private void checkExponentialCnf​(int n)</pre> |
| </li> |
| </ul> |
| <a id="testPullFactors()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testPullFactors</h4> |
| <pre class="methodSignature">public void testPullFactors()</pre> |
| <div class="block">Unit test for <code>RexUtil.pullFactors(org.apache.calcite.rex.RexBuilder, org.apache.calcite.rex.RexNode)</code>.</div> |
| </li> |
| </ul> |
| <a id="testSimplify()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplify</h4> |
| <pre class="methodSignature">public void testSimplify()</pre> |
| </li> |
| </ul> |
| <a id="simplifyStrong()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>simplifyStrong</h4> |
| <pre class="methodSignature">public void simplifyStrong()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyFilter()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyFilter</h4> |
| <pre class="methodSignature">public void testSimplifyFilter()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyOrNotEqualsNotNullable()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyOrNotEqualsNotNullable</h4> |
| <pre class="methodSignature">public void testSimplifyOrNotEqualsNotNullable()</pre> |
| <div class="block">Test case for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-3198">[CALCITE-3198] |
| Enhance RexSimplify to handle (x<>a or x<>b)</a>.</div> |
| </li> |
| </ul> |
| <a id="testSimplifyOrNotEqualsNotNullable2()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyOrNotEqualsNotNullable2</h4> |
| <pre class="methodSignature">public void testSimplifyOrNotEqualsNotNullable2()</pre> |
| <div class="block">Test case for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-3198">[CALCITE-3198] |
| Enhance RexSimplify to handle (x<>a or x<>b)</a>.</div> |
| </li> |
| </ul> |
| <a id="testSimplifyOrNotEqualsNullable()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyOrNotEqualsNullable</h4> |
| <pre class="methodSignature">public void testSimplifyOrNotEqualsNullable()</pre> |
| <div class="block">Test case for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-3198">[CALCITE-3198] |
| Enhance RexSimplify to handle (x<>a or x<>b)</a>.</div> |
| </li> |
| </ul> |
| <a id="testSimplifyOrNotEqualsNullable2()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyOrNotEqualsNullable2</h4> |
| <pre class="methodSignature">public void testSimplifyOrNotEqualsNullable2()</pre> |
| <div class="block">Test case for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-3198">[CALCITE-3198] |
| Enhance RexSimplify to handle (x<>a or x<>b)</a>.</div> |
| </li> |
| </ul> |
| <a id="testSimplifyAndPush()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyAndPush</h4> |
| <pre class="methodSignature">public void testSimplifyAndPush()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyOrTerms()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyOrTerms</h4> |
| <pre class="methodSignature">public void testSimplifyOrTerms()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyNotAnd()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyNotAnd</h4> |
| <pre class="methodSignature">public void testSimplifyNotAnd()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyUnknown()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyUnknown</h4> |
| <pre class="methodSignature">public void testSimplifyUnknown()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyAnd3()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyAnd3</h4> |
| <pre class="methodSignature">public void testSimplifyAnd3()</pre> |
| </li> |
| </ul> |
| <a id="testNestedAndSimplification()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testNestedAndSimplification</h4> |
| <pre class="methodSignature">public void testNestedAndSimplification()</pre> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2840">[CALCITE-2840] |
| Simplification should use more specific UnknownAs modes during simplification</a>.</div> |
| </li> |
| </ul> |
| <a id="fieldAccessEqualsHashCode()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>fieldAccessEqualsHashCode</h4> |
| <pre class="methodSignature">public void fieldAccessEqualsHashCode()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyDynamicParam()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyDynamicParam</h4> |
| <pre class="methodSignature">public void testSimplifyDynamicParam()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseNotNullableBoolean()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseNotNullableBoolean</h4> |
| <pre class="methodSignature">public void testSimplifyCaseNotNullableBoolean()</pre> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-1289">[CALCITE-1289] |
| RexUtil.simplifyCase() should account for nullability</a>.</div> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseNullableBoolean()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseNullableBoolean</h4> |
| <pre class="methodSignature">public void testSimplifyCaseNullableBoolean()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyRecurseIntoArithmetics()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyRecurseIntoArithmetics</h4> |
| <pre class="methodSignature">public void testSimplifyRecurseIntoArithmetics()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseBranchesCollapse()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseBranchesCollapse</h4> |
| <pre class="methodSignature">public void testSimplifyCaseBranchesCollapse()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseBranchesCollapse2()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseBranchesCollapse2</h4> |
| <pre class="methodSignature">public void testSimplifyCaseBranchesCollapse2()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseNullableVarChar()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseNullableVarChar</h4> |
| <pre class="methodSignature">public void testSimplifyCaseNullableVarChar()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseCasting()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseCasting</h4> |
| <pre class="methodSignature">public void testSimplifyCaseCasting()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseAndNotSimplicationIsInAction()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseAndNotSimplicationIsInAction</h4> |
| <pre class="methodSignature">public void testSimplifyCaseAndNotSimplicationIsInAction()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseBranchRemovalStrengthensType()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseBranchRemovalStrengthensType</h4> |
| <pre class="methodSignature">public void testSimplifyCaseBranchRemovalStrengthensType()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseCompaction()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseCompaction</h4> |
| <pre class="methodSignature">public void testSimplifyCaseCompaction()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseCompaction2()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseCompaction2</h4> |
| <pre class="methodSignature">public void testSimplifyCaseCompaction2()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseCompactionDiv()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseCompactionDiv</h4> |
| <pre class="methodSignature">public void testSimplifyCaseCompactionDiv()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseDiv1()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseDiv1</h4> |
| <pre class="methodSignature">public void testSimplifyCaseDiv1()</pre> |
| <div class="block">Tests a CASE value branch that contains division.</div> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseDiv2()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseDiv2</h4> |
| <pre class="methodSignature">public void testSimplifyCaseDiv2()</pre> |
| <div class="block">Tests a CASE condition that contains division,</div> |
| </li> |
| </ul> |
| <a id="testSimplifyCaseFirstBranchIsSafe()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCaseFirstBranchIsSafe</h4> |
| <pre class="methodSignature">public void testSimplifyCaseFirstBranchIsSafe()</pre> |
| </li> |
| </ul> |
| <a id="testPushNotIntoCase()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testPushNotIntoCase</h4> |
| <pre class="methodSignature">public void testPushNotIntoCase()</pre> |
| </li> |
| </ul> |
| <a id="testNotRecursion()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testNotRecursion</h4> |
| <pre class="methodSignature">public void testNotRecursion()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyAnd()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyAnd</h4> |
| <pre class="methodSignature">public void testSimplifyAnd()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyIsNotNull()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyIsNotNull</h4> |
| <pre class="methodSignature">public void testSimplifyIsNotNull()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCastIsNull()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCastIsNull</h4> |
| <pre class="methodSignature">public void testSimplifyCastIsNull()</pre> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2929">[CALCITE-2929] |
| Simplification of IS NULL checks are incorrectly assuming that CAST-s are possible</a>.</div> |
| </li> |
| </ul> |
| <a id="testSimplifyCastIsNull2()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCastIsNull2</h4> |
| <pre class="methodSignature">public void testSimplifyCastIsNull2()</pre> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2929">[CALCITE-2929] |
| Simplification of IS NULL checks are incorrectly assuming that CAST-s are possible</a>.</div> |
| </li> |
| </ul> |
| <a id="checkSimplifyDynamicParam()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkSimplifyDynamicParam</h4> |
| <pre class="methodSignature">public void checkSimplifyDynamicParam()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCastLiteral()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCastLiteral</h4> |
| <pre class="methodSignature">public void testSimplifyCastLiteral()</pre> |
| </li> |
| </ul> |
| <a id="testCastLiteral()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testCastLiteral</h4> |
| <pre class="methodSignature">public void testCastLiteral()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCastLiteral2()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCastLiteral2</h4> |
| <pre class="methodSignature">public void testSimplifyCastLiteral2()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCastLiteral3()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCastLiteral3</h4> |
| <pre class="methodSignature">public void testSimplifyCastLiteral3()</pre> |
| </li> |
| </ul> |
| <a id="testRemovalOfNullabilityWideningCast()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testRemovalOfNullabilityWideningCast</h4> |
| <pre class="methodSignature">public void testRemovalOfNullabilityWideningCast()</pre> |
| </li> |
| </ul> |
| <a id="testCompareTimestampWithTimeZone()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testCompareTimestampWithTimeZone</h4> |
| <pre class="methodSignature">public void testCompareTimestampWithTimeZone()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyLiterals()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyLiterals</h4> |
| <pre class="methodSignature">public void testSimplifyLiterals()</pre> |
| </li> |
| </ul> |
| <a id="testSelfComparisions()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSelfComparisions</h4> |
| <pre class="methodSignature">public void testSelfComparisions()</pre> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2421">[CALCITE-2421] |
| to-be-filled </a>.</div> |
| </li> |
| </ul> |
| <a id="testBooleanComparisions()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testBooleanComparisions</h4> |
| <pre class="methodSignature">public void testBooleanComparisions()</pre> |
| </li> |
| </ul> |
| <a id="testSimpleDynamicVars()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimpleDynamicVars</h4> |
| <pre class="methodSignature">public void testSimpleDynamicVars()</pre> |
| </li> |
| </ul> |
| <a id="assertTypeAndToString(org.apache.calcite.rex.RexNode,java.lang.String,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>assertTypeAndToString</h4> |
| <pre class="methodSignature">private void assertTypeAndToString​(org.apache.calcite.rex.RexNode rexNode, |
| java.lang.String representation, |
| java.lang.String type)</pre> |
| </li> |
| </ul> |
| <a id="testIsDeterministic()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsDeterministic</h4> |
| <pre class="methodSignature">public void testIsDeterministic()</pre> |
| </li> |
| </ul> |
| <a id="testConstantMap()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testConstantMap</h4> |
| <pre class="methodSignature">public void testConstantMap()</pre> |
| </li> |
| </ul> |
| <a id="notDistinct()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>notDistinct</h4> |
| <pre class="methodSignature">public void notDistinct()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyCoalesce()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyCoalesce</h4> |
| <pre class="methodSignature">public void testSimplifyCoalesce()</pre> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2505">[CALCITE-2505] |
| RexSimplify wrongly simplifies "COALESCE(+(NULL), x)" to "NULL"</a>.</div> |
| </li> |
| </ul> |
| <a id="simplifyNull()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>simplifyNull</h4> |
| <pre class="methodSignature">public void simplifyNull()</pre> |
| </li> |
| </ul> |
| <a id="getString(com.google.common.collect.ImmutableMap)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getString</h4> |
| <pre class="methodSignature">private static java.lang.String getString​(com.google.common.collect.ImmutableMap<org.apache.calcite.rex.RexNode,​org.apache.calcite.rex.RexNode> map)</pre> |
| <div class="block">Converts a map to a string, sorting on the string representation of its |
| keys.</div> |
| </li> |
| </ul> |
| <a id="testSimplifyFalse()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyFalse</h4> |
| <pre class="methodSignature">public void testSimplifyFalse()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyNot()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyNot</h4> |
| <pre class="methodSignature">public void testSimplifyNot()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyAndNot()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyAndNot</h4> |
| <pre class="methodSignature">public void testSimplifyAndNot()</pre> |
| </li> |
| </ul> |
| <a id="testSimplifyOrNot()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testSimplifyOrNot</h4> |
| <pre class="methodSignature">public void testSimplifyOrNot()</pre> |
| </li> |
| </ul> |
| <a id="simplify(org.apache.calcite.rex.RexNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>simplify</h4> |
| <pre class="methodSignature">private org.apache.calcite.rex.RexNode simplify​(org.apache.calcite.rex.RexNode e)</pre> |
| </li> |
| </ul> |
| <a id="testInterpreter()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testInterpreter</h4> |
| <pre class="methodSignature">public void testInterpreter()</pre> |
| </li> |
| </ul> |
| <a id="testIsNullRecursion()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsNullRecursion</h4> |
| <pre class="methodSignature">public void testIsNullRecursion()</pre> |
| </li> |
| </ul> |
| <a id="testRedundantIsTrue()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testRedundantIsTrue</h4> |
| <pre class="methodSignature">public void testRedundantIsTrue()</pre> |
| </li> |
| </ul> |
| <a id="testRedundantIsFalse()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testRedundantIsFalse</h4> |
| <pre class="methodSignature">public void testRedundantIsFalse()</pre> |
| </li> |
| </ul> |
| <a id="testRedundantIsNotTrue()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testRedundantIsNotTrue</h4> |
| <pre class="methodSignature">public void testRedundantIsNotTrue()</pre> |
| </li> |
| </ul> |
| <a id="testRedundantIsNotFalse()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testRedundantIsNotFalse</h4> |
| <pre class="methodSignature">public void testRedundantIsNotFalse()</pre> |
| </li> |
| </ul> |
| <a id="testIsAlwaysTrueAndFalseXisNullisNotNullisFalse()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsAlwaysTrueAndFalseXisNullisNotNullisFalse</h4> |
| <pre class="methodSignature">public void testIsAlwaysTrueAndFalseXisNullisNotNullisFalse()</pre> |
| <div class="block">Unit tests for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2438">[CALCITE-2438] |
| RexCall#isAlwaysTrue returns incorrect result</a>.</div> |
| </li> |
| </ul> |
| <a id="testIsAlwaysTrueAndFalseNotXisNullisNotNullisFalse()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsAlwaysTrueAndFalseNotXisNullisNotNullisFalse</h4> |
| <pre class="methodSignature">public void testIsAlwaysTrueAndFalseNotXisNullisNotNullisFalse()</pre> |
| </li> |
| </ul> |
| <a id="testIsAlwaysTrueAndFalseXisNullisNotNullisTrue()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsAlwaysTrueAndFalseXisNullisNotNullisTrue</h4> |
| <pre class="methodSignature">public void testIsAlwaysTrueAndFalseXisNullisNotNullisTrue()</pre> |
| </li> |
| </ul> |
| <a id="testIsAlwaysTrueAndFalseNotXisNullisNotNullisTrue()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsAlwaysTrueAndFalseNotXisNullisNotNullisTrue</h4> |
| <pre class="methodSignature">public void testIsAlwaysTrueAndFalseNotXisNullisNotNullisTrue()</pre> |
| </li> |
| </ul> |
| <a id="testIsAlwaysTrueAndFalseNotXisNullisNotNullisNotTrue()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsAlwaysTrueAndFalseNotXisNullisNotNullisNotTrue</h4> |
| <pre class="methodSignature">public void testIsAlwaysTrueAndFalseNotXisNullisNotNullisNotTrue()</pre> |
| </li> |
| </ul> |
| <a id="testIsAlwaysTrueAndFalseXisNullisNotNull()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsAlwaysTrueAndFalseXisNullisNotNull</h4> |
| <pre class="methodSignature">public void testIsAlwaysTrueAndFalseXisNullisNotNull()</pre> |
| </li> |
| </ul> |
| <a id="testIsAlwaysTrueAndFalseXisNotNullisNotNull()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsAlwaysTrueAndFalseXisNotNullisNotNull</h4> |
| <pre class="methodSignature">public void testIsAlwaysTrueAndFalseXisNotNullisNotNull()</pre> |
| </li> |
| </ul> |
| <a id="testIsAlwaysTrueAndFalseXisNullisNull()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsAlwaysTrueAndFalseXisNullisNull</h4> |
| <pre class="methodSignature">public void testIsAlwaysTrueAndFalseXisNullisNull()</pre> |
| </li> |
| </ul> |
| <a id="testIsAlwaysTrueAndFalseXisNotNullisNull()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsAlwaysTrueAndFalseXisNotNullisNull</h4> |
| <pre class="methodSignature">public void testIsAlwaysTrueAndFalseXisNotNullisNull()</pre> |
| </li> |
| </ul> |
| <a id="testIsAlwaysTrueAndFalseXisNullisNotNullisNotFalse()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsAlwaysTrueAndFalseXisNullisNotNullisNotFalse</h4> |
| <pre class="methodSignature">public void testIsAlwaysTrueAndFalseXisNullisNotNullisNotFalse()</pre> |
| </li> |
| </ul> |
| <a id="testIsAlwaysTrueAndFalseXisNullisNotNullisNotTrue()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsAlwaysTrueAndFalseXisNullisNotNullisNotTrue</h4> |
| <pre class="methodSignature">public void testIsAlwaysTrueAndFalseXisNullisNotNullisNotTrue()</pre> |
| </li> |
| </ul> |
| <a id="checkIs(org.apache.calcite.rex.RexNode,boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkIs</h4> |
| <pre class="methodSignature">private void checkIs​(org.apache.calcite.rex.RexNode e, |
| boolean expected)</pre> |
| <div class="block">Checks that <code>RexNode.isAlwaysTrue()</code>, |
| <code>RexNode.isAlwaysTrue()</code> and <code>RexSimplify</code> agree that |
| an expression reduces to true or false.</div> |
| </li> |
| </ul> |
| <a id="eval(org.apache.calcite.rex.RexNode)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>eval</h4> |
| <pre class="methodSignature">private java.lang.Comparable eval​(org.apache.calcite.rex.RexNode e)</pre> |
| </li> |
| </ul> |
| <a id="testInDigest()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testInDigest</h4> |
| <pre class="methodSignature">public void testInDigest()</pre> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-2842">[CALCITE-2842] |
| Computing digest of IN expressions leads to Exceptions</a>.</div> |
| </li> |
| </ul> |
| <a id="testOrSimplificationNotWeakensCondition()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testOrSimplificationNotWeakensCondition</h4> |
| <pre class="methodSignature">public void testOrSimplificationNotWeakensCondition()</pre> |
| <div class="block">Unit test for |
| <a href="https://issues.apache.org/jira/browse/CALCITE-3192">[CALCITE-3192] |
| Simplify OR incorrectly weaks condition</a>.</div> |
| </li> |
| </ul> |
| <a id="testIsNullSimplificationWithUnaryPlus()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>testIsNullSimplificationWithUnaryPlus</h4> |
| <pre class="methodSignature">public void testIsNullSimplificationWithUnaryPlus()</pre> |
| </li> |
| </ul> |
| <a id="testIsNullSimplificationWithIsDistinctFrom()"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>testIsNullSimplificationWithIsDistinctFrom</h4> |
| <pre class="methodSignature">public void testIsNullSimplificationWithIsDistinctFrom()</pre> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </main> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <footer role="contentinfo"> |
| <nav role="navigation"> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a id="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a id="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/RexProgramTest.html">Use</a></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> |
| <div class="subNav"> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../../../allclasses.html">All 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> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li>Nested | </li> |
| <li><a href="#field.summary">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a id="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| </nav> |
| <p class="legalCopy"><small>Copyright © 2012–2019 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> |
| </footer> |
| </body> |
| </html> |