blob: a14beacc90a8fbaf4e930700511dcf57181589e3 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.36.0 (20140111.2315)
-->
<!-- Title: impala::ScalarFnCall Pages: 1 -->
<!--zoomable 974 -->
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
<style type="text/css"><![CDATA[
.edge:hover path { stroke: red; }
.edge:hover polygon { stroke: red; fill: red; }
]]></style>
<script type="text/javascript"><![CDATA[
var edges = document.getElementsByTagName('g');
if (edges && edges.length) {
for (var i=0;i<edges.length;i++) {
if (edges[i].id.substr(0,4)=='edge') {
edges[i].setAttribute('class','edge');
}
}
}
]]></script>
<defs>
<circle id="rim" cx="0" cy="0" r="7"/>
<circle id="rim2" cx="0" cy="0" r="3.5"/>
<g id="zoomPlus">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
</use>
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="zoomMin">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
</use>
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
</g>
<g id="dirArrow">
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="resetDef">
<use xlink:href="#rim2" fill="#404040">
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
</use>
</g>
</defs>
<script type="text/javascript">
var viewWidth = 186;
var viewHeight = 974;
var sectionId = 'dynsection-0';
</script>
<script xlink:href="svgpan.js"/>
<svg id="graph" class="graph">
<g id="viewport">
<title>impala::ScalarFnCall</title>
<polygon fill="white" stroke="none" points="-4,4 -4,-970 182,-970 182,4 -4,4"/>
<!-- Node1 -->
<g id="node1" class="node"><title>Node1</title>
<polygon fill="#bfbfbf" stroke="black" points="18,-0.5 18,-277.5 160,-277.5 160,-0.5 18,-0.5"/>
<text text-anchor="middle" x="89" y="-265.5" font-family="Helvetica,sans-Serif" font-size="10.00">impala::ScalarFnCall</text>
<polyline fill="none" stroke="black" points="18,-258.5 160,-258.5 "/>
<text text-anchor="start" x="26" y="-246.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; vararg_start_idx_</text>
<text text-anchor="start" x="26" y="-235.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; scalar_fn_wrapper_</text>
<text text-anchor="start" x="26" y="-224.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; prepare_fn_</text>
<text text-anchor="start" x="26" y="-213.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; close_fn_</text>
<text text-anchor="start" x="26" y="-202.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; scalar_fn_</text>
<polyline fill="none" stroke="black" points="18,-195.5 160,-195.5 "/>
<text text-anchor="start" x="26" y="-183.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ DebugString()</text>
<text text-anchor="start" x="26" y="-172.5" font-family="Helvetica,sans-Serif" font-size="10.00"># ScalarFnCall()</text>
<text text-anchor="start" x="26" y="-161.5" font-family="Helvetica,sans-Serif" font-size="10.00"># Prepare()</text>
<text text-anchor="start" x="26" y="-150.5" font-family="Helvetica,sans-Serif" font-size="10.00"># Open()</text>
<text text-anchor="start" x="26" y="-139.5" font-family="Helvetica,sans-Serif" font-size="10.00"># GetCodegendComputeFn()</text>
<text text-anchor="start" x="26" y="-128.5" font-family="Helvetica,sans-Serif" font-size="10.00"># Close()</text>
<text text-anchor="start" x="26" y="-117.5" font-family="Helvetica,sans-Serif" font-size="10.00"># IsConstant()</text>
<text text-anchor="start" x="26" y="-106.5" font-family="Helvetica,sans-Serif" font-size="10.00"># GetBooleanVal()</text>
<text text-anchor="start" x="26" y="-95.5" font-family="Helvetica,sans-Serif" font-size="10.00"># GetTinyIntVal()</text>
<text text-anchor="start" x="26" y="-84.5" font-family="Helvetica,sans-Serif" font-size="10.00"># GetSmallIntVal()</text>
<text text-anchor="start" x="26" y="-73.5" font-family="Helvetica,sans-Serif" font-size="10.00"># GetIntVal()</text>
<text text-anchor="start" x="26" y="-62.5" font-family="Helvetica,sans-Serif" font-size="10.00">and 6 more...</text>
<text text-anchor="start" x="26" y="-51.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; NumFixedArgs()</text>
<text text-anchor="start" x="26" y="-40.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; GetUdf()</text>
<text text-anchor="start" x="26" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; GetFunction()</text>
<text text-anchor="start" x="26" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; EvaluateChildren()</text>
<text text-anchor="start" x="26" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; InterpretEval()</text>
</g>
<!-- Node2 -->
<g id="node2" class="node"><title>Node2</title>
<g id="a_node2"><a xlink:href="classimpala_1_1Expr.html" target="_top" xlink:title="This is the superclass of all expr evaluation nodes. ">
<polygon fill="white" stroke="black" points="-0.5,-314.5 -0.5,-965.5 178.5,-965.5 178.5,-314.5 -0.5,-314.5"/>
<text text-anchor="middle" x="89" y="-953.5" font-family="Helvetica,sans-Serif" font-size="10.00">impala::Expr</text>
<polyline fill="none" stroke="black" points="-0.5,-946.5 178.5,-946.5 "/>
<text text-anchor="start" x="7.5" y="-934.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ LLVM_CLASS_NAME</text>
<text text-anchor="start" x="7.5" y="-923.5" font-family="Helvetica,sans-Serif" font-size="10.00"># cache_entry_</text>
<text text-anchor="start" x="7.5" y="-912.5" font-family="Helvetica,sans-Serif" font-size="10.00"># fn_</text>
<text text-anchor="start" x="7.5" y="-901.5" font-family="Helvetica,sans-Serif" font-size="10.00"># is_slotref_</text>
<text text-anchor="start" x="7.5" y="-890.5" font-family="Helvetica,sans-Serif" font-size="10.00"># type_</text>
<text text-anchor="start" x="7.5" y="-879.5" font-family="Helvetica,sans-Serif" font-size="10.00"># children_</text>
<text text-anchor="start" x="7.5" y="-868.5" font-family="Helvetica,sans-Serif" font-size="10.00"># output_scale_</text>
<text text-anchor="start" x="7.5" y="-857.5" font-family="Helvetica,sans-Serif" font-size="10.00"># context_index_</text>
<text text-anchor="start" x="7.5" y="-846.5" font-family="Helvetica,sans-Serif" font-size="10.00"># ir_compute_fn_</text>
<text text-anchor="start" x="7.5" y="-835.5" font-family="Helvetica,sans-Serif" font-size="10.00"># constant_val_</text>
<polyline fill="none" stroke="black" points="-0.5,-828.5 178.5,-828.5 "/>
<text text-anchor="start" x="7.5" y="-816.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ ~Expr()</text>
<text text-anchor="start" x="7.5" y="-805.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ GetBooleanVal()</text>
<text text-anchor="start" x="7.5" y="-794.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ GetTinyIntVal()</text>
<text text-anchor="start" x="7.5" y="-783.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ GetSmallIntVal()</text>
<text text-anchor="start" x="7.5" y="-772.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ GetIntVal()</text>
<text text-anchor="start" x="7.5" y="-761.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ GetBigIntVal()</text>
<text text-anchor="start" x="7.5" y="-750.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ GetFloatVal()</text>
<text text-anchor="start" x="7.5" y="-739.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ GetDoubleVal()</text>
<text text-anchor="start" x="7.5" y="-728.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ GetStringVal()</text>
<text text-anchor="start" x="7.5" y="-717.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ GetTimestampVal()</text>
<text text-anchor="start" x="7.5" y="-706.5" font-family="Helvetica,sans-Serif" font-size="10.00">and 13 more...</text>
<text text-anchor="start" x="7.5" y="-695.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ CreateExprTree()</text>
<text text-anchor="start" x="7.5" y="-684.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ CreateExprTrees()</text>
<text text-anchor="start" x="7.5" y="-673.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ Prepare()</text>
<text text-anchor="start" x="7.5" y="-662.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ Open()</text>
<text text-anchor="start" x="7.5" y="-651.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ Clone()</text>
<text text-anchor="start" x="7.5" y="-640.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ Close()</text>
<text text-anchor="start" x="7.5" y="-629.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ CreateLiteral()</text>
<text text-anchor="start" x="7.5" y="-618.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ CreateLiteral()</text>
<text text-anchor="start" x="7.5" y="-607.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ ComputeResultsLayout()</text>
<text text-anchor="start" x="7.5" y="-596.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ ComputeResultsLayout()</text>
<text text-anchor="start" x="7.5" y="-585.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ DebugString()</text>
<text text-anchor="start" x="7.5" y="-574.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ DebugString()</text>
<text text-anchor="start" x="7.5" y="-563.5" font-family="Helvetica,sans-Serif" font-size="10.00">+ InitBuiltinsDummy()</text>
<text text-anchor="start" x="7.5" y="-552.5" font-family="Helvetica,sans-Serif" font-size="10.00"># Expr()</text>
<text text-anchor="start" x="7.5" y="-541.5" font-family="Helvetica,sans-Serif" font-size="10.00"># Expr()</text>
<text text-anchor="start" x="7.5" y="-530.5" font-family="Helvetica,sans-Serif" font-size="10.00"># Prepare()</text>
<text text-anchor="start" x="7.5" y="-519.5" font-family="Helvetica,sans-Serif" font-size="10.00"># Open()</text>
<text text-anchor="start" x="7.5" y="-508.5" font-family="Helvetica,sans-Serif" font-size="10.00"># Close()</text>
<text text-anchor="start" x="7.5" y="-497.5" font-family="Helvetica,sans-Serif" font-size="10.00"># RegisterFunctionContext()</text>
<text text-anchor="start" x="7.5" y="-486.5" font-family="Helvetica,sans-Serif" font-size="10.00"># CreateIrFunctionPrototype()</text>
<text text-anchor="start" x="7.5" y="-475.5" font-family="Helvetica,sans-Serif" font-size="10.00"># GetCodegendComputeFnWrapper()</text>
<text text-anchor="start" x="7.5" y="-464.5" font-family="Helvetica,sans-Serif" font-size="10.00"># GetStaticGetValWrapper()</text>
<text text-anchor="start" x="7.5" y="-453.5" font-family="Helvetica,sans-Serif" font-size="10.00"># DebugString()</text>
<text text-anchor="start" x="7.5" y="-442.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; CreateExpr()</text>
<text text-anchor="start" x="7.5" y="-431.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; CreateTreeFromThrift()</text>
<text text-anchor="start" x="7.5" y="-420.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; GetBooleanVal()</text>
<text text-anchor="start" x="7.5" y="-409.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; GetTinyIntVal()</text>
<text text-anchor="start" x="7.5" y="-398.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; GetSmallIntVal()</text>
<text text-anchor="start" x="7.5" y="-387.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; GetIntVal()</text>
<text text-anchor="start" x="7.5" y="-376.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; GetBigIntVal()</text>
<text text-anchor="start" x="7.5" y="-365.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; GetFloatVal()</text>
<text text-anchor="start" x="7.5" y="-354.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; GetDoubleVal()</text>
<text text-anchor="start" x="7.5" y="-343.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; GetStringVal()</text>
<text text-anchor="start" x="7.5" y="-332.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; GetTimestampVal()</text>
<text text-anchor="start" x="7.5" y="-321.5" font-family="Helvetica,sans-Serif" font-size="10.00">&#45; GetDecimalVal()</text>
</a>
</g>
</g>
<!-- Node2&#45;&gt;Node1 -->
<g id="edge1" class="edge"><title>Node2&#45;&gt;Node1</title>
<path fill="none" stroke="midnightblue" d="M89,-303.951C89,-294.956 89,-286.13 89,-277.527"/>
<polygon fill="none" stroke="midnightblue" points="85.5001,-304.176 89,-314.176 92.5001,-304.176 85.5001,-304.176"/>
</g>
</g>
</svg>
<g id="navigator" transform="translate(0 0)" fill="#404254">
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
<g id="arrowUp" xlink:href="#dirArrow" transform="translate(30 24)" onmousedown="handlePan(0,-1)">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="arrowUp.mouseover" end="arrowUp.mouseout"/>
</use>
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowRight" xlink:href="#dirArrow" transform="rotate(90) translate(36 -43)" onmousedown="handlePan(1,0)">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="arrowRight.mouseover" end="arrowRight.mouseout"/>
</use>
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowDown" xlink:href="#dirArrow" transform="rotate(180) translate(-30 -48)" onmousedown="handlePan(0,1)">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="arrowDown.mouseover" end="arrowDown.mouseout"/>
</use>
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
<g id="arrowLeft" xlink:href="#dirArrow" transform="rotate(270) translate(-36 17)" onmousedown="handlePan(-1,0)">
<use xlink:href="#rim" fill="#404040">
<set attributeName="fill" to="#808080" begin="arrowLeft.mouseover" end="arrowLeft.mouseout"/>
</use>
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
</g>
</g>
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
<g id="arrow_out" transform="scale(0.3 0.3)">
<a xlink:href="classimpala_1_1ScalarFnCall__inherit__graph_org.svg" target="_base">
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
<path id="arrow"
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
style="fill:#404040;"/>
</a>
</g>
</svg>
</svg>