| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml"> |
| <head> |
| <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> |
| <meta http-equiv="X-UA-Compatible" content="IE=9"/> |
| <meta name="generator" content="Doxygen 1.8.6"/> |
| <title>Impala: impala::Expr Class Reference</title> |
| <link href="tabs.css" rel="stylesheet" type="text/css"/> |
| <script type="text/javascript" src="jquery.js"></script> |
| <script type="text/javascript" src="dynsections.js"></script> |
| <link href="navtree.css" rel="stylesheet" type="text/css"/> |
| <script type="text/javascript" src="resize.js"></script> |
| <script type="text/javascript" src="navtree.js"></script> |
| <script type="text/javascript"> |
| $(document).ready(initResizable); |
| $(window).load(resizeHeight); |
| </script> |
| <link href="search/search.css" rel="stylesheet" type="text/css"/> |
| <script type="text/javascript" src="search/search.js"></script> |
| <script type="text/javascript"> |
| $(document).ready(function() { searchBox.OnSelectItem(0); }); |
| </script> |
| <link href="doxygen.css" rel="stylesheet" type="text/css" /> |
| </head> |
| <body> |
| <div id="top"><!-- do not remove this div, it is closed by doxygen! --> |
| <div id="titlearea"> |
| <table cellspacing="0" cellpadding="0"> |
| <tbody> |
| <tr style="height: 56px;"> |
| <td style="padding-left: 0.5em;"> |
| <div id="projectname">Impala |
| </div> |
| <div id="projectbrief">Impalaistheopensource,nativeanalyticdatabaseforApacheHadoop.</div> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <!-- end header part --> |
| <!-- Generated by Doxygen 1.8.6 --> |
| <script type="text/javascript"> |
| var searchBox = new SearchBox("searchBox", "search",false,'Search'); |
| </script> |
| <div id="navrow1" class="tabs"> |
| <ul class="tablist"> |
| <li><a href="index.html"><span>Main Page</span></a></li> |
| <li><a href="namespaces.html"><span>Namespaces</span></a></li> |
| <li class="current"><a href="annotated.html"><span>Classes</span></a></li> |
| <li><a href="files.html"><span>Files</span></a></li> |
| <li> |
| <div id="MSearchBox" class="MSearchBoxInactive"> |
| <span class="left"> |
| <img id="MSearchSelect" src="search/mag_sel.png" |
| onmouseover="return searchBox.OnSearchSelectShow()" |
| onmouseout="return searchBox.OnSearchSelectHide()" |
| alt=""/> |
| <input type="text" id="MSearchField" value="Search" accesskey="S" |
| onfocus="searchBox.OnSearchFieldFocus(true)" |
| onblur="searchBox.OnSearchFieldFocus(false)" |
| onkeyup="searchBox.OnSearchFieldChange(event)"/> |
| </span><span class="right"> |
| <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> |
| </span> |
| </div> |
| </li> |
| </ul> |
| </div> |
| <div id="navrow2" class="tabs2"> |
| <ul class="tablist"> |
| <li><a href="annotated.html"><span>Class List</span></a></li> |
| <li><a href="classes.html"><span>Class Index</span></a></li> |
| <li><a href="inherits.html"><span>Class Hierarchy</span></a></li> |
| <li><a href="functions.html"><span>Class Members</span></a></li> |
| </ul> |
| </div> |
| </div><!-- top --> |
| <div id="side-nav" class="ui-resizable side-nav-resizable"> |
| <div id="nav-tree"> |
| <div id="nav-tree-contents"> |
| <div id="nav-sync" class="sync"></div> |
| </div> |
| </div> |
| <div id="splitbar" style="-moz-user-select:none;" |
| class="ui-resizable-handle"> |
| </div> |
| </div> |
| <script type="text/javascript"> |
| $(document).ready(function(){initNavTree('classimpala_1_1Expr.html','');}); |
| </script> |
| <div id="doc-content"> |
| <!-- window showing the filter options --> |
| <div id="MSearchSelectWindow" |
| onmouseover="return searchBox.OnSearchSelectShow()" |
| onmouseout="return searchBox.OnSearchSelectHide()" |
| onkeydown="return searchBox.OnSearchSelectKey(event)"> |
| <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Macros</a></div> |
| |
| <!-- iframe showing the search results (closed by default) --> |
| <div id="MSearchResultsWindow"> |
| <iframe src="javascript:void(0)" frameborder="0" |
| name="MSearchResults" id="MSearchResults"> |
| </iframe> |
| </div> |
| |
| <div class="header"> |
| <div class="summary"> |
| <a href="#pub-methods">Public Member Functions</a> | |
| <a href="#pub-static-methods">Static Public Member Functions</a> | |
| <a href="#pub-static-attribs">Static Public Attributes</a> | |
| <a href="#pro-methods">Protected Member Functions</a> | |
| <a href="#pro-attribs">Protected Attributes</a> | |
| <a href="#pri-static-methods">Static Private Member Functions</a> | |
| <a href="#friends">Friends</a> | |
| <a href="classimpala_1_1Expr-members.html">List of all members</a> </div> |
| <div class="headertitle"> |
| <div class="title">impala::Expr Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div> |
| </div><!--header--> |
| <div class="contents"> |
| |
| <p>This is the superclass of all expr evaluation nodes. |
| <a href="classimpala_1_1Expr.html#details">More...</a></p> |
| |
| <p><code>#include <<a class="el" href="expr_8h_source.html">expr.h</a>></code></p> |
| <div class="dynheader"> |
| Inheritance diagram for impala::Expr:</div> |
| <div class="dyncontent"> |
| <div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="classimpala_1_1Expr__inherit__graph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div> |
| </div> |
| <div class="dynheader"> |
| Collaboration diagram for impala::Expr:</div> |
| <div class="dyncontent"> |
| <div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="classimpala_1_1Expr__coll__graph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div></div> |
| </div> |
| <table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> |
| Public Member Functions</h2></td></tr> |
| <tr class="memitem:a6a4c8bf33ec8dc246be5126e39cbc734"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a6a4c8bf33ec8dc246be5126e39cbc734">~Expr</a> ()</td></tr> |
| <tr class="separator:a6a4c8bf33ec8dc246be5126e39cbc734"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a89a9dd55e95db53685a7bb6dfd4a8dbb"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structimpala__udf_1_1BooleanVal.html">BooleanVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a89a9dd55e95db53685a7bb6dfd4a8dbb">GetBooleanVal</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *)</td></tr> |
| <tr class="separator:a89a9dd55e95db53685a7bb6dfd4a8dbb"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:abaedc9ac7dc252d497d9179f6322bf80"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structimpala__udf_1_1TinyIntVal.html">TinyIntVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#abaedc9ac7dc252d497d9179f6322bf80">GetTinyIntVal</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *)</td></tr> |
| <tr class="separator:abaedc9ac7dc252d497d9179f6322bf80"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a4d8dd3e1e7a9b05cd94ef7d52bbd4ac2"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structimpala__udf_1_1SmallIntVal.html">SmallIntVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a4d8dd3e1e7a9b05cd94ef7d52bbd4ac2">GetSmallIntVal</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *)</td></tr> |
| <tr class="separator:a4d8dd3e1e7a9b05cd94ef7d52bbd4ac2"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:afe35445295d8cad09b0fd56bc3016e7f"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structimpala__udf_1_1IntVal.html">IntVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#afe35445295d8cad09b0fd56bc3016e7f">GetIntVal</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *)</td></tr> |
| <tr class="separator:afe35445295d8cad09b0fd56bc3016e7f"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:abcfd8c3c50142f4b03ebea0a4589530f"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structimpala__udf_1_1BigIntVal.html">BigIntVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#abcfd8c3c50142f4b03ebea0a4589530f">GetBigIntVal</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *)</td></tr> |
| <tr class="separator:abcfd8c3c50142f4b03ebea0a4589530f"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a80811ee6389ccb243eef2356c15c1206"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structimpala__udf_1_1FloatVal.html">FloatVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a80811ee6389ccb243eef2356c15c1206">GetFloatVal</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *)</td></tr> |
| <tr class="separator:a80811ee6389ccb243eef2356c15c1206"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a996c4f504867963b8a461cd2c713e3c2"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structimpala__udf_1_1DoubleVal.html">DoubleVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a996c4f504867963b8a461cd2c713e3c2">GetDoubleVal</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *)</td></tr> |
| <tr class="separator:a996c4f504867963b8a461cd2c713e3c2"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a31f637ae00364a6e542eba1f8d371cae"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structimpala__udf_1_1StringVal.html">StringVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a31f637ae00364a6e542eba1f8d371cae">GetStringVal</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *)</td></tr> |
| <tr class="separator:a31f637ae00364a6e542eba1f8d371cae"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a653cc2c0d6f05cb1476e902f6d001434"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structimpala__udf_1_1TimestampVal.html">TimestampVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a653cc2c0d6f05cb1476e902f6d001434">GetTimestampVal</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *)</td></tr> |
| <tr class="separator:a653cc2c0d6f05cb1476e902f6d001434"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a973505caac0fffab99e25ee73cd87ae2"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a973505caac0fffab99e25ee73cd87ae2">GetDecimalVal</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *)</td></tr> |
| <tr class="separator:a973505caac0fffab99e25ee73cd87ae2"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:af6ec759518bffbb9f389f5564f6006df"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#af6ec759518bffbb9f389f5564f6006df">output_scale</a> () const </td></tr> |
| <tr class="separator:af6ec759518bffbb9f389f5564f6006df"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ae54f46c956cfe802556dffa3426550c2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#ae54f46c956cfe802556dffa3426550c2">AddChild</a> (<a class="el" href="classimpala_1_1Expr.html">Expr</a> *expr)</td></tr> |
| <tr class="separator:ae54f46c956cfe802556dffa3426550c2"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a76778c36a9cf309813b1623e0328eedf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a76778c36a9cf309813b1623e0328eedf">GetChild</a> (int i) const </td></tr> |
| <tr class="separator:a76778c36a9cf309813b1623e0328eedf"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:adb1cc69285dcdd91f4c17844b7307c9d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#adb1cc69285dcdd91f4c17844b7307c9d">GetNumChildren</a> () const </td></tr> |
| <tr class="separator:adb1cc69285dcdd91f4c17844b7307c9d"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a742827844080d45d514719742cb3e7f5"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a742827844080d45d514719742cb3e7f5">type</a> () const </td></tr> |
| <tr class="separator:a742827844080d45d514719742cb3e7f5"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a4245192bbee7b1d9e3c50bddd922bb3b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbool.html">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a4245192bbee7b1d9e3c50bddd922bb3b">is_slotref</a> () const </td></tr> |
| <tr class="separator:a4245192bbee7b1d9e3c50bddd922bb3b"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a9c703ec4c54d0f4fa6f3e33c41233f50"><td class="memItemLeft" align="right" valign="top">const std::vector< <a class="el" href="classimpala_1_1Expr.html">Expr</a> * > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a9c703ec4c54d0f4fa6f3e33c41233f50">children</a> () const </td></tr> |
| <tr class="separator:a9c703ec4c54d0f4fa6f3e33c41233f50"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a5708ce372f185021857e6b87a9b99f04"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classbool.html">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a5708ce372f185021857e6b87a9b99f04">IsConstant</a> () const </td></tr> |
| <tr class="separator:a5708ce372f185021857e6b87a9b99f04"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a6f42f36538e523852367b29eea5b4e68"><td class="memItemLeft" align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a6f42f36538e523852367b29eea5b4e68">GetSlotIds</a> (std::vector< <a class="el" href="namespaceimpala.html#a4e802b9fa9086eb686d8688df634a2b2">SlotId</a> > *slot_ids) const </td></tr> |
| <tr class="separator:a6f42f36538e523852367b29eea5b4e68"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a3f3fde78dfcf00d2d68bc93d52ef8b11"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classimpala_1_1Status.html">Status</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a3f3fde78dfcf00d2d68bc93d52ef8b11">GetCodegendComputeFn</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state, llvm::Function **fn)=0</td></tr> |
| <tr class="separator:a3f3fde78dfcf00d2d68bc93d52ef8b11"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a28f2b59990e3a90b1858710ace748f5c"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structimpala__udf_1_1AnyVal.html">AnyVal</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a28f2b59990e3a90b1858710ace748f5c">GetConstVal</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context)</td></tr> |
| <tr class="separator:a28f2b59990e3a90b1858710ace748f5c"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ab8ae88546f4ce923b4d187e0d7d96fa8"><td class="memItemLeft" align="right" valign="top">virtual std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#ab8ae88546f4ce923b4d187e0d7d96fa8">DebugString</a> () const </td></tr> |
| <tr class="separator:ab8ae88546f4ce923b4d187e0d7d96fa8"><td class="memSeparator" colspan="2"> </td></tr> |
| </table><table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a> |
| Static Public Member Functions</h2></td></tr> |
| <tr class="memitem:a7dcd872be8cd8e5969a428cf940eea3b"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classimpala_1_1Status.html">Status</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a7dcd872be8cd8e5969a428cf940eea3b">CreateExprTree</a> (<a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *<a class="el" href="expr-benchmark_8cc.html#a3a5de7bd423fbc0afc4cf935c166ca6b">pool</a>, const TExpr &texpr, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> **ctx)</td></tr> |
| <tr class="separator:a7dcd872be8cd8e5969a428cf940eea3b"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a6b9c01a432ae49b57482c9fc42a73681"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classimpala_1_1Status.html">Status</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a6b9c01a432ae49b57482c9fc42a73681">CreateExprTrees</a> (<a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *<a class="el" href="expr-benchmark_8cc.html#a3a5de7bd423fbc0afc4cf935c166ca6b">pool</a>, const std::vector< TExpr > &texprs, std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > *ctxs)</td></tr> |
| <tr class="separator:a6b9c01a432ae49b57482c9fc42a73681"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a3ae02e50debba50ac5c7b6dd9f8016e7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classimpala_1_1Status.html">Status</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a3ae02e50debba50ac5c7b6dd9f8016e7">Prepare</a> (const std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > &ctxs, <a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state, const <a class="el" href="classimpala_1_1RowDescriptor.html">RowDescriptor</a> &<a class="el" href="namespaceimpala.html#aa98447566dd6700a2faaaaf3059f4d95">row_desc</a>, <a class="el" href="classimpala_1_1MemTracker.html">MemTracker</a> *<a class="el" href="expr-benchmark_8cc.html#ad327327fa716227ff7993880cbc4698f">tracker</a>)</td></tr> |
| <tr class="separator:a3ae02e50debba50ac5c7b6dd9f8016e7"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:aad1111f87951868de4d8f8b2dfe87c5f"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classimpala_1_1Status.html">Status</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#aad1111f87951868de4d8f8b2dfe87c5f">Open</a> (const std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > &ctxs, <a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state)</td></tr> |
| <tr class="memdesc:aad1111f87951868de4d8f8b2dfe87c5f"><td class="mdescLeft"> </td><td class="mdescRight">Convenience function for opening multiple expr trees. <a href="#aad1111f87951868de4d8f8b2dfe87c5f">More...</a><br/></td></tr> |
| <tr class="separator:aad1111f87951868de4d8f8b2dfe87c5f"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a0704c1c17503f48ab89f0d05dc658a2d"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classimpala_1_1Status.html">Status</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a0704c1c17503f48ab89f0d05dc658a2d">Clone</a> (const std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > &ctxs, <a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state, std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > *new_ctxs)</td></tr> |
| <tr class="separator:a0704c1c17503f48ab89f0d05dc658a2d"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a70300b0ba7c91fddb9adfaeb0dfc09a5"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a70300b0ba7c91fddb9adfaeb0dfc09a5">Close</a> (const std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > &ctxs, <a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state)</td></tr> |
| <tr class="memdesc:a70300b0ba7c91fddb9adfaeb0dfc09a5"><td class="mdescLeft"> </td><td class="mdescRight">Convenience function for closing multiple expr trees. <a href="#a70300b0ba7c91fddb9adfaeb0dfc09a5">More...</a><br/></td></tr> |
| <tr class="separator:a70300b0ba7c91fddb9adfaeb0dfc09a5"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:af6d0f18b68cd71bd9f2c208163117529"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#af6d0f18b68cd71bd9f2c208163117529">CreateLiteral</a> (<a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *<a class="el" href="expr-benchmark_8cc.html#a3a5de7bd423fbc0afc4cf935c166ca6b">pool</a>, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &<a class="el" href="classimpala_1_1Expr.html#a742827844080d45d514719742cb3e7f5">type</a>, void *data)</td></tr> |
| <tr class="separator:af6d0f18b68cd71bd9f2c208163117529"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:adb64080075f454d596f0022d82642ab7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#adb64080075f454d596f0022d82642ab7">CreateLiteral</a> (<a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *<a class="el" href="expr-benchmark_8cc.html#a3a5de7bd423fbc0afc4cf935c166ca6b">pool</a>, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &<a class="el" href="classimpala_1_1Expr.html#a742827844080d45d514719742cb3e7f5">type</a>, const std::string &)</td></tr> |
| <tr class="separator:adb64080075f454d596f0022d82642ab7"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a153fedc59ca9f5b5cf350b815381b999"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a153fedc59ca9f5b5cf350b815381b999">ComputeResultsLayout</a> (const std::vector< <a class="el" href="classimpala_1_1Expr.html">Expr</a> * > &exprs, std::vector< int > *offsets, int *var_result_begin)</td></tr> |
| <tr class="separator:a153fedc59ca9f5b5cf350b815381b999"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a7d61d761811ce034ea129158fd5436dc"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a7d61d761811ce034ea129158fd5436dc">ComputeResultsLayout</a> (const std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > &ctxs, std::vector< int > *offsets, int *var_result_begin)</td></tr> |
| <tr class="separator:a7d61d761811ce034ea129158fd5436dc"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a8add6d9e3cb760f6e76a7ec032085da9"><td class="memItemLeft" align="right" valign="top">static std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a8add6d9e3cb760f6e76a7ec032085da9">DebugString</a> (const std::vector< <a class="el" href="classimpala_1_1Expr.html">Expr</a> * > &exprs)</td></tr> |
| <tr class="separator:a8add6d9e3cb760f6e76a7ec032085da9"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a594418cfe74439ae4fb337ca910f78bc"><td class="memItemLeft" align="right" valign="top">static std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a594418cfe74439ae4fb337ca910f78bc">DebugString</a> (const std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > &ctxs)</td></tr> |
| <tr class="separator:a594418cfe74439ae4fb337ca910f78bc"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:adb1c9ed033cb9b8ec3cd40557e840d11"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#adb1c9ed033cb9b8ec3cd40557e840d11">InitBuiltinsDummy</a> ()</td></tr> |
| <tr class="separator:adb1c9ed033cb9b8ec3cd40557e840d11"><td class="memSeparator" colspan="2"> </td></tr> |
| </table><table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a> |
| Static Public Attributes</h2></td></tr> |
| <tr class="memitem:ad290be216bb08202ca551b078e0cc6a7"><td class="memItemLeft" align="right" valign="top">static const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#ad290be216bb08202ca551b078e0cc6a7">LLVM_CLASS_NAME</a> = "class.impala::Expr"</td></tr> |
| <tr class="separator:ad290be216bb08202ca551b078e0cc6a7"><td class="memSeparator" colspan="2"> </td></tr> |
| </table><table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a> |
| Protected Member Functions</h2></td></tr> |
| <tr class="memitem:a042a0ce8fe153dc2a49729b6fa868b94"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a042a0ce8fe153dc2a49729b6fa868b94">Expr</a> (const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &<a class="el" href="classimpala_1_1Expr.html#a742827844080d45d514719742cb3e7f5">type</a>, <a class="el" href="classbool.html">bool</a> <a class="el" href="classimpala_1_1Expr.html#a4245192bbee7b1d9e3c50bddd922bb3b">is_slotref</a>=false)</td></tr> |
| <tr class="separator:a042a0ce8fe153dc2a49729b6fa868b94"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:afdfd416fc13ad359531c28e74976c06f"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#afdfd416fc13ad359531c28e74976c06f">Expr</a> (const TExprNode &node, <a class="el" href="classbool.html">bool</a> <a class="el" href="classimpala_1_1Expr.html#a4245192bbee7b1d9e3c50bddd922bb3b">is_slotref</a>=false)</td></tr> |
| <tr class="separator:afdfd416fc13ad359531c28e74976c06f"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:af1bff470a7f8858237dbc9322fa54f2e"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classimpala_1_1Status.html">Status</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#af1bff470a7f8858237dbc9322fa54f2e">Prepare</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state, const <a class="el" href="classimpala_1_1RowDescriptor.html">RowDescriptor</a> &<a class="el" href="namespaceimpala.html#aa98447566dd6700a2faaaaf3059f4d95">row_desc</a>, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context)</td></tr> |
| <tr class="separator:af1bff470a7f8858237dbc9322fa54f2e"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ac7bb5173962798d058546becc0d385e4"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classimpala_1_1Status.html">Status</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#ac7bb5173962798d058546becc0d385e4">Open</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala__udf_1_1FunctionContext.html#a1e9662a1bbb78daa9923b47412347ffc">FunctionContext::FunctionStateScope</a> scope=FunctionContext::FRAGMENT_LOCAL)</td></tr> |
| <tr class="separator:ac7bb5173962798d058546becc0d385e4"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a6842f44cb3b73ccbc86edc23a5b5e223"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a6842f44cb3b73ccbc86edc23a5b5e223">Close</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala__udf_1_1FunctionContext.html#a1e9662a1bbb78daa9923b47412347ffc">FunctionContext::FunctionStateScope</a> scope=FunctionContext::FRAGMENT_LOCAL)</td></tr> |
| <tr class="memdesc:a6842f44cb3b73ccbc86edc23a5b5e223"><td class="mdescLeft"> </td><td class="mdescRight">Subclasses overriding this function should call <a class="el" href="classimpala_1_1Expr.html#a70300b0ba7c91fddb9adfaeb0dfc09a5" title="Convenience function for closing multiple expr trees. ">Expr::Close()</a>. <a href="#a6842f44cb3b73ccbc86edc23a5b5e223">More...</a><br/></td></tr> |
| <tr class="separator:a6842f44cb3b73ccbc86edc23a5b5e223"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ace97c478e9b659f3fcd20d38cf67bc05"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#ace97c478e9b659f3fcd20d38cf67bc05">RegisterFunctionContext</a> (<a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *ctx, <a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state, int varargs_buffer_size=0)</td></tr> |
| <tr class="separator:ace97c478e9b659f3fcd20d38cf67bc05"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:af3e45d82c48ae9711ae980c414db414e"><td class="memItemLeft" align="right" valign="top">llvm::Function * </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#af3e45d82c48ae9711ae980c414db414e">CreateIrFunctionPrototype</a> (<a class="el" href="classimpala_1_1LlvmCodeGen.html">LlvmCodeGen</a> *codegen, const std::string &<a class="el" href="namespaceimpala.html#aaebb9aadfa9e5aec064bc26565df06d3">name</a>, llvm::Value *(*args)[2])</td></tr> |
| <tr class="separator:af3e45d82c48ae9711ae980c414db414e"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ac6fe3332793fe61ef3566f87b4e34744"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classimpala_1_1Status.html">Status</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#ac6fe3332793fe61ef3566f87b4e34744">GetCodegendComputeFnWrapper</a> (<a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> *state, llvm::Function **fn)</td></tr> |
| <tr class="separator:ac6fe3332793fe61ef3566f87b4e34744"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:adc26ca9c44c3caaff2cd7d7e4f66752e"><td class="memItemLeft" align="right" valign="top">llvm::Function * </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#adc26ca9c44c3caaff2cd7d7e4f66752e">GetStaticGetValWrapper</a> (<a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> <a class="el" href="classimpala_1_1Expr.html#a742827844080d45d514719742cb3e7f5">type</a>, <a class="el" href="classimpala_1_1LlvmCodeGen.html">LlvmCodeGen</a> *codegen)</td></tr> |
| <tr class="separator:adc26ca9c44c3caaff2cd7d7e4f66752e"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a4e94656d87498fce476dc90e260568fe"><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a4e94656d87498fce476dc90e260568fe">DebugString</a> (const std::string &expr_name) const </td></tr> |
| <tr class="memdesc:a4e94656d87498fce476dc90e260568fe"><td class="mdescLeft"> </td><td class="mdescRight">Simple debug string that provides no expr subclass-specific information. <a href="#a4e94656d87498fce476dc90e260568fe">More...</a><br/></td></tr> |
| <tr class="separator:a4e94656d87498fce476dc90e260568fe"><td class="memSeparator" colspan="2"> </td></tr> |
| </table><table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a> |
| Protected Attributes</h2></td></tr> |
| <tr class="memitem:aee18bd1a0006e802df30b9c960d36cb3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structLibCache_1_1LibCacheEntry.html">LibCache::LibCacheEntry</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#aee18bd1a0006e802df30b9c960d36cb3">cache_entry_</a></td></tr> |
| <tr class="memdesc:aee18bd1a0006e802df30b9c960d36cb3"><td class="mdescLeft"> </td><td class="mdescRight">Cache entry for the library implementing this function. <a href="#aee18bd1a0006e802df30b9c960d36cb3">More...</a><br/></td></tr> |
| <tr class="separator:aee18bd1a0006e802df30b9c960d36cb3"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a51d9f91210952a0ae23dcbbdc2700dcc"><td class="memItemLeft" align="right" valign="top">TFunction </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a51d9f91210952a0ae23dcbbdc2700dcc">fn_</a></td></tr> |
| <tr class="memdesc:a51d9f91210952a0ae23dcbbdc2700dcc"><td class="mdescLeft"> </td><td class="mdescRight">Function description. <a href="#a51d9f91210952a0ae23dcbbdc2700dcc">More...</a><br/></td></tr> |
| <tr class="separator:a51d9f91210952a0ae23dcbbdc2700dcc"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:af9b41baf7878f4ec552ae68cb3a60be0"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classbool.html">bool</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#af9b41baf7878f4ec552ae68cb3a60be0">is_slotref_</a></td></tr> |
| <tr class="memdesc:af9b41baf7878f4ec552ae68cb3a60be0"><td class="mdescLeft"> </td><td class="mdescRight">recognize if this node is a slotref in order to speed up GetValue() <a href="#af9b41baf7878f4ec552ae68cb3a60be0">More...</a><br/></td></tr> |
| <tr class="separator:af9b41baf7878f4ec552ae68cb3a60be0"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a704e9ee9339f503f27b0af463f6c97cf"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a704e9ee9339f503f27b0af463f6c97cf">type_</a></td></tr> |
| <tr class="memdesc:a704e9ee9339f503f27b0af463f6c97cf"><td class="mdescLeft"> </td><td class="mdescRight">analysis is done, types are fixed at this point <a href="#a704e9ee9339f503f27b0af463f6c97cf">More...</a><br/></td></tr> |
| <tr class="separator:a704e9ee9339f503f27b0af463f6c97cf"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a84e7e99daf641ad9ee2881bb673f62a3"><td class="memItemLeft" align="right" valign="top">std::vector< <a class="el" href="classimpala_1_1Expr.html">Expr</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a84e7e99daf641ad9ee2881bb673f62a3">children_</a></td></tr> |
| <tr class="separator:a84e7e99daf641ad9ee2881bb673f62a3"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a58166a4b77bf9f3834c5380630496a17"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a58166a4b77bf9f3834c5380630496a17">output_scale_</a></td></tr> |
| <tr class="separator:a58166a4b77bf9f3834c5380630496a17"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a0e97382f249d8a076454dca5eedc441b"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a0e97382f249d8a076454dca5eedc441b">context_index_</a></td></tr> |
| <tr class="separator:a0e97382f249d8a076454dca5eedc441b"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ac1b323bdf9af6616080d30d4fbabc6fc"><td class="memItemLeft" align="right" valign="top">llvm::Function * </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#ac1b323bdf9af6616080d30d4fbabc6fc">ir_compute_fn_</a></td></tr> |
| <tr class="memdesc:ac1b323bdf9af6616080d30d4fbabc6fc"><td class="mdescLeft"> </td><td class="mdescRight">Cached codegened compute function. Exprs should set this in <a class="el" href="classimpala_1_1Expr.html#a3f3fde78dfcf00d2d68bc93d52ef8b11">GetCodegendComputeFn()</a>. <a href="#ac1b323bdf9af6616080d30d4fbabc6fc">More...</a><br/></td></tr> |
| <tr class="separator:ac1b323bdf9af6616080d30d4fbabc6fc"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:aed93f651b667662d8f359de18cd883a6"><td class="memItemLeft" align="right" valign="top">boost::scoped_ptr< <a class="el" href="structimpala__udf_1_1AnyVal.html">AnyVal</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#aed93f651b667662d8f359de18cd883a6">constant_val_</a></td></tr> |
| <tr class="separator:aed93f651b667662d8f359de18cd883a6"><td class="memSeparator" colspan="2"> </td></tr> |
| </table><table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-static-methods"></a> |
| Static Private Member Functions</h2></td></tr> |
| <tr class="memitem:ae7def905b3ea4b6ef657dde861a09bf7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classimpala_1_1Status.html">Status</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#ae7def905b3ea4b6ef657dde861a09bf7">CreateExpr</a> (<a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *<a class="el" href="expr-benchmark_8cc.html#a3a5de7bd423fbc0afc4cf935c166ca6b">pool</a>, const TExprNode &texpr_node, <a class="el" href="classimpala_1_1Expr.html">Expr</a> **expr)</td></tr> |
| <tr class="memdesc:ae7def905b3ea4b6ef657dde861a09bf7"><td class="mdescLeft"> </td><td class="mdescRight">Create a new <a class="el" href="classimpala_1_1Expr.html" title="This is the superclass of all expr evaluation nodes. ">Expr</a> based on texpr_node.node_type within 'pool'. <a href="#ae7def905b3ea4b6ef657dde861a09bf7">More...</a><br/></td></tr> |
| <tr class="separator:ae7def905b3ea4b6ef657dde861a09bf7"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a12b5f3d4341d4ef51ae25179ccdcc6d4"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classimpala_1_1Status.html">Status</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a12b5f3d4341d4ef51ae25179ccdcc6d4">CreateTreeFromThrift</a> (<a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> *<a class="el" href="expr-benchmark_8cc.html#a3a5de7bd423fbc0afc4cf935c166ca6b">pool</a>, const std::vector< TExprNode > &nodes, <a class="el" href="classimpala_1_1Expr.html">Expr</a> *parent, int *node_idx, <a class="el" href="classimpala_1_1Expr.html">Expr</a> **root_expr, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> **ctx)</td></tr> |
| <tr class="separator:a12b5f3d4341d4ef51ae25179ccdcc6d4"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ac80245121249331353189cc6f3a5714e"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1BooleanVal.html">BooleanVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#ac80245121249331353189cc6f3a5714e">GetBooleanVal</a> (<a class="el" href="classimpala_1_1Expr.html">Expr</a> *expr, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *row)</td></tr> |
| <tr class="separator:ac80245121249331353189cc6f3a5714e"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a1dca0be966acf3c688b0db85e2bfe849"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1TinyIntVal.html">TinyIntVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a1dca0be966acf3c688b0db85e2bfe849">GetTinyIntVal</a> (<a class="el" href="classimpala_1_1Expr.html">Expr</a> *expr, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *row)</td></tr> |
| <tr class="separator:a1dca0be966acf3c688b0db85e2bfe849"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a2219eee265df1f361f47a9f45519462a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1SmallIntVal.html">SmallIntVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a2219eee265df1f361f47a9f45519462a">GetSmallIntVal</a> (<a class="el" href="classimpala_1_1Expr.html">Expr</a> *expr, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *row)</td></tr> |
| <tr class="separator:a2219eee265df1f361f47a9f45519462a"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:adbe8f67f4775080f04dd6f0c0ffa78b3"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1IntVal.html">IntVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#adbe8f67f4775080f04dd6f0c0ffa78b3">GetIntVal</a> (<a class="el" href="classimpala_1_1Expr.html">Expr</a> *expr, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *row)</td></tr> |
| <tr class="separator:adbe8f67f4775080f04dd6f0c0ffa78b3"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a70d35a8b8bc8b31e5d7d35d7d57792e4"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1BigIntVal.html">BigIntVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a70d35a8b8bc8b31e5d7d35d7d57792e4">GetBigIntVal</a> (<a class="el" href="classimpala_1_1Expr.html">Expr</a> *expr, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *row)</td></tr> |
| <tr class="separator:a70d35a8b8bc8b31e5d7d35d7d57792e4"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a48866aea6bfd58cf76e7602576920ac9"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1FloatVal.html">FloatVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a48866aea6bfd58cf76e7602576920ac9">GetFloatVal</a> (<a class="el" href="classimpala_1_1Expr.html">Expr</a> *expr, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *row)</td></tr> |
| <tr class="separator:a48866aea6bfd58cf76e7602576920ac9"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:afb4d0d8cd79c89431cd4d54aab72105a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DoubleVal.html">DoubleVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#afb4d0d8cd79c89431cd4d54aab72105a">GetDoubleVal</a> (<a class="el" href="classimpala_1_1Expr.html">Expr</a> *expr, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *row)</td></tr> |
| <tr class="separator:afb4d0d8cd79c89431cd4d54aab72105a"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a9274fa3d9adc7d944f976452e65fd8d8"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1StringVal.html">StringVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a9274fa3d9adc7d944f976452e65fd8d8">GetStringVal</a> (<a class="el" href="classimpala_1_1Expr.html">Expr</a> *expr, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *row)</td></tr> |
| <tr class="separator:a9274fa3d9adc7d944f976452e65fd8d8"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a4ed4e1f1dc177d5ac81019d3541d55cb"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1TimestampVal.html">TimestampVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a4ed4e1f1dc177d5ac81019d3541d55cb">GetTimestampVal</a> (<a class="el" href="classimpala_1_1Expr.html">Expr</a> *expr, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *row)</td></tr> |
| <tr class="separator:a4ed4e1f1dc177d5ac81019d3541d55cb"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a1b959ba36f6d6b2e6e2498b88873d9ff"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a1b959ba36f6d6b2e6e2498b88873d9ff">GetDecimalVal</a> (<a class="el" href="classimpala_1_1Expr.html">Expr</a> *expr, <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> *context, <a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> *row)</td></tr> |
| <tr class="separator:a1b959ba36f6d6b2e6e2498b88873d9ff"><td class="memSeparator" colspan="2"> </td></tr> |
| </table><table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a> |
| Friends</h2></td></tr> |
| <tr class="memitem:a37fc17d21d749d19dfca54d6d65c274f"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a37fc17d21d749d19dfca54d6d65c274f">AggFnEvaluator</a></td></tr> |
| <tr class="separator:a37fc17d21d749d19dfca54d6d65c274f"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:aad7c34605bed5b41b6e8ec5d3d3344b4"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#aad7c34605bed5b41b6e8ec5d3d3344b4">CastExpr</a></td></tr> |
| <tr class="separator:aad7c34605bed5b41b6e8ec5d3d3344b4"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:aff05dfe23006b20bafb95428d4d53cb1"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#aff05dfe23006b20bafb95428d4d53cb1">ComputeFunctions</a></td></tr> |
| <tr class="separator:aff05dfe23006b20bafb95428d4d53cb1"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:abe0ecc83b76e15d2d92e725177e8cbc2"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#abe0ecc83b76e15d2d92e725177e8cbc2">DecimalFunctions</a></td></tr> |
| <tr class="separator:abe0ecc83b76e15d2d92e725177e8cbc2"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a5acf0dc00f32434d769cd145b8d1c9c6"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a5acf0dc00f32434d769cd145b8d1c9c6">DecimalLliteral</a></td></tr> |
| <tr class="separator:a5acf0dc00f32434d769cd145b8d1c9c6"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a32d150f11f71a9c1a8c53c9d0290ca0f"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a32d150f11f71a9c1a8c53c9d0290ca0f">DecimalOperators</a></td></tr> |
| <tr class="separator:a32d150f11f71a9c1a8c53c9d0290ca0f"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ac019d0804e593ce92462faa863dfbc8b"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#ac019d0804e593ce92462faa863dfbc8b">MathFunctions</a></td></tr> |
| <tr class="separator:ac019d0804e593ce92462faa863dfbc8b"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a54fa8120fe4a0c1abd65d614bd37ca0e"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a54fa8120fe4a0c1abd65d614bd37ca0e">StringFunctions</a></td></tr> |
| <tr class="separator:a54fa8120fe4a0c1abd65d614bd37ca0e"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a03e3ce83edb99a9f3db933a8a26963b0"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a03e3ce83edb99a9f3db933a8a26963b0">TimestampFunctions</a></td></tr> |
| <tr class="separator:a03e3ce83edb99a9f3db933a8a26963b0"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a0718e954b115820b55fd631071ecfe45"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a0718e954b115820b55fd631071ecfe45">ConditionalFunctions</a></td></tr> |
| <tr class="separator:a0718e954b115820b55fd631071ecfe45"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a23960ae4159fed8f076959b3e87ac552"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a23960ae4159fed8f076959b3e87ac552">UtilityFunctions</a></td></tr> |
| <tr class="separator:a23960ae4159fed8f076959b3e87ac552"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a657cd463df400dd076339af8acd65c5a"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a657cd463df400dd076339af8acd65c5a">CaseExpr</a></td></tr> |
| <tr class="separator:a657cd463df400dd076339af8acd65c5a"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a9dd02112f55bf1e2b351c7c537e56a7b"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a9dd02112f55bf1e2b351c7c537e56a7b">InPredicate</a></td></tr> |
| <tr class="separator:a9dd02112f55bf1e2b351c7c537e56a7b"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a691c02af266968b91e2e985f0974621d"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a691c02af266968b91e2e985f0974621d">FunctionCall</a></td></tr> |
| <tr class="separator:a691c02af266968b91e2e985f0974621d"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a0c56d835d5fc23e983bd00ce38c8d616"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#a0c56d835d5fc23e983bd00ce38c8d616">ScalarFnCall</a></td></tr> |
| <tr class="separator:a0c56d835d5fc23e983bd00ce38c8d616"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ac68b62ae01e55e0a7b93b60c1c19b2c9"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#ac68b62ae01e55e0a7b93b60c1c19b2c9">ExprContext</a></td></tr> |
| <tr class="separator:ac68b62ae01e55e0a7b93b60c1c19b2c9"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ad40cbb0ba6bf38aa2db1e37a43f6acc2"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1Expr.html#ad40cbb0ba6bf38aa2db1e37a43f6acc2">ExprTest</a></td></tr> |
| <tr class="separator:ad40cbb0ba6bf38aa2db1e37a43f6acc2"><td class="memSeparator" colspan="2"> </td></tr> |
| </table> |
| <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> |
| <div class="textblock"><p>This is the superclass of all expr evaluation nodes. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00116">116</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| </div><h2 class="groupheader">Constructor & Destructor Documentation</h2> |
| <a class="anchor" id="a6a4c8bf33ec8dc246be5126e39cbc734"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">Expr::~Expr </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00110">110</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8h_source.html#l00281">cache_entry_</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a042a0ce8fe153dc2a49729b6fa868b94"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">Expr::Expr </td> |
| <td>(</td> |
| <td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> & </td> |
| <td class="paramname"><em>type</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classbool.html">bool</a> </td> |
| <td class="paramname"><em>is_slotref</em> = <code>false</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00091">91</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="afdfd416fc13ad359531c28e74976c06f"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">Expr::Expr </td> |
| <td>(</td> |
| <td class="paramtype">const TExprNode & </td> |
| <td class="paramname"><em>node</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classbool.html">bool</a> </td> |
| <td class="paramname"><em>is_slotref</em> = <code>false</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00100">100</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8h_source.html#l00284">fn_</a>.</p> |
| |
| </div> |
| </div> |
| <h2 class="groupheader">Member Function Documentation</h2> |
| <a class="anchor" id="ae54f46c956cfe802556dffa3426550c2"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void impala::Expr::AddChild </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td> |
| <td class="paramname"><em>expr</em></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00141">141</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00160">CreateTreeFromThrift()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a9c703ec4c54d0f4fa6f3e33c41233f50"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">const std::vector<<a class="el" href="classimpala_1_1Expr.html">Expr</a>*>& impala::Expr::children </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00148">148</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="case-expr_8cc_source.html#l00290">impala::CaseExpr::GetChildVal()</a>, and <a class="el" href="case-expr_8cc_source.html#l00179">impala::CaseExpr::GetCodegendComputeFn()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a0704c1c17503f48ab89f0d05dc658a2d"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> Expr::Clone </td> |
| <td>(</td> |
| <td class="paramtype">const std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > & </td> |
| <td class="paramname"><em>ctxs</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> * </td> |
| <td class="paramname"><em>state</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > * </td> |
| <td class="paramname"><em>new_ctxs</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Clones each <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> for multiple expr trees. 'new_ctxs' should be an empty vector, and a clone of each context in 'ctxs' will be added to it. The new ExprContexts are created in state-><a class="el" href="namespaceimpala.html#a6bf80cb1d633d79570ccf617684439b1" title="Returns a local object pool. ">obj_pool()</a>. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00374">374</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, and <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>.</p> |
| |
| <p>Referenced by <a class="el" href="hdfs-scan-node_8cc_source.html#l00692">impala::HdfsScanNode::GetConjunctCtxs()</a>, and <a class="el" href="sort-exec-exprs_8cc_source.html#l00053">impala::SortExecExprs::Open()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a70300b0ba7c91fddb9adfaeb0dfc09a5"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static void impala::Expr::Close </td> |
| <td>(</td> |
| <td class="paramtype">const std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > & </td> |
| <td class="paramname"><em>ctxs</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> * </td> |
| <td class="paramname"><em>state</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Convenience function for closing multiple expr trees. </p> |
| |
| <p>Referenced by <a class="el" href="union-node_8cc_source.html#l00186">impala::UnionNode::Close()</a>, <a class="el" href="sort-exec-exprs_8cc_source.html#l00062">impala::SortExecExprs::Close()</a>, <a class="el" href="case-expr_8cc_source.html#l00070">impala::CaseExpr::Close()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00145">impala::HashJoinNode::Close()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00278">impala::AggregationNode::Close()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00198">impala::ScalarFnCall::Close()</a>, <a class="el" href="expr-context_8cc_source.html#l00067">impala::ExprContext::Close()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00232">impala::HiveUdfCall::Close()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00192">impala::PartitionedHashJoinNode::Close()</a>, <a class="el" href="data-stream-sender_8cc_source.html#l00450">impala::DataStreamSender::Close()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00380">impala::PartitionedAggregationNode::Close()</a>, <a class="el" href="agg-fn-evaluator_8cc_source.html#l00227">impala::AggFnEvaluator::Close()</a>, <a class="el" href="hdfs-scanner_8cc_source.html#l00082">impala::HdfsScanner::Close()</a>, <a class="el" href="exec-node_8cc_source.html#l00166">impala::ExecNode::Close()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00622">impala::HdfsScanNode::Close()</a>, <a class="el" href="hdfs-table-sink_8cc_source.html#l00602">impala::HdfsTableSink::Close()</a>, <a class="el" href="descriptors_8cc_source.html#l00151">impala::HdfsPartitionDescriptor::CloseExprs()</a>, <a class="el" href="query-exec-state_8cc_source.html#l00489">impala::ImpalaServer::QueryExecState::Done()</a>, <a class="el" href="old-hash-table-test_8cc_source.html#l00071">impala::OldHashTableTest::TearDown()</a>, and <a class="el" href="hash-table-test_8cc_source.html#l00071">impala::HashTableTest::TearDown()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a6842f44cb3b73ccbc86edc23a5b5e223"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void Expr::Close </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> * </td> |
| <td class="paramname"><em>state</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html#a1e9662a1bbb78daa9923b47412347ffc">FunctionContext::FunctionStateScope</a> </td> |
| <td class="paramname"><em>scope</em> = <code>FunctionContext::FRAGMENT_LOCAL</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Subclasses overriding this function should call <a class="el" href="classimpala_1_1Expr.html#a70300b0ba7c91fddb9adfaeb0dfc09a5" title="Convenience function for closing multiple expr trees. ">Expr::Close()</a>. </p> |
| <p>If scope if FRAGMENT_LOCAL, both fragment- and thread-local state should be torn down. Otherwise, if scope is THREAD_LOCAL, only thread-local state should be torn down. </p> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1HiveUdfCall.html#a7f383ec898db11eef3dbd83aad1d63b5">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#a0fc584c43f8a682c3ce79afa0ffa11f9">impala::ScalarFnCall</a>, and <a class="el" href="classimpala_1_1CaseExpr.html#a05a522b5a62a2d42a9a94c81123afcaa">impala::CaseExpr</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00114">114</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8h_source.html#l00281">cache_entry_</a>, <a class="el" href="expr_8h_source.html#l00290">children_</a>, <a class="el" href="lib-cache_8cc_source.html#l00170">impala::LibCache::DecrementUseCount()</a>, and <a class="el" href="lib-cache_8h_source.html#l00063">impala::LibCache::instance()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a153fedc59ca9f5b5cf350b815381b999"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static int impala::Expr::ComputeResultsLayout </td> |
| <td>(</td> |
| <td class="paramtype">const std::vector< <a class="el" href="classimpala_1_1Expr.html">Expr</a> * > & </td> |
| <td class="paramname"><em>exprs</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">std::vector< int > * </td> |
| <td class="paramname"><em>offsets</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">int * </td> |
| <td class="paramname"><em>var_result_begin</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Computes a memory efficient layout for storing the results of evaluating 'exprs' Returns the number of bytes necessary to store all the results and offsets where the result for each expr should be stored. Variable length types are guaranteed to be at the end and 'var_result_begin' will be set the beginning byte offset where variable length results begin. 'var_result_begin' will be set to -1 if there are no variable len types. </p> |
| |
| <p>Referenced by <a class="el" href="hash-table_8cc_source.html#l00083">impala::HashTableCtx::HashTableCtx()</a>, and <a class="el" href="old-hash-table_8cc_source.html#l00054">impala::OldHashTable::OldHashTable()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a7d61d761811ce034ea129158fd5436dc"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static int impala::Expr::ComputeResultsLayout </td> |
| <td>(</td> |
| <td class="paramtype">const std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > & </td> |
| <td class="paramname"><em>ctxs</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">std::vector< int > * </td> |
| <td class="paramname"><em>offsets</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">int * </td> |
| <td class="paramname"><em>var_result_begin</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| </div> |
| </div> |
| <a class="anchor" id="ae7def905b3ea4b6ef657dde861a09bf7"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> Expr::CreateExpr </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> * </td> |
| <td class="paramname"><em>pool</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const TExprNode & </td> |
| <td class="paramname"><em>texpr_node</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> ** </td> |
| <td class="paramname"><em>expr</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Create a new <a class="el" href="classimpala_1_1Expr.html" title="This is the superclass of all expr evaluation nodes. ">Expr</a> based on texpr_node.node_type within 'pool'. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00190">190</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="object-pool_8h_source.html#l00042">impala::ObjectPool::Add()</a>, <a class="el" href="expr_8h_source.html#l00246">CaseExpr</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, and <a class="el" href="expr_8h_source.html#l00249">ScalarFnCall</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00160">CreateTreeFromThrift()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a7dcd872be8cd8e5969a428cf940eea3b"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> Expr::CreateExprTree </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> * </td> |
| <td class="paramname"><em>pool</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const TExpr & </td> |
| <td class="paramname"><em>texpr</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> ** </td> |
| <td class="paramname"><em>ctx</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Create expression tree from the list of nodes contained in texpr within 'pool'. Returns the root of expression tree in 'expr' and the corresponding <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> in 'ctx'. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00129">129</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00160">CreateTreeFromThrift()</a>, <a class="el" href="status_8cc_source.html#l00184">impala::Status::GetDetail()</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, and <a class="el" href="status_8h_source.html#l00172">impala::Status::ok()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00149">CreateExprTrees()</a>, <a class="el" href="descriptors_8cc_source.html#l00109">impala::HdfsPartitionDescriptor::HdfsPartitionDescriptor()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00062">impala::HashJoinNode::Init()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00094">impala::AnalyticEvalNode::Init()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00066">impala::PartitionedHashJoinNode::Init()</a>, and <a class="el" href="fe-support_8cc_source.html#l00072">Java_com_cloudera_impala_service_FeSupport_NativeEvalConstExprs()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a6b9c01a432ae49b57482c9fc42a73681"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> Expr::CreateExprTrees </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> * </td> |
| <td class="paramname"><em>pool</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const std::vector< TExpr > & </td> |
| <td class="paramname"><em>texprs</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > * </td> |
| <td class="paramname"><em>ctxs</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Creates vector of ExprContexts containing exprs from the given vector of TExprs within 'pool'. Returns an error if any of the individual conversions caused an error, otherwise OK. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00149">149</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00129">CreateExprTree()</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, and <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>.</p> |
| |
| <p>Referenced by <a class="el" href="data-stream-sender_8cc_source.html#l00310">impala::DataStreamSender::DataStreamSender()</a>, <a class="el" href="union-node_8cc_source.html#l00038">impala::UnionNode::Init()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00062">impala::HashJoinNode::Init()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00072">impala::AggregationNode::Init()</a>, <a class="el" href="exec-node_8cc_source.html#l00124">impala::ExecNode::Init()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00066">impala::PartitionedHashJoinNode::Init()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00082">impala::PartitionedAggregationNode::Init()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00304">impala::HdfsScanNode::Prepare()</a>, and <a class="el" href="hdfs-table-sink_8cc_source.html#l00107">impala::HdfsTableSink::Prepare()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="af3e45d82c48ae9711ae980c414db414e"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">Function * Expr::CreateIrFunctionPrototype </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1LlvmCodeGen.html">LlvmCodeGen</a> * </td> |
| <td class="paramname"><em>codegen</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const std::string & </td> |
| <td class="paramname"><em>name</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">llvm::Value *(*) </td> |
| <td class="paramname"><em>args</em>[2] </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Helper function to create an empty Function* with the appropriate signature to be returned by <a class="el" href="classimpala_1_1Expr.html#a3f3fde78dfcf00d2d68bc93d52ef8b11">GetCodegendComputeFn()</a>. 'name' is the name of the returned Function*. The arguments to the function are returned in 'args'. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00456">456</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="llvm-codegen_8h_source.html#l00171">impala::LlvmCodeGen::FnPrototype::AddArgument()</a>, <a class="el" href="llvm-codegen_8cc_source.html#l00460">impala::LlvmCodeGen::FnPrototype::GeneratePrototype()</a>, <a class="el" href="codegen-anyval_8cc_source.html#l00034">impala::CodegenAnyVal::GetLoweredType()</a>, <a class="el" href="classimpala_1_1LlvmCodeGen.html#a5766c2be69b2d39dbcdbbd5669ab3310">impala::LlvmCodeGen::GetPtrType()</a>, <a class="el" href="tuple-row_8h_source.html#l00076">impala::TupleRow::LLVM_CLASS_NAME</a>, <a class="el" href="expr-context_8h_source.html#l00126">impala::ExprContext::LLVM_CLASS_NAME</a>, and <a class="el" href="expr_8h_source.html#l00145">type()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="case-expr_8cc_source.html#l00179">impala::CaseExpr::GetCodegendComputeFn()</a>, <a class="el" href="slot-ref_8cc_source.html#l00155">impala::SlotRef::GetCodegendComputeFn()</a>, <a class="el" href="literal_8cc_source.html#l00356">impala::Literal::GetCodegendComputeFn()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00243">impala::ScalarFnCall::GetCodegendComputeFn()</a>, and <a class="el" href="expr_8cc_source.html#l00546">GetCodegendComputeFnWrapper()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="af6d0f18b68cd71bd9f2c208163117529"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static <a class="el" href="classimpala_1_1Expr.html">Expr</a>* impala::Expr::CreateLiteral </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> * </td> |
| <td class="paramname"><em>pool</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> & </td> |
| <td class="paramname"><em>type</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">void * </td> |
| <td class="paramname"><em>data</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Create a new literal expr of 'type' with initial 'data'. data should match the <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> (i.e. type == TYPE_INT, data is a int*) The new <a class="el" href="classimpala_1_1Expr.html" title="This is the superclass of all expr evaluation nodes. ">Expr</a> will be allocated from the pool. </p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="adb64080075f454d596f0022d82642ab7"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static <a class="el" href="classimpala_1_1Expr.html">Expr</a>* impala::Expr::CreateLiteral </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> * </td> |
| <td class="paramname"><em>pool</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> & </td> |
| <td class="paramname"><em>type</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const std::string & </td> |
| <td class="paramname"> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Create a new literal expr of 'type' by parsing the string. NULL will be returned if the string and type are not compatible. The new <a class="el" href="classimpala_1_1Expr.html" title="This is the superclass of all expr evaluation nodes. ">Expr</a> will be allocated from the pool. </p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a12b5f3d4341d4ef51ae25179ccdcc6d4"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> Expr::CreateTreeFromThrift </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ObjectPool.html">ObjectPool</a> * </td> |
| <td class="paramname"><em>pool</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const std::vector< TExprNode > & </td> |
| <td class="paramname"><em>nodes</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td> |
| <td class="paramname"><em>parent</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">int * </td> |
| <td class="paramname"><em>node_idx</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> ** </td> |
| <td class="paramname"><em>root_expr</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> ** </td> |
| <td class="paramname"><em>ctx</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Creates an expr tree for the node rooted at 'node_idx' via depth-first traversal. parameters nodes: vector of thrift expression nodes to be translated parent: parent of node at node_idx (or NULL for node_idx == 0) node_idx: in: root of TExprNode tree out: next node in 'nodes' that isn't part of tree root_expr: out: root of constructed expr tree ctx: out: context of constructed expr tree return status.ok() if successful !status.ok() if tree is inconsistent or corrupt </p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00160">160</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="object-pool_8h_source.html#l00042">impala::ObjectPool::Add()</a>, <a class="el" href="expr_8h_source.html#l00141">AddChild()</a>, <a class="el" href="expr_8cc_source.html#l00190">CreateExpr()</a>, <a class="el" href="expr_8h_source.html#l00339">ExprContext</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, and <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>.</p> |
| |
| <p>Referenced by <a class="el" href="agg-fn-evaluator_8cc_source.html#l00069">impala::AggFnEvaluator::Create()</a>, and <a class="el" href="expr_8cc_source.html#l00129">CreateExprTree()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="ab8ae88546f4ce923b4d187e0d7d96fa8"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">string Expr::DebugString </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1CoalesceExpr.html#ade07af6c6e9576521aa6f040ce5c046d">impala::CoalesceExpr</a>, <a class="el" href="classimpala_1_1IfExpr.html#a94149f6af12097e50752ad177bb7e367">impala::IfExpr</a>, <a class="el" href="classimpala_1_1NullIfExpr.html#a1fec36980b64b2548bc2e8648ecb7e1e">impala::NullIfExpr</a>, <a class="el" href="classimpala_1_1HiveUdfCall.html#a70fb71a0aa3ff1b6fcdcc91e33ee073f">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1IsNullExpr.html#a6025d39943a0215a1139760ea91ae39b">impala::IsNullExpr</a>, <a class="el" href="classimpala_1_1OrPredicate.html#a94182583dddc4f4219449142bddfbc59">impala::OrPredicate</a>, <a class="el" href="classimpala_1_1Literal.html#a64ce8375832f5fe660c0e865fe0a03e2">impala::Literal</a>, <a class="el" href="classimpala_1_1CaseExpr.html#a160f156117f635e84640ca71781c215a">impala::CaseExpr</a>, <a class="el" href="classimpala_1_1AndPredicate.html#a19242c96ec6f660c4678fda76281a76f">impala::AndPredicate</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#a2218734e3e79177c1ed0d72ce6e9d3f8">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1NullLiteral.html#a2ec4efdf79ddebd763576fcb21e76739">impala::NullLiteral</a>, <a class="el" href="classimpala_1_1TupleIsNullPredicate.html#a865ad68f60f1ab8d12456a7321b91b88">impala::TupleIsNullPredicate</a>, and <a class="el" href="classimpala_1_1SlotRef.html#a26cf6f37a38afbfc641c38e327ef36c1">impala::SlotRef</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00385">385</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8h_source.html#l00290">children_</a>, <a class="el" href="types_8cc_source.html#l00194">impala::ColumnType::DebugString()</a>, and <a class="el" href="expr_8h_source.html#l00289">type_</a>.</p> |
| |
| <p>Referenced by <a class="el" href="hash-join-node_8cc_source.html#l00424">impala::HashJoinNode::AddToDebugString()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l01285">impala::PartitionedHashJoinNode::AddToDebugString()</a>, <a class="el" href="slot-ref_8cc_source.html#l00104">impala::SlotRef::DebugString()</a>, <a class="el" href="sort-node_8cc_source.html#l00130">impala::SortNode::DebugString()</a>, <a class="el" href="topn-node_8cc_source.html#l00184">impala::TopNNode::DebugString()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00733">impala::ScalarFnCall::DebugString()</a>, <a class="el" href="case-expr_8cc_source.html#l00080">impala::CaseExpr::DebugString()</a>, <a class="el" href="literal_8cc_source.html#l00300">impala::Literal::DebugString()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00401">impala::AggregationNode::DebugString()</a>, <a class="el" href="analytic-eval-node_8cc_source.html#l00766">impala::AnalyticEvalNode::DebugString()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00275">impala::HiveUdfCall::DebugString()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00716">impala::PartitionedAggregationNode::DebugString()</a>, <a class="el" href="hdfs-table-sink_8cc_source.html#l00643">impala::HdfsTableSink::DebugString()</a>, <a class="el" href="expr_8cc_source.html#l00589">GetBigIntVal()</a>, <a class="el" href="expr_8cc_source.html#l00573">GetBooleanVal()</a>, <a class="el" href="expr_8cc_source.html#l00609">GetDecimalVal()</a>, <a class="el" href="expr_8cc_source.html#l00597">GetDoubleVal()</a>, <a class="el" href="expr_8cc_source.html#l00593">GetFloatVal()</a>, <a class="el" href="expr_8cc_source.html#l00585">GetIntVal()</a>, <a class="el" href="expr_8cc_source.html#l00581">GetSmallIntVal()</a>, <a class="el" href="expr_8cc_source.html#l00601">GetStringVal()</a>, <a class="el" href="expr_8cc_source.html#l00605">GetTimestampVal()</a>, and <a class="el" href="expr_8cc_source.html#l00577">GetTinyIntVal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a8add6d9e3cb760f6e76a7ec032085da9"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static std::string impala::Expr::DebugString </td> |
| <td>(</td> |
| <td class="paramtype">const std::vector< <a class="el" href="classimpala_1_1Expr.html">Expr</a> * > & </td> |
| <td class="paramname"><em>exprs</em></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a594418cfe74439ae4fb337ca910f78bc"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static std::string impala::Expr::DebugString </td> |
| <td>(</td> |
| <td class="paramtype">const std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > & </td> |
| <td class="paramname"><em>ctxs</em></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a4e94656d87498fce476dc90e260568fe"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">std::string impala::Expr::DebugString </td> |
| <td>(</td> |
| <td class="paramtype">const std::string & </td> |
| <td class="paramname"><em>expr_name</em></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Simple debug string that provides no expr subclass-specific information. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00332">332</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>References <a class="el" href="udf-debug_8h_source.html#l00027">impala_udf::DebugString()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="abcfd8c3c50142f4b03ebea0a4589530f"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1BigIntVal.html">BigIntVal</a> Expr::GetBigIntVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1CoalesceExpr.html#a66a0a2f811c3831d7df0975b9e8e9e7d">impala::CoalesceExpr</a>, <a class="el" href="classimpala_1_1IfExpr.html#a761049a74e04ba5b523d1b1cda45fced">impala::IfExpr</a>, <a class="el" href="classimpala_1_1NullIfExpr.html#a53940543102832b1c1a37a264c02220a">impala::NullIfExpr</a>, <a class="el" href="classimpala_1_1HiveUdfCall.html#a353454927250b76e4029410b1dc33e55">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#a67eed1f417545746ce77f739327bcff0">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1IsNullExpr.html#a03fd1d94a735814ebe30d104b91a0c05">impala::IsNullExpr</a>, <a class="el" href="classimpala_1_1Literal.html#a3292c02316967ed8348037e674a1ce38">impala::Literal</a>, <a class="el" href="classimpala_1_1SlotRef.html#a497ac862be4c304b9ac46e6b533d7347">impala::SlotRef</a>, <a class="el" href="classimpala_1_1CaseExpr.html#aaf14862092d90a05fc3bf1a1bc018804">impala::CaseExpr</a>, and <a class="el" href="classimpala_1_1NullLiteral.html#afa68026403ae11dff6e8723aaac5fa39">impala::NullLiteral</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00589">589</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00385">DebugString()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr-context_8cc_source.html#l00322">impala::ExprContext::GetBigIntVal()</a>, <a class="el" href="expr-ir_8cc_source.html#l00054">GetBigIntVal()</a>, <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, and <a class="el" href="expr-context_8cc_source.html#l00204">impala::ExprContext::GetValue()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a70d35a8b8bc8b31e5d7d35d7d57792e4"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1BigIntVal.html">BigIntVal</a> Expr::GetBigIntVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td> |
| <td class="paramname"><em>expr</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr-ir_8cc_source.html#l00054">54</a> of file <a class="el" href="expr-ir_8cc_source.html">expr-ir.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00589">GetBigIntVal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a89a9dd55e95db53685a7bb6dfd4a8dbb"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1BooleanVal.html">BooleanVal</a> Expr::GetBooleanVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Virtual compute functions for each *Val type. Each <a class="el" href="classimpala_1_1Expr.html" title="This is the superclass of all expr evaluation nodes. ">Expr</a> subclass should implement the functions for the return type(s) it supports. For example, a boolean function will only implement <a class="el" href="classimpala_1_1Expr.html#a89a9dd55e95db53685a7bb6dfd4a8dbb">GetBooleanVal()</a>. Some Exprs, like <a class="el" href="classimpala_1_1Literal.html">Literal</a>, have many possible return types and will implement multiple Get*Val() functions. </p> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1CoalesceExpr.html#ac75b6d0ac2d8e28829f618b25cd78a11">impala::CoalesceExpr</a>, <a class="el" href="classimpala_1_1IfExpr.html#aad49d436a13893d66a0233b27864da80">impala::IfExpr</a>, <a class="el" href="classimpala_1_1NullIfExpr.html#a2322593e6300d5b8f2108ab89746e8fb">impala::NullIfExpr</a>, <a class="el" href="classimpala_1_1HiveUdfCall.html#a8ead24abe1d88d6fea692fc47203dd97">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#a49a6158b4ae61997167225db62e18792">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1OrPredicate.html#a908484df7c44cd6936a9cff58dd31a89">impala::OrPredicate</a>, <a class="el" href="classimpala_1_1IsNullExpr.html#a56595dba44986b6408fde5d57a702c33">impala::IsNullExpr</a>, <a class="el" href="classimpala_1_1Literal.html#ae89bb178ff45783c27b5a669525546f8">impala::Literal</a>, <a class="el" href="classimpala_1_1SlotRef.html#ac54ec7aa0ef1477acc683112c5fd9c0c">impala::SlotRef</a>, <a class="el" href="classimpala_1_1TupleIsNullPredicate.html#afb82763d9f9a0d58a9f4983cdd8387c6">impala::TupleIsNullPredicate</a>, <a class="el" href="classimpala_1_1AndPredicate.html#ab8665fb7549de1d1c6f624dd5125695e">impala::AndPredicate</a>, <a class="el" href="classimpala_1_1CaseExpr.html#aa88f58c4acc5f6e245fa32b016c7c169">impala::CaseExpr</a>, and <a class="el" href="classimpala_1_1NullLiteral.html#a40b4b8863951524e649457ddcd1efb28">impala::NullLiteral</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00573">573</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00385">DebugString()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr-context_8cc_source.html#l00310">impala::ExprContext::GetBooleanVal()</a>, <a class="el" href="expr-ir_8cc_source.html#l00042">GetBooleanVal()</a>, <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, and <a class="el" href="expr-context_8cc_source.html#l00204">impala::ExprContext::GetValue()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="ac80245121249331353189cc6f3a5714e"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1BooleanVal.html">BooleanVal</a> Expr::GetBooleanVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td> |
| <td class="paramname"><em>expr</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Static wrappers around the virtual Get*Val() functions. Calls the appropriate Get*Val() function on expr, passing it the context and row arguments. These are used to call Get*Val() functions from generated functions, since I don't know how to call virtual functions directly. <a class="el" href="classimpala_1_1Expr.html#adc26ca9c44c3caaff2cd7d7e4f66752e">GetStaticGetValWrapper()</a> returns the IR function of the appropriate wrapper function. </p> |
| |
| <p>Definition at line <a class="el" href="expr-ir_8cc_source.html#l00042">42</a> of file <a class="el" href="expr-ir_8cc_source.html">expr-ir.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00573">GetBooleanVal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a76778c36a9cf309813b1623e0328eedf"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classimpala_1_1Expr.html">Expr</a>* impala::Expr::GetChild </td> |
| <td>(</td> |
| <td class="paramtype">int </td> |
| <td class="paramname"><em>i</em></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00142">142</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="hive-udf-call_8cc_source.html#l00074">impala::HiveUdfCall::Evaluate()</a>, and <a class="el" href="hive-udf-call_8cc_source.html#l00153">impala::HiveUdfCall::Prepare()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a3f3fde78dfcf00d2d68bc93d52ef8b11"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">virtual <a class="el" href="classimpala_1_1Status.html">Status</a> impala::Expr::GetCodegendComputeFn </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> * </td> |
| <td class="paramname"><em>state</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">llvm::Function ** </td> |
| <td class="paramname"><em>fn</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">pure virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Returns an llvm::Function* with signature: <subclass of="" anyval>=""> ComputeFn(ExprContext* context, TupleRow* row) The function should evaluate this expr over 'row' and return the result as the appropriate type of AnyVal. </p> |
| |
| <p>Implemented in <a class="el" href="classimpala_1_1CoalesceExpr.html#a2f529662a6cdd19d2da649b884c59a1b">impala::CoalesceExpr</a>, <a class="el" href="classimpala_1_1IfExpr.html#a3f3a44245bb1eefa26a2ab8c5b9e1441">impala::IfExpr</a>, <a class="el" href="classimpala_1_1NullIfExpr.html#a88b759b464475f4c53ea04f041411498">impala::NullIfExpr</a>, <a class="el" href="classimpala_1_1HiveUdfCall.html#a0cd25e025ae68fb1ba572fb68d644efe">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1IsNullExpr.html#a5fb35422dc92f33e855862113f10a564">impala::IsNullExpr</a>, <a class="el" href="classimpala_1_1OrPredicate.html#ad5016c3882703bbfc768c571b3521dd6">impala::OrPredicate</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#a83e247b6fc6b1560e70e2f4f51d14d41">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1Literal.html#a134c218691e37d75ede064aa38bef795">impala::Literal</a>, <a class="el" href="classimpala_1_1AndPredicate.html#aa5ca3b02ce5f349c8b2c2b8ff964860a">impala::AndPredicate</a>, <a class="el" href="classimpala_1_1SlotRef.html#a10db878dd3f67c6a8544f804a403c12d">impala::SlotRef</a>, <a class="el" href="classimpala_1_1TupleIsNullPredicate.html#a4088ab151b126e1082359b5e20264339">impala::TupleIsNullPredicate</a>, <a class="el" href="classimpala_1_1CaseExpr.html#aba44ea3ba6c7d97df2b70e2954cfdabe">impala::CaseExpr</a>, and <a class="el" href="classimpala_1_1NullLiteral.html#a80614257938671a21f9c3b593596a19c">impala::NullLiteral</a>.</p> |
| |
| <p>Referenced by <a class="el" href="aggregation-node_8cc_source.html#l00506">impala::AggregationNode::CodegenUpdateSlot()</a>, and <a class="el" href="partitioned-aggregation-node_8cc_source.html#l01055">impala::PartitionedAggregationNode::CodegenUpdateSlot()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="ac6fe3332793fe61ef3566f87b4e34744"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> Expr::GetCodegendComputeFnWrapper </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> * </td> |
| <td class="paramname"><em>state</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">llvm::Function ** </td> |
| <td class="paramname"><em>fn</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Generates an IR compute function that calls the appropriate interpreted Get*Val() compute function. This is useful for builtins that can't be implemented with the UDF interface (e.g. functions that need short-circuiting) and that don't have custom codegen functions that use the IRBuilder. It doesn't provide any performance benefit over the interpreted path. TODO: this should be replaced with fancier xcompiling infrastructure </p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00546">546</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="llvm-codegen_8cc_source.html#l00366">impala::LlvmCodeGen::CastPtrToLlvmPtr()</a>, <a class="el" href="llvm-codegen_8h_source.html#l00214">impala::LlvmCodeGen::context()</a>, <a class="el" href="codegen-anyval_8cc_source.html#l00116">impala::CodegenAnyVal::CreateCall()</a>, <a class="el" href="expr_8cc_source.html#l00456">CreateIrFunctionPrototype()</a>, <a class="el" href="llvm-codegen_8cc_source.html#l00596">impala::LlvmCodeGen::FinalizeFunction()</a>, <a class="el" href="runtime-state_8cc_source.html#l00312">impala::RuntimeState::GetCodegen()</a>, <a class="el" href="classimpala_1_1LlvmCodeGen.html#a5766c2be69b2d39dbcdbbd5669ab3310">impala::LlvmCodeGen::GetPtrType()</a>, <a class="el" href="expr_8cc_source.html#l00426">GetStaticGetValWrapper()</a>, <a class="el" href="expr_8h_source.html#l00299">ir_compute_fn_</a>, <a class="el" href="expr_8h_source.html#l00232">LLVM_CLASS_NAME</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>, and <a class="el" href="expr_8h_source.html#l00145">type()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="tuple-is-null-predicate_8cc_source.html#l00060">impala::TupleIsNullPredicate::GetCodegendComputeFn()</a>, and <a class="el" href="hive-udf-call_8cc_source.html#l00271">impala::HiveUdfCall::GetCodegendComputeFn()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a28f2b59990e3a90b1858710ace748f5c"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1AnyVal.html">AnyVal</a> * Expr::GetConstVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>If this expr is constant, evaluates the expr with no input row argument and returns the output. Returns NULL if the argument is not constant. The returned AnyVal* is owned by this expr. This should only be called after <a class="el" href="classimpala_1_1Expr.html#aad1111f87951868de4d8f8b2dfe87c5f" title="Convenience function for opening multiple expr trees. ">Open()</a> has been called on this expr. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00491">491</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8h_source.html#l00303">constant_val_</a>, <a class="el" href="expr_8cc_source.html#l00589">GetBigIntVal()</a>, <a class="el" href="expr_8cc_source.html#l00573">GetBooleanVal()</a>, <a class="el" href="expr_8cc_source.html#l00609">GetDecimalVal()</a>, <a class="el" href="expr_8cc_source.html#l00597">GetDoubleVal()</a>, <a class="el" href="expr_8cc_source.html#l00593">GetFloatVal()</a>, <a class="el" href="expr_8cc_source.html#l00585">GetIntVal()</a>, <a class="el" href="expr_8cc_source.html#l00581">GetSmallIntVal()</a>, <a class="el" href="expr_8cc_source.html#l00601">GetStringVal()</a>, <a class="el" href="expr_8cc_source.html#l00605">GetTimestampVal()</a>, <a class="el" href="expr_8cc_source.html#l00577">GetTinyIntVal()</a>, <a class="el" href="expr_8cc_source.html#l00411">IsConstant()</a>, <a class="el" href="expr-context_8h_source.html#l00156">impala::ExprContext::opened_</a>, <a class="el" href="types_8h_source.html#l00060">impala::ColumnType::type</a>, <a class="el" href="expr_8h_source.html#l00145">type()</a>, <a class="el" href="expr_8h_source.html#l00289">type_</a>, <a class="el" href="types_8h_source.html#l00034">impala::TYPE_BIGINT</a>, <a class="el" href="types_8h_source.html#l00030">impala::TYPE_BOOLEAN</a>, <a class="el" href="types_8h_source.html#l00047">impala::TYPE_CHAR</a>, <a class="el" href="types_8h_source.html#l00042">impala::TYPE_DECIMAL</a>, <a class="el" href="types_8h_source.html#l00036">impala::TYPE_DOUBLE</a>, <a class="el" href="types_8h_source.html#l00035">impala::TYPE_FLOAT</a>, <a class="el" href="types_8h_source.html#l00033">impala::TYPE_INT</a>, <a class="el" href="types_8h_source.html#l00032">impala::TYPE_SMALLINT</a>, <a class="el" href="types_8h_source.html#l00038">impala::TYPE_STRING</a>, <a class="el" href="types_8h_source.html#l00037">impala::TYPE_TIMESTAMP</a>, <a class="el" href="types_8h_source.html#l00031">impala::TYPE_TINYINT</a>, and <a class="el" href="types_8h_source.html#l00048">impala::TYPE_VARCHAR</a>.</p> |
| |
| <p>Referenced by <a class="el" href="scalar-fn-call_8cc_source.html#l00148">impala::ScalarFnCall::Open()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a973505caac0fffab99e25ee73cd87ae2"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> Expr::GetDecimalVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1CoalesceExpr.html#a48c5b25fc82ce8564cffd8c644f56914">impala::CoalesceExpr</a>, <a class="el" href="classimpala_1_1IfExpr.html#a14590963220bd00159dfad3e3e7742ac">impala::IfExpr</a>, <a class="el" href="classimpala_1_1NullIfExpr.html#ab70e106b07b50f888044208274eaba31">impala::NullIfExpr</a>, <a class="el" href="classimpala_1_1HiveUdfCall.html#a98581ce4dfbe4939aeddc3e718d961f7">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#a749b5a1a8da3ea7f08b0db7a8e051cac">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1IsNullExpr.html#a4ca23bce47c7beeb989418af6dba288e">impala::IsNullExpr</a>, <a class="el" href="classimpala_1_1Literal.html#acca0ffbe51a99eaf2b89b0c3888fbdc8">impala::Literal</a>, <a class="el" href="classimpala_1_1SlotRef.html#a3f74847aa5f16dad5312b9f152a49f23">impala::SlotRef</a>, <a class="el" href="classimpala_1_1CaseExpr.html#a8622c39a71bf926a10dbe15680e7d818">impala::CaseExpr</a>, and <a class="el" href="classimpala_1_1NullLiteral.html#a5bbc97300a37ed5641e93e9bb162544a">impala::NullLiteral</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00609">609</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00385">DebugString()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, <a class="el" href="expr-context_8cc_source.html#l00337">impala::ExprContext::GetDecimalVal()</a>, <a class="el" href="expr-ir_8cc_source.html#l00069">GetDecimalVal()</a>, and <a class="el" href="expr-context_8cc_source.html#l00204">impala::ExprContext::GetValue()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a1b959ba36f6d6b2e6e2498b88873d9ff"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> Expr::GetDecimalVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td> |
| <td class="paramname"><em>expr</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr-ir_8cc_source.html#l00069">69</a> of file <a class="el" href="expr-ir_8cc_source.html">expr-ir.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00609">GetDecimalVal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a996c4f504867963b8a461cd2c713e3c2"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1DoubleVal.html">DoubleVal</a> Expr::GetDoubleVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1CoalesceExpr.html#ae625bf57d4852d61cea5296e46284840">impala::CoalesceExpr</a>, <a class="el" href="classimpala_1_1IfExpr.html#af0e74877e62fb3debfc9782a1179716d">impala::IfExpr</a>, <a class="el" href="classimpala_1_1NullIfExpr.html#a4628a5ef1b38410401d78a190b57404c">impala::NullIfExpr</a>, <a class="el" href="classimpala_1_1HiveUdfCall.html#a269d29755a1ad1d15cb3116ca857c01e">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#ab40cb3c3479889e44948fa14b42f20c7">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1IsNullExpr.html#aa9d86ed45e21ec8ee6cd1da246269962">impala::IsNullExpr</a>, <a class="el" href="classimpala_1_1Literal.html#ac8f800cfdf3db38dedc175ceb119c003">impala::Literal</a>, <a class="el" href="classimpala_1_1SlotRef.html#a11b23bfab87ad7306e06824ec52065a5">impala::SlotRef</a>, <a class="el" href="classimpala_1_1CaseExpr.html#a08f9d2250dafe050b2780e3b6d66744a">impala::CaseExpr</a>, and <a class="el" href="classimpala_1_1NullLiteral.html#a0809586790a4e5409c9c81279fab39a8">impala::NullLiteral</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00597">597</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00385">DebugString()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, <a class="el" href="expr-context_8cc_source.html#l00328">impala::ExprContext::GetDoubleVal()</a>, <a class="el" href="expr-ir_8cc_source.html#l00060">GetDoubleVal()</a>, and <a class="el" href="expr-context_8cc_source.html#l00204">impala::ExprContext::GetValue()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="afb4d0d8cd79c89431cd4d54aab72105a"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1DoubleVal.html">DoubleVal</a> Expr::GetDoubleVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td> |
| <td class="paramname"><em>expr</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr-ir_8cc_source.html#l00060">60</a> of file <a class="el" href="expr-ir_8cc_source.html">expr-ir.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00597">GetDoubleVal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a80811ee6389ccb243eef2356c15c1206"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1FloatVal.html">FloatVal</a> Expr::GetFloatVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1CoalesceExpr.html#adedc956d73f1ced3d9731111afdf93ac">impala::CoalesceExpr</a>, <a class="el" href="classimpala_1_1IfExpr.html#ad26ecf50b745efd7b0519459970cc3ba">impala::IfExpr</a>, <a class="el" href="classimpala_1_1NullIfExpr.html#afdcc4a325f491273d90948b9ce910120">impala::NullIfExpr</a>, <a class="el" href="classimpala_1_1HiveUdfCall.html#aeb1bdc20ccf74599e880f7e831512ab5">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#ae4718a98109eda55a145fee2f537bc4a">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1IsNullExpr.html#a699a22a1215696ad5c100c51b00838f6">impala::IsNullExpr</a>, <a class="el" href="classimpala_1_1Literal.html#ab20b636276b3cb0968c5e89f78f2510e">impala::Literal</a>, <a class="el" href="classimpala_1_1SlotRef.html#a7bce4dbfd709732c9feb3571b7a09cb1">impala::SlotRef</a>, <a class="el" href="classimpala_1_1CaseExpr.html#a09b0f052ec11d3e88797187145d81a6a">impala::CaseExpr</a>, and <a class="el" href="classimpala_1_1NullLiteral.html#ada31a0cb1e9ec6a3de602b1dfc55fcda">impala::NullLiteral</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00593">593</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00385">DebugString()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, <a class="el" href="expr-context_8cc_source.html#l00325">impala::ExprContext::GetFloatVal()</a>, <a class="el" href="expr-ir_8cc_source.html#l00057">GetFloatVal()</a>, and <a class="el" href="expr-context_8cc_source.html#l00204">impala::ExprContext::GetValue()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a48866aea6bfd58cf76e7602576920ac9"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1FloatVal.html">FloatVal</a> Expr::GetFloatVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td> |
| <td class="paramname"><em>expr</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr-ir_8cc_source.html#l00057">57</a> of file <a class="el" href="expr-ir_8cc_source.html">expr-ir.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00593">GetFloatVal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="afe35445295d8cad09b0fd56bc3016e7f"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1IntVal.html">IntVal</a> Expr::GetIntVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1CoalesceExpr.html#abf60e5d73b6bb02ac1c35a9c90da01ea">impala::CoalesceExpr</a>, <a class="el" href="classimpala_1_1IfExpr.html#a7cb8b15c2be6e882258cbe4216c617d2">impala::IfExpr</a>, <a class="el" href="classimpala_1_1NullIfExpr.html#a250f903838873f9cbc3bede9218c5e18">impala::NullIfExpr</a>, <a class="el" href="classimpala_1_1HiveUdfCall.html#ac660153833dd5a98702a7213903b7c83">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#a23aaae77361245028d3301ffdbf56d34">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1IsNullExpr.html#a2d850c270e38165fa4f5fdc217d3c85d">impala::IsNullExpr</a>, <a class="el" href="classimpala_1_1Literal.html#ae2710f0878a459b48ba6d932703e3f67">impala::Literal</a>, <a class="el" href="classimpala_1_1SlotRef.html#a83f6b40a075642517f565fd052e3230e">impala::SlotRef</a>, <a class="el" href="classimpala_1_1CaseExpr.html#af05176eb83b1f623dd88091b7022dd76">impala::CaseExpr</a>, and <a class="el" href="classimpala_1_1NullLiteral.html#af4cba402ccf32c6e205c093cf648c307">impala::NullLiteral</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00585">585</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00385">DebugString()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, <a class="el" href="expr-context_8cc_source.html#l00319">impala::ExprContext::GetIntVal()</a>, <a class="el" href="expr-ir_8cc_source.html#l00051">GetIntVal()</a>, and <a class="el" href="expr-context_8cc_source.html#l00204">impala::ExprContext::GetValue()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="adbe8f67f4775080f04dd6f0c0ffa78b3"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1IntVal.html">IntVal</a> Expr::GetIntVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td> |
| <td class="paramname"><em>expr</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr-ir_8cc_source.html#l00051">51</a> of file <a class="el" href="expr-ir_8cc_source.html">expr-ir.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00585">GetIntVal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="adb1cc69285dcdd91f4c17844b7307c9d"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">int impala::Expr::GetNumChildren </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00143">143</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="hive-udf-call_8cc_source.html#l00074">impala::HiveUdfCall::Evaluate()</a>, <a class="el" href="case-expr_8cc_source.html#l00179">impala::CaseExpr::GetCodegendComputeFn()</a>, <a class="el" href="slot-ref_8cc_source.html#l00155">impala::SlotRef::GetCodegendComputeFn()</a>, <a class="el" href="literal_8cc_source.html#l00356">impala::Literal::GetCodegendComputeFn()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00243">impala::ScalarFnCall::GetCodegendComputeFn()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00176">impala::HiveUdfCall::Open()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00052">impala::ScalarFnCall::Prepare()</a>, and <a class="el" href="hive-udf-call_8cc_source.html#l00153">impala::HiveUdfCall::Prepare()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a6f42f36538e523852367b29eea5b4e68"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">int Expr::GetSlotIds </td> |
| <td>(</td> |
| <td class="paramtype">std::vector< <a class="el" href="namespaceimpala.html#a4e802b9fa9086eb686d8688df634a2b2">SlotId</a> > * </td> |
| <td class="paramname"><em>slot_ids</em></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Returns the slots that are referenced by this expr tree in 'slot_ids'. Returns the number of slots added to the vector </p> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1SlotRef.html#a991ec02d94fe4f2b7639a889bbfaa317">impala::SlotRef</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00418">418</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8h_source.html#l00290">children_</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a4d8dd3e1e7a9b05cd94ef7d52bbd4ac2"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1SmallIntVal.html">SmallIntVal</a> Expr::GetSmallIntVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1CoalesceExpr.html#a0ab70534f6099924be1baed31aae9b94">impala::CoalesceExpr</a>, <a class="el" href="classimpala_1_1IfExpr.html#a7f78eaca06b3be9148edc8a1269c0a70">impala::IfExpr</a>, <a class="el" href="classimpala_1_1NullIfExpr.html#a9b79906210c14ce52cd36b3c862384a9">impala::NullIfExpr</a>, <a class="el" href="classimpala_1_1HiveUdfCall.html#a9e9dadfc17b840be34a38a8d924c4e11">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#ad2c573909299c80e12d8fdcf64d2c046">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1IsNullExpr.html#a98aa339dc6e40fdbb3153027ca518b3a">impala::IsNullExpr</a>, <a class="el" href="classimpala_1_1Literal.html#a523f558aca4e292d9b19ee45bebd7728">impala::Literal</a>, <a class="el" href="classimpala_1_1SlotRef.html#ab8a6d9ade9266037c1b3a8025ffae55c">impala::SlotRef</a>, <a class="el" href="classimpala_1_1CaseExpr.html#acd3281d78b91f0c8c29de8951f03abcd">impala::CaseExpr</a>, and <a class="el" href="classimpala_1_1NullLiteral.html#a4c381cf03eb4496478c18aa20606da56">impala::NullLiteral</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00581">581</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00385">DebugString()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, <a class="el" href="expr-context_8cc_source.html#l00316">impala::ExprContext::GetSmallIntVal()</a>, <a class="el" href="expr-ir_8cc_source.html#l00048">GetSmallIntVal()</a>, and <a class="el" href="expr-context_8cc_source.html#l00204">impala::ExprContext::GetValue()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a2219eee265df1f361f47a9f45519462a"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1SmallIntVal.html">SmallIntVal</a> Expr::GetSmallIntVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td> |
| <td class="paramname"><em>expr</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr-ir_8cc_source.html#l00048">48</a> of file <a class="el" href="expr-ir_8cc_source.html">expr-ir.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00581">GetSmallIntVal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="adc26ca9c44c3caaff2cd7d7e4f66752e"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">Function * Expr::GetStaticGetValWrapper </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> </td> |
| <td class="paramname"><em>type</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1LlvmCodeGen.html">LlvmCodeGen</a> * </td> |
| <td class="paramname"><em>codegen</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Returns the IR version of the static Get*Val() wrapper function corresponding to 'type'. This is used for calling interpreted Get*Val() functions from codegen'd functions (e.g. in <a class="el" href="classimpala_1_1Expr.html#a0c56d835d5fc23e983bd00ce38c8d616">ScalarFnCall()</a> when codegen is disabled). </p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00426">426</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="types_8cc_source.html#l00194">impala::ColumnType::DebugString()</a>, <a class="el" href="llvm-codegen_8cc_source.html#l00421">impala::LlvmCodeGen::GetFunction()</a>, <a class="el" href="types_8h_source.html#l00060">impala::ColumnType::type</a>, <a class="el" href="types_8h_source.html#l00034">impala::TYPE_BIGINT</a>, <a class="el" href="types_8h_source.html#l00030">impala::TYPE_BOOLEAN</a>, <a class="el" href="types_8h_source.html#l00047">impala::TYPE_CHAR</a>, <a class="el" href="types_8h_source.html#l00042">impala::TYPE_DECIMAL</a>, <a class="el" href="types_8h_source.html#l00036">impala::TYPE_DOUBLE</a>, <a class="el" href="types_8h_source.html#l00035">impala::TYPE_FLOAT</a>, <a class="el" href="types_8h_source.html#l00033">impala::TYPE_INT</a>, <a class="el" href="types_8h_source.html#l00032">impala::TYPE_SMALLINT</a>, <a class="el" href="types_8h_source.html#l00038">impala::TYPE_STRING</a>, <a class="el" href="types_8h_source.html#l00037">impala::TYPE_TIMESTAMP</a>, <a class="el" href="types_8h_source.html#l00031">impala::TYPE_TINYINT</a>, and <a class="el" href="types_8h_source.html#l00048">impala::TYPE_VARCHAR</a>.</p> |
| |
| <p>Referenced by <a class="el" href="scalar-fn-call_8cc_source.html#l00243">impala::ScalarFnCall::GetCodegendComputeFn()</a>, and <a class="el" href="expr_8cc_source.html#l00546">GetCodegendComputeFnWrapper()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a31f637ae00364a6e542eba1f8d371cae"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1StringVal.html">StringVal</a> Expr::GetStringVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1CoalesceExpr.html#aab669ff0725a94d89f94385e27a80c48">impala::CoalesceExpr</a>, <a class="el" href="classimpala_1_1IfExpr.html#a18801212c9edce89f42922ffae1e12f1">impala::IfExpr</a>, <a class="el" href="classimpala_1_1NullIfExpr.html#a5a5f54c4f393a933e2d27c20f7797d52">impala::NullIfExpr</a>, <a class="el" href="classimpala_1_1HiveUdfCall.html#a978705b8df2a72b335568178e7f4bbe9">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#ab1436269bf495e2c51ea62bf258f9017">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1IsNullExpr.html#a3f8325c10365d2b13cf8c391407812dc">impala::IsNullExpr</a>, <a class="el" href="classimpala_1_1Literal.html#a2494612958833e6c5e91740ad2dfd3eb">impala::Literal</a>, <a class="el" href="classimpala_1_1SlotRef.html#ac75e6ea640e9de68300109d52b21b4b7">impala::SlotRef</a>, <a class="el" href="classimpala_1_1CaseExpr.html#a2c09e0ff2b4b10b30e42da61feb46dd6">impala::CaseExpr</a>, and <a class="el" href="classimpala_1_1NullLiteral.html#adfe10a9bb4454e2e88087a20aa398fcb">impala::NullLiteral</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00601">601</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00385">DebugString()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, <a class="el" href="expr-context_8cc_source.html#l00331">impala::ExprContext::GetStringVal()</a>, <a class="el" href="expr-ir_8cc_source.html#l00063">GetStringVal()</a>, and <a class="el" href="expr-context_8cc_source.html#l00204">impala::ExprContext::GetValue()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a9274fa3d9adc7d944f976452e65fd8d8"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1StringVal.html">StringVal</a> Expr::GetStringVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td> |
| <td class="paramname"><em>expr</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr-ir_8cc_source.html#l00063">63</a> of file <a class="el" href="expr-ir_8cc_source.html">expr-ir.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00601">GetStringVal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a653cc2c0d6f05cb1476e902f6d001434"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1TimestampVal.html">TimestampVal</a> Expr::GetTimestampVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1CoalesceExpr.html#ab5c8ef692452602773fa238364d3cea0">impala::CoalesceExpr</a>, <a class="el" href="classimpala_1_1IfExpr.html#af8d748608b2009cb0fb573296e6643d9">impala::IfExpr</a>, <a class="el" href="classimpala_1_1NullIfExpr.html#ae03ed6e4f145097a28673cb4ae55a2f0">impala::NullIfExpr</a>, <a class="el" href="classimpala_1_1HiveUdfCall.html#a26731426e770da9327155db57e6e9477">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#ad047feebc323cf49c341b81d055d927f">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1IsNullExpr.html#ab6c44ef59ef9c8a4b50901abfabe6823">impala::IsNullExpr</a>, <a class="el" href="classimpala_1_1SlotRef.html#a972213b3be9d78c4e5915af5588e0d88">impala::SlotRef</a>, <a class="el" href="classimpala_1_1CaseExpr.html#a343023f11045b11758ab3361913195e0">impala::CaseExpr</a>, and <a class="el" href="classimpala_1_1NullLiteral.html#a73de323d78bd455822fa0170717705ce">impala::NullLiteral</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00605">605</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00385">DebugString()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, <a class="el" href="expr-context_8cc_source.html#l00334">impala::ExprContext::GetTimestampVal()</a>, <a class="el" href="expr-ir_8cc_source.html#l00066">GetTimestampVal()</a>, and <a class="el" href="expr-context_8cc_source.html#l00204">impala::ExprContext::GetValue()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a4ed4e1f1dc177d5ac81019d3541d55cb"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1TimestampVal.html">TimestampVal</a> Expr::GetTimestampVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td> |
| <td class="paramname"><em>expr</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr-ir_8cc_source.html#l00066">66</a> of file <a class="el" href="expr-ir_8cc_source.html">expr-ir.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00605">GetTimestampVal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="abaedc9ac7dc252d497d9179f6322bf80"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1TinyIntVal.html">TinyIntVal</a> Expr::GetTinyIntVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1CoalesceExpr.html#a1b0cc4b1facf4ace274590c3136075b5">impala::CoalesceExpr</a>, <a class="el" href="classimpala_1_1IfExpr.html#ab119af940cfcf73deed0776af55349c4">impala::IfExpr</a>, <a class="el" href="classimpala_1_1NullIfExpr.html#aa2125f8674c50488720af49971bf4372">impala::NullIfExpr</a>, <a class="el" href="classimpala_1_1HiveUdfCall.html#affe7cd86337f6ca4b60856e407f6a877">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#a3dd2fdd2ad78fbbb93cd9cb2575cfebf">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1IsNullExpr.html#a6ef243aa005a96225a8d86e039ce65d2">impala::IsNullExpr</a>, <a class="el" href="classimpala_1_1Literal.html#a548071b9e7c0084f4dc67a2a73c53b8f">impala::Literal</a>, <a class="el" href="classimpala_1_1SlotRef.html#a861f0fb9b850eb98fdbae472140cd33b">impala::SlotRef</a>, <a class="el" href="classimpala_1_1CaseExpr.html#a22e95bbc8ad31306712651462461e95a">impala::CaseExpr</a>, and <a class="el" href="classimpala_1_1NullLiteral.html#aa87d6f04e14a7f7840448a40485a4e22">impala::NullLiteral</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00577">577</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00385">DebugString()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, <a class="el" href="expr-context_8cc_source.html#l00313">impala::ExprContext::GetTinyIntVal()</a>, <a class="el" href="expr-ir_8cc_source.html#l00045">GetTinyIntVal()</a>, and <a class="el" href="expr-context_8cc_source.html#l00204">impala::ExprContext::GetValue()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a1dca0be966acf3c688b0db85e2bfe849"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structimpala__udf_1_1TinyIntVal.html">TinyIntVal</a> Expr::GetTinyIntVal </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1Expr.html">Expr</a> * </td> |
| <td class="paramname"><em>expr</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1TupleRow.html">TupleRow</a> * </td> |
| <td class="paramname"><em>row</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr-ir_8cc_source.html#l00045">45</a> of file <a class="el" href="expr-ir_8cc_source.html">expr-ir.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8cc_source.html#l00577">GetTinyIntVal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="adb1c9ed033cb9b8ec3cd40557e840d11"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void Expr::InitBuiltinsDummy </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>The builtin functions are not called from anywhere in the code and the symbols are therefore not included in the binary. We call these functions by using dlsym. The compiler must think this function is callable to not strip these symbols. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00470">470</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="classimpala_1_1Operators.html#a997b116f595806fd4848985b932d25e2">impala::Operators::Add_IntVal_IntVal()</a>, <a class="el" href="classimpala_1_1CastFunctions.html#a9fda2a445acfda7b4c0ad9434e5e685e">impala::CastFunctions::CastToBooleanVal()</a>, <a class="el" href="decimal-operators_8cc_source.html#l00435">impala::DecimalOperators::CastToDecimalVal()</a>, <a class="el" href="classimpala_1_1InPredicate.html#a0ca17d8f6a824bd72adb660923536b5a">impala::InPredicate::InIterate()</a>, <a class="el" href="aggregate-functions_8cc_source.html#l00062">impala::AggregateFunctions::InitNull()</a>, <a class="el" href="is-null-predicate_8cc_source.html#l00023">impala::IsNullPredicate::IsNull()</a>, <a class="el" href="string-functions_8cc_source.html#l00143">impala::StringFunctions::Length()</a>, <a class="el" href="like-predicate_8cc_source.html#l00095">impala::LikePredicate::Like()</a>, <a class="el" href="compound-predicates-ir_8cc_source.html#l00020">impala::CompoundPredicate::Not()</a>, <a class="el" href="classimpala_1_1ConditionalFunctions.html#a535eefb6cc2bc8c9875085e5d00959c6">impala::ConditionalFunctions::NullIfZero()</a>, <a class="el" href="udf-builtins_8cc_source.html#l00042">impala::UdfBuiltins::Pi()</a>, <a class="el" href="math-functions_8cc_source.html#l00038">impala::MathFunctions::Pi()</a>, <a class="el" href="utility-functions_8cc_source.html#l00086">impala::UtilityFunctions::Pid()</a>, <a class="el" href="decimal-functions_8cc_source.html#l00027">impala::DecimalFunctions::Precision()</a>, and <a class="el" href="timestamp-functions_8cc_source.html#l00211">impala::TimestampFunctions::Year()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a4245192bbee7b1d9e3c50bddd922bb3b"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classbool.html">bool</a> impala::Expr::is_slotref </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00146">146</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a5708ce372f185021857e6b87a9b99f04"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classbool.html">bool</a> Expr::IsConstant </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Returns true if GetValue(NULL) can be called on this expr and always returns the same result (e.g., exprs that don't contain slotrefs). The default implementation returns true if all children are constant. </p> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1ScalarFnCall.html#a21a0599af672c99b91cc0b4deac159d0">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1TupleIsNullPredicate.html#a7d32cc746e13bf86617efc9688f272c6">impala::TupleIsNullPredicate</a>, and <a class="el" href="classimpala_1_1SlotRef.html#adbf95b41575fd618c1aa10e2a3a03f47">impala::SlotRef</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00411">411</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8h_source.html#l00290">children_</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, and <a class="el" href="scalar-fn-call_8cc_source.html#l00211">impala::ScalarFnCall::IsConstant()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="aad1111f87951868de4d8f8b2dfe87c5f"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static <a class="el" href="classimpala_1_1Status.html">Status</a> impala::Expr::Open </td> |
| <td>(</td> |
| <td class="paramtype">const std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > & </td> |
| <td class="paramname"><em>ctxs</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> * </td> |
| <td class="paramname"><em>state</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Convenience function for opening multiple expr trees. </p> |
| |
| <p>Referenced by <a class="el" href="expr-context_8cc_source.html#l00091">impala::ExprContext::Clone()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00154">impala::HashJoinNode::ConstructBuildSide()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00485">impala::PartitionedHashJoinNode::ConstructBuildSide()</a>, <a class="el" href="union-node_8cc_source.html#l00088">impala::UnionNode::Open()</a>, <a class="el" href="sort-exec-exprs_8cc_source.html#l00053">impala::SortExecExprs::Open()</a>, <a class="el" href="expr-context_8cc_source.html#l00056">impala::ExprContext::Open()</a>, <a class="el" href="case-expr_8cc_source.html#l00053">impala::CaseExpr::Open()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00174">impala::AggregationNode::Open()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00148">impala::ScalarFnCall::Open()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00176">impala::HiveUdfCall::Open()</a>, <a class="el" href="data-stream-sender_8cc_source.html#l00397">impala::DataStreamSender::Open()</a>, <a class="el" href="exec-node_8cc_source.html#l00154">impala::ExecNode::Open()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00209">impala::PartitionedAggregationNode::Open()</a>, <a class="el" href="agg-fn-evaluator_8cc_source.html#l00214">impala::AggFnEvaluator::Open()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00511">impala::HdfsScanNode::Open()</a>, <a class="el" href="hdfs-table-sink_8cc_source.html#l00160">impala::HdfsTableSink::Open()</a>, <a class="el" href="expr_8cc_source.html#l00366">Open()</a>, <a class="el" href="descriptors_8cc_source.html#l00145">impala::HdfsPartitionDescriptor::OpenExprs()</a>, <a class="el" href="old-hash-table-test_8cc_source.html#l00049">impala::OldHashTableTest::SetUp()</a>, <a class="el" href="hash-table-test_8cc_source.html#l00049">impala::HashTableTest::SetUp()</a>, and <a class="el" href="query-exec-state_8cc_source.html#l00555">impala::ImpalaServer::QueryExecState::WaitInternal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="ac7bb5173962798d058546becc0d385e4"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> Expr::Open </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> * </td> |
| <td class="paramname"><em>state</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html#a1e9662a1bbb78daa9923b47412347ffc">FunctionContext::FunctionStateScope</a> </td> |
| <td class="paramname"><em>scope</em> = <code>FunctionContext::FRAGMENT_LOCAL</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Initializes 'context' for execution. If scope if FRAGMENT_LOCAL, both fragment- and thread-local state should be initialized. Otherwise, if scope is THREAD_LOCAL, only thread-local state should be initialized. Subclasses overriding this function should call <a class="el" href="classimpala_1_1Expr.html#aad1111f87951868de4d8f8b2dfe87c5f" title="Convenience function for opening multiple expr trees. ">Expr::Open()</a> to recursively call <a class="el" href="classimpala_1_1Expr.html#aad1111f87951868de4d8f8b2dfe87c5f" title="Convenience function for opening multiple expr trees. ">Open()</a> on the expr tree. </p> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1HiveUdfCall.html#aef267163f9ed7b898b438f577bd9e1fa">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#aeba3afbca2c0579a79622ea1ebb2aee7">impala::ScalarFnCall</a>, and <a class="el" href="classimpala_1_1CaseExpr.html#ac0b9c2b90fe47c856a6f0520cff04071">impala::CaseExpr</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00366">366</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8h_source.html#l00290">children_</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="classimpala_1_1Expr.html#aad1111f87951868de4d8f8b2dfe87c5f">Open()</a>, and <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="af6ec759518bffbb9f389f5564f6006df"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">int impala::Expr::output_scale </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Get the number of digits after the decimal that should be displayed for this value. Returns -1 if no scale has been specified (currently the scale is only set for doubles set by RoundUpTo). GetValue() must have already been called. TODO: is this still necessary? </p> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00139">139</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a3ae02e50debba50ac5c7b6dd9f8016e7"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static <a class="el" href="classimpala_1_1Status.html">Status</a> impala::Expr::Prepare </td> |
| <td>(</td> |
| <td class="paramtype">const std::vector< <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * > & </td> |
| <td class="paramname"><em>ctxs</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> * </td> |
| <td class="paramname"><em>state</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const <a class="el" href="classimpala_1_1RowDescriptor.html">RowDescriptor</a> & </td> |
| <td class="paramname"><em>row_desc</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1MemTracker.html">MemTracker</a> * </td> |
| <td class="paramname"><em>tracker</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Convenience function for preparing multiple expr trees. Allocations from 'ctxs' will be counted against 'tracker'. </p> |
| |
| <p>Referenced by <a class="el" href="tuple-is-null-predicate_8cc_source.html#l00042">impala::TupleIsNullPredicate::Prepare()</a>, <a class="el" href="union-node_8cc_source.html#l00058">impala::UnionNode::Prepare()</a>, <a class="el" href="sort-exec-exprs_8cc_source.html#l00042">impala::SortExecExprs::Prepare()</a>, <a class="el" href="expr-context_8cc_source.html#l00047">impala::ExprContext::Prepare()</a>, <a class="el" href="case-expr_8cc_source.html#l00046">impala::CaseExpr::Prepare()</a>, <a class="el" href="hash-join-node_8cc_source.html#l00080">impala::HashJoinNode::Prepare()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00085">impala::AggregationNode::Prepare()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00052">impala::ScalarFnCall::Prepare()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00153">impala::HiveUdfCall::Prepare()</a>, <a class="el" href="partitioned-hash-join-node_8cc_source.html#l00094">impala::PartitionedHashJoinNode::Prepare()</a>, <a class="el" href="data-stream-sender_8cc_source.html#l00362">impala::DataStreamSender::Prepare()</a>, <a class="el" href="exec-node_8cc_source.html#l00130">impala::ExecNode::Prepare()</a>, <a class="el" href="agg-fn-evaluator_8cc_source.html#l00124">impala::AggFnEvaluator::Prepare()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l00095">impala::PartitionedAggregationNode::Prepare()</a>, <a class="el" href="hdfs-scan-node_8cc_source.html#l00304">impala::HdfsScanNode::Prepare()</a>, <a class="el" href="expr_8cc_source.html#l00350">Prepare()</a>, <a class="el" href="hdfs-table-sink_8cc_source.html#l00072">impala::HdfsTableSink::PrepareExprs()</a>, <a class="el" href="descriptors_8cc_source.html#l00134">impala::HdfsPartitionDescriptor::PrepareExprs()</a>, <a class="el" href="hash-table-test_8cc_source.html#l00049">impala::HashTableTest::SetUp()</a>, and <a class="el" href="old-hash-table-test_8cc_source.html#l00049">impala::OldHashTableTest::SetUp()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="af1bff470a7f8858237dbc9322fa54f2e"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classimpala_1_1Status.html">Status</a> Expr::Prepare </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> * </td> |
| <td class="paramname"><em>state</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const <a class="el" href="classimpala_1_1RowDescriptor.html">RowDescriptor</a> & </td> |
| <td class="paramname"><em>row_desc</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>context</em> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Initializes this expr instance for execution. This does not include initializing state in the <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a>; 'context' should only be used to register a FunctionContext via <a class="el" href="classimpala_1_1Expr.html#ace97c478e9b659f3fcd20d38cf67bc05">RegisterFunctionContext()</a>. Any IR functions must be generated here. Subclasses overriding this function should call <a class="el" href="classimpala_1_1Expr.html#a3ae02e50debba50ac5c7b6dd9f8016e7">Expr::Prepare()</a> to recursively call <a class="el" href="classimpala_1_1Expr.html#a3ae02e50debba50ac5c7b6dd9f8016e7">Prepare()</a> on the expr tree. </p> |
| |
| <p>Reimplemented in <a class="el" href="classimpala_1_1HiveUdfCall.html#acca07c5beeb00b337e98dca64d5a023f">impala::HiveUdfCall</a>, <a class="el" href="classimpala_1_1ScalarFnCall.html#a6a5d7c328456da3aa66c9e5e4b490480">impala::ScalarFnCall</a>, <a class="el" href="classimpala_1_1CaseExpr.html#acbff4ac8a08982fbfb05939d7bc48ec7">impala::CaseExpr</a>, <a class="el" href="classimpala_1_1TupleIsNullPredicate.html#a79cfd7a6da0a8b76d4e852ae158f3e71">impala::TupleIsNullPredicate</a>, and <a class="el" href="classimpala_1_1SlotRef.html#a7a368561ec9db81fdb73fb7becb17633">impala::SlotRef</a>.</p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00350">350</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="expr_8h_source.html#l00290">children_</a>, <a class="el" href="types_8h_source.html#l00028">impala::INVALID_TYPE</a>, <a class="el" href="status_8h_source.html#l00087">impala::Status::OK</a>, <a class="el" href="classimpala_1_1Expr.html#a3ae02e50debba50ac5c7b6dd9f8016e7">Prepare()</a>, <a class="el" href="status_8h_source.html#l00242">RETURN_IF_ERROR</a>, <a class="el" href="types_8h_source.html#l00060">impala::ColumnType::type</a>, and <a class="el" href="expr_8h_source.html#l00289">type_</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="ace97c478e9b659f3fcd20d38cf67bc05"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> * Expr::RegisterFunctionContext </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a> * </td> |
| <td class="paramname"><em>ctx</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype"><a class="el" href="classimpala_1_1RuntimeState.html">RuntimeState</a> * </td> |
| <td class="paramname"><em>state</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">int </td> |
| <td class="paramname"><em>varargs_buffer_size</em> = <code>0</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Helper function that calls ctx->Register(), sets context_index_, and returns the registered FunctionContext. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8cc_source.html#l00080">80</a> of file <a class="el" href="expr_8cc_source.html">expr.cc</a>.</p> |
| |
| <p>References <a class="el" href="anyval-util_8cc_source.html#l00052">impala::AnyValUtil::ColumnTypeToTypeDesc()</a>, <a class="el" href="expr-context_8h_source.html#l00100">impala::ExprContext::fn_context()</a>, and <a class="el" href="expr-context_8cc_source.html#l00081">impala::ExprContext::Register()</a>.</p> |
| |
| <p>Referenced by <a class="el" href="case-expr_8cc_source.html#l00046">impala::CaseExpr::Prepare()</a>, and <a class="el" href="hive-udf-call_8cc_source.html#l00153">impala::HiveUdfCall::Prepare()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a742827844080d45d514719742cb3e7f5"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a>& impala::Expr::type </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00145">145</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="case-expr_8cc_source.html#l00329">impala::CaseExpr::AnyValEq()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00337">impala::HdfsParquetTableWriter::BoolColumnWriter::BoolColumnWriter()</a>, <a class="el" href="aggregation-node_8cc_source.html#l00506">impala::AggregationNode::CodegenUpdateSlot()</a>, <a class="el" href="partitioned-aggregation-node_8cc_source.html#l01055">impala::PartitionedAggregationNode::CodegenUpdateSlot()</a>, <a class="el" href="hdfs-parquet-table-writer_8cc_source.html#l00240">impala::HdfsParquetTableWriter::ColumnWriter< T >::ColumnWriter()</a>, <a class="el" href="expr_8cc_source.html#l00456">CreateIrFunctionPrototype()</a>, <a class="el" href="literal_8cc_source.html#l00300">impala::Literal::DebugString()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00074">impala::HiveUdfCall::Evaluate()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00493">impala::ScalarFnCall::EvaluateChildren()</a>, <a class="el" href="case-expr_8cc_source.html#l00290">impala::CaseExpr::GetChildVal()</a>, <a class="el" href="case-expr_8cc_source.html#l00179">impala::CaseExpr::GetCodegendComputeFn()</a>, <a class="el" href="slot-ref_8cc_source.html#l00155">impala::SlotRef::GetCodegendComputeFn()</a>, <a class="el" href="literal_8cc_source.html#l00356">impala::Literal::GetCodegendComputeFn()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00243">impala::ScalarFnCall::GetCodegendComputeFn()</a>, <a class="el" href="expr_8cc_source.html#l00546">GetCodegendComputeFnWrapper()</a>, <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, <a class="el" href="literal_8cc_source.html#l00284">impala::Literal::GetDecimalVal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00377">impala::ScalarFnCall::GetUdf()</a>, <a class="el" href="literal_8cc_source.html#l00031">impala::Literal::Literal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00148">impala::ScalarFnCall::Open()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00176">impala::HiveUdfCall::Open()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00052">impala::ScalarFnCall::Prepare()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00153">impala::HiveUdfCall::Prepare()</a>, and <a class="el" href="data-stream-sender_8cc_source.html#l00401">impala::DataStreamSender::Send()</a>.</p> |
| |
| </div> |
| </div> |
| <h2 class="groupheader">Friends And Related Function Documentation</h2> |
| <a class="anchor" id="a37fc17d21d749d19dfca54d6d65c274f"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1AggFnEvaluator.html">AggFnEvaluator</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00235">235</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a657cd463df400dd076339af8acd65c5a"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1CaseExpr.html">CaseExpr</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00246">246</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00190">CreateExpr()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="aad7c34605bed5b41b6e8ec5d3d3344b4"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class CastExpr</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00236">236</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="aff05dfe23006b20bafb95428d4d53cb1"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class ComputeFunctions</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00237">237</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a0718e954b115820b55fd631071ecfe45"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1ConditionalFunctions.html">ConditionalFunctions</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00244">244</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="abe0ecc83b76e15d2d92e725177e8cbc2"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1DecimalFunctions.html">DecimalFunctions</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00238">238</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a5acf0dc00f32434d769cd145b8d1c9c6"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class DecimalLliteral</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00239">239</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a32d150f11f71a9c1a8c53c9d0290ca0f"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1DecimalOperators.html">DecimalOperators</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00240">240</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="ac68b62ae01e55e0a7b93b60c1c19b2c9"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1ExprContext.html">ExprContext</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00339">339</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00160">CreateTreeFromThrift()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="ad40cbb0ba6bf38aa2db1e37a43f6acc2"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1ExprTest.html">ExprTest</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00340">340</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a691c02af266968b91e2e985f0974621d"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class FunctionCall</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00248">248</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a9dd02112f55bf1e2b351c7c537e56a7b"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1InPredicate.html">InPredicate</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00247">247</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="ac019d0804e593ce92462faa863dfbc8b"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1MathFunctions.html">MathFunctions</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00241">241</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a0c56d835d5fc23e983bd00ce38c8d616"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1ScalarFnCall.html">ScalarFnCall</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00249">249</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00190">CreateExpr()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a54fa8120fe4a0c1abd65d614bd37ca0e"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1StringFunctions.html">StringFunctions</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00242">242</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a03e3ce83edb99a9f3db933a8a26963b0"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1TimestampFunctions.html">TimestampFunctions</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00243">243</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a23960ae4159fed8f076959b3e87ac552"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">friend class <a class="el" href="classimpala_1_1UtilityFunctions.html">UtilityFunctions</a></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">friend</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00245">245</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <h2 class="groupheader">Member Data Documentation</h2> |
| <a class="anchor" id="aee18bd1a0006e802df30b9c960d36cb3"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="structLibCache_1_1LibCacheEntry.html">LibCache::LibCacheEntry</a>* impala::Expr::cache_entry_</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Cache entry for the library implementing this function. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00281">281</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00114">Close()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00472">impala::ScalarFnCall::GetFunction()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00377">impala::ScalarFnCall::GetUdf()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00052">impala::ScalarFnCall::Prepare()</a>, and <a class="el" href="expr_8cc_source.html#l00110">~Expr()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a84e7e99daf641ad9ee2881bb673f62a3"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">std::vector<<a class="el" href="classimpala_1_1Expr.html">Expr</a>*> impala::Expr::children_</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00290">290</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00114">Close()</a>, <a class="el" href="expr_8cc_source.html#l00385">DebugString()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00493">impala::ScalarFnCall::EvaluateChildren()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00243">impala::ScalarFnCall::GetCodegendComputeFn()</a>, <a class="el" href="expr_8cc_source.html#l00418">GetSlotIds()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00377">impala::ScalarFnCall::GetUdf()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00512">impala::ScalarFnCall::InterpretEval()</a>, <a class="el" href="expr_8cc_source.html#l00411">IsConstant()</a>, <a class="el" href="case-expr_8cc_source.html#l00053">impala::CaseExpr::Open()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00148">impala::ScalarFnCall::Open()</a>, <a class="el" href="expr_8cc_source.html#l00366">Open()</a>, <a class="el" href="slot-ref_8cc_source.html#l00063">impala::SlotRef::Prepare()</a>, <a class="el" href="tuple-is-null-predicate_8cc_source.html#l00042">impala::TupleIsNullPredicate::Prepare()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00052">impala::ScalarFnCall::Prepare()</a>, and <a class="el" href="expr_8cc_source.html#l00350">Prepare()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="aed93f651b667662d8f359de18cd883a6"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">boost::scoped_ptr<<a class="el" href="structimpala__udf_1_1AnyVal.html">AnyVal</a>> impala::Expr::constant_val_</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>If this expr is constant, this will store and cache the value generated by <a class="el" href="classimpala_1_1Expr.html#a28f2b59990e3a90b1858710ace748f5c">GetConstVal()</a>. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00303">303</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a0e97382f249d8a076454dca5eedc441b"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">int impala::Expr::context_index_</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| <p>Index to pass to <a class="el" href="classimpala_1_1ExprContext.html#aab28f00b80f65b1302abd7a6c33f2df7">ExprContext::fn_context()</a> to retrieve this expr's FunctionContext. Set in <a class="el" href="classimpala_1_1Expr.html#ace97c478e9b659f3fcd20d38cf67bc05">RegisterFunctionContext()</a>. -1 if this expr does not need a FunctionContext and doesn't call <a class="el" href="classimpala_1_1Expr.html#ace97c478e9b659f3fcd20d38cf67bc05">RegisterFunctionContext()</a>. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00296">296</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="case-expr_8cc_source.html#l00070">impala::CaseExpr::Close()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00198">impala::ScalarFnCall::Close()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00232">impala::HiveUdfCall::Close()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00074">impala::HiveUdfCall::Evaluate()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00493">impala::ScalarFnCall::EvaluateChildren()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00243">impala::ScalarFnCall::GetCodegendComputeFn()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00512">impala::ScalarFnCall::InterpretEval()</a>, <a class="el" href="case-expr_8cc_source.html#l00053">impala::CaseExpr::Open()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00148">impala::ScalarFnCall::Open()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00176">impala::HiveUdfCall::Open()</a>, and <a class="el" href="scalar-fn-call_8cc_source.html#l00052">impala::ScalarFnCall::Prepare()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a51d9f91210952a0ae23dcbbdc2700dcc"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">TFunction impala::Expr::fn_</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Function description. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00284">284</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="scalar-fn-call_8cc_source.html#l00733">impala::ScalarFnCall::DebugString()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00275">impala::HiveUdfCall::DebugString()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00074">impala::HiveUdfCall::Evaluate()</a>, <a class="el" href="expr_8cc_source.html#l00100">Expr()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00472">impala::ScalarFnCall::GetFunction()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00377">impala::ScalarFnCall::GetUdf()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00211">impala::ScalarFnCall::IsConstant()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00148">impala::ScalarFnCall::Open()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00176">impala::HiveUdfCall::Open()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00052">impala::ScalarFnCall::Prepare()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00153">impala::HiveUdfCall::Prepare()</a>, and <a class="el" href="scalar-fn-call_8cc_source.html#l00041">impala::ScalarFnCall::ScalarFnCall()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="ac1b323bdf9af6616080d30d4fbabc6fc"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">llvm::Function* impala::Expr::ir_compute_fn_</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Cached codegened compute function. Exprs should set this in <a class="el" href="classimpala_1_1Expr.html#a3f3fde78dfcf00d2d68bc93d52ef8b11">GetCodegendComputeFn()</a>. </p> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00299">299</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="case-expr_8cc_source.html#l00179">impala::CaseExpr::GetCodegendComputeFn()</a>, <a class="el" href="slot-ref_8cc_source.html#l00155">impala::SlotRef::GetCodegendComputeFn()</a>, <a class="el" href="literal_8cc_source.html#l00356">impala::Literal::GetCodegendComputeFn()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00243">impala::ScalarFnCall::GetCodegendComputeFn()</a>, and <a class="el" href="expr_8cc_source.html#l00546">GetCodegendComputeFnWrapper()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="af9b41baf7878f4ec552ae68cb3a60be0"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">const <a class="el" href="classbool.html">bool</a> impala::Expr::is_slotref_</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>recognize if this node is a slotref in order to speed up GetValue() </p> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00287">287</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="ad290be216bb08202ca551b078e0cc6a7"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">const char * Expr::LLVM_CLASS_NAME = "class.impala::Expr"</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">static</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00232">232</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="scalar-fn-call_8cc_source.html#l00243">impala::ScalarFnCall::GetCodegendComputeFn()</a>, and <a class="el" href="expr_8cc_source.html#l00546">GetCodegendComputeFnWrapper()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a58166a4b77bf9f3834c5380630496a17"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">int impala::Expr::output_scale_</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00291">291</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="expr-context_8cc_source.html#l00126">impala::ExprContext::GetValue()</a>, and <a class="el" href="scalar-fn-call_8cc_source.html#l00148">impala::ScalarFnCall::Open()</a>.</p> |
| |
| </div> |
| </div> |
| <a class="anchor" id="a704e9ee9339f503f27b0af463f6c97cf"></a> |
| <div class="memitem"> |
| <div class="memproto"> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> impala::Expr::type_</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">protected</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>analysis is done, types are fixed at this point </p> |
| |
| <p>Definition at line <a class="el" href="expr_8h_source.html#l00289">289</a> of file <a class="el" href="expr_8h_source.html">expr.h</a>.</p> |
| |
| <p>Referenced by <a class="el" href="literal_8cc_source.html#l00300">impala::Literal::DebugString()</a>, <a class="el" href="expr_8cc_source.html#l00385">DebugString()</a>, <a class="el" href="slot-ref_8cc_source.html#l00399">impala::SlotRef::GetBigIntVal()</a>, <a class="el" href="literal_8cc_source.html#l00262">impala::Literal::GetBigIntVal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00685">impala::ScalarFnCall::GetBigIntVal()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00303">impala::HiveUdfCall::GetBigIntVal()</a>, <a class="el" href="slot-ref_8cc_source.html#l00371">impala::SlotRef::GetBooleanVal()</a>, <a class="el" href="literal_8cc_source.html#l00242">impala::Literal::GetBooleanVal()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00283">impala::HiveUdfCall::GetBooleanVal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00653">impala::ScalarFnCall::GetBooleanVal()</a>, <a class="el" href="slot-ref_8cc_source.html#l00155">impala::SlotRef::GetCodegendComputeFn()</a>, <a class="el" href="literal_8cc_source.html#l00356">impala::Literal::GetCodegendComputeFn()</a>, <a class="el" href="expr_8cc_source.html#l00491">GetConstVal()</a>, <a class="el" href="slot-ref_8cc_source.html#l00446">impala::SlotRef::GetDecimalVal()</a>, <a class="el" href="literal_8cc_source.html#l00284">impala::Literal::GetDecimalVal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00725">impala::ScalarFnCall::GetDecimalVal()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00328">impala::HiveUdfCall::GetDecimalVal()</a>, <a class="el" href="slot-ref_8cc_source.html#l00413">impala::SlotRef::GetDoubleVal()</a>, <a class="el" href="literal_8cc_source.html#l00272">impala::Literal::GetDoubleVal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00701">impala::ScalarFnCall::GetDoubleVal()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00313">impala::HiveUdfCall::GetDoubleVal()</a>, <a class="el" href="slot-ref_8cc_source.html#l00406">impala::SlotRef::GetFloatVal()</a>, <a class="el" href="literal_8cc_source.html#l00267">impala::Literal::GetFloatVal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00693">impala::ScalarFnCall::GetFloatVal()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00308">impala::HiveUdfCall::GetFloatVal()</a>, <a class="el" href="slot-ref_8cc_source.html#l00392">impala::SlotRef::GetIntVal()</a>, <a class="el" href="literal_8cc_source.html#l00257">impala::Literal::GetIntVal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00677">impala::ScalarFnCall::GetIntVal()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00298">impala::HiveUdfCall::GetIntVal()</a>, <a class="el" href="slot-ref_8cc_source.html#l00385">impala::SlotRef::GetSmallIntVal()</a>, <a class="el" href="literal_8cc_source.html#l00252">impala::Literal::GetSmallIntVal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00669">impala::ScalarFnCall::GetSmallIntVal()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00293">impala::HiveUdfCall::GetSmallIntVal()</a>, <a class="el" href="slot-ref_8cc_source.html#l00420">impala::SlotRef::GetStringVal()</a>, <a class="el" href="literal_8cc_source.html#l00277">impala::Literal::GetStringVal()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00318">impala::HiveUdfCall::GetStringVal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00709">impala::ScalarFnCall::GetStringVal()</a>, <a class="el" href="slot-ref_8cc_source.html#l00436">impala::SlotRef::GetTimestampVal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00717">impala::ScalarFnCall::GetTimestampVal()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00323">impala::HiveUdfCall::GetTimestampVal()</a>, <a class="el" href="slot-ref_8cc_source.html#l00378">impala::SlotRef::GetTinyIntVal()</a>, <a class="el" href="literal_8cc_source.html#l00247">impala::Literal::GetTinyIntVal()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00288">impala::HiveUdfCall::GetTinyIntVal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00661">impala::ScalarFnCall::GetTinyIntVal()</a>, <a class="el" href="expr-context_8cc_source.html#l00126">impala::ExprContext::GetValue()</a>, <a class="el" href="literal_8cc_source.html#l00031">impala::Literal::Literal()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00148">impala::ScalarFnCall::Open()</a>, <a class="el" href="hive-udf-call_8cc_source.html#l00176">impala::HiveUdfCall::Open()</a>, <a class="el" href="scalar-fn-call_8cc_source.html#l00052">impala::ScalarFnCall::Prepare()</a>, and <a class="el" href="expr_8cc_source.html#l00350">Prepare()</a>.</p> |
| |
| </div> |
| </div> |
| <hr/>The documentation for this class was generated from the following files:<ul> |
| <li>be/src/exprs/<a class="el" href="expr_8h_source.html">expr.h</a></li> |
| <li>be/src/exprs/<a class="el" href="expr-ir_8cc_source.html">expr-ir.cc</a></li> |
| <li>be/src/exprs/<a class="el" href="expr_8cc_source.html">expr.cc</a></li> |
| </ul> |
| </div><!-- contents --> |
| </div><!-- doc-content --> |
| <!-- start footer part --> |
| <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> |
| <ul> |
| <li class="navelem"><a class="el" href="namespaceimpala.html">impala</a></li><li class="navelem"><a class="el" href="classimpala_1_1Expr.html">Expr</a></li> |
| <li class="footer">Generated on Thu May 7 2015 16:10:48 for Impala by |
| <a href="http://www.doxygen.org/index.html"> |
| <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li> |
| </ul> |
| </div> |
| </body> |
| </html> |