blob: e38380b00bb6cd520ef44bbf45b7ce621a5a2198 [file] [log] [blame]
<!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::DecimalOperators 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&#160;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&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;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_1DecimalOperators.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">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</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-types">Public Types</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pri-static-methods">Static Private Member Functions</a> &#124;
<a href="classimpala_1_1DecimalOperators-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">impala::DecimalOperators Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="decimal-operators_8h_source.html">decimal-operators.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for impala::DecimalOperators:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="classimpala_1_1DecimalOperators__coll__graph.svg" width="184" height="323"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:ade653da0502c3638fe9420f6d576b4b3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3">DecimalRoundOp</a> { <a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3ab6c9bf5fd54e9374e2707b6d983dca7c">TRUNCATE</a>,
<a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3ab202f8031fc0202b09872bf3f52a880e">FLOOR</a>,
<a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3ab920e69c12ec35c19eed14b64f71f352">CEIL</a>,
<a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3a9160a07b661cc42de411cbdde3acd286">ROUND</a>
}</td></tr>
<tr class="separator:ade653da0502c3638fe9420f6d576b4b3"><td class="memSeparator" colspan="2">&#160;</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:ade89ebfc9b476c6319df68699f810560"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#ade89ebfc9b476c6319df68699f810560">CastToDecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:ade89ebfc9b476c6319df68699f810560"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa12834bac1878f65d942db9f1bc76fd8"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#aa12834bac1878f65d942db9f1bc76fd8">CastToDecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1TinyIntVal.html">TinyIntVal</a> &amp;)</td></tr>
<tr class="separator:aa12834bac1878f65d942db9f1bc76fd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69dc6385e57192ff7954a1763ffde765"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a69dc6385e57192ff7954a1763ffde765">CastToDecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1SmallIntVal.html">SmallIntVal</a> &amp;)</td></tr>
<tr class="separator:a69dc6385e57192ff7954a1763ffde765"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d18b127c19a531ff8124d2b2948e356"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a6d18b127c19a531ff8124d2b2948e356">CastToDecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1IntVal.html">IntVal</a> &amp;)</td></tr>
<tr class="separator:a6d18b127c19a531ff8124d2b2948e356"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a191b524d54b408a0e14e65b6a5be4db5"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a191b524d54b408a0e14e65b6a5be4db5">CastToDecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1BigIntVal.html">BigIntVal</a> &amp;)</td></tr>
<tr class="separator:a191b524d54b408a0e14e65b6a5be4db5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a355600e27aaa6b4119ef90d8c0310f94"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a355600e27aaa6b4119ef90d8c0310f94">CastToDecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1FloatVal.html">FloatVal</a> &amp;)</td></tr>
<tr class="separator:a355600e27aaa6b4119ef90d8c0310f94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d77dc7ec23e47fee3b8d70edaac7b13"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a4d77dc7ec23e47fee3b8d70edaac7b13">CastToDecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DoubleVal.html">DoubleVal</a> &amp;)</td></tr>
<tr class="separator:a4d77dc7ec23e47fee3b8d70edaac7b13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bf901f3ccebf0648c08e3747b36791d"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a4bf901f3ccebf0648c08e3747b36791d">CastToDecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1StringVal.html">StringVal</a> &amp;)</td></tr>
<tr class="separator:a4bf901f3ccebf0648c08e3747b36791d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c3399e0afbc9bf46ce62b3987fc68c4"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1BooleanVal.html">BooleanVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a2c3399e0afbc9bf46ce62b3987fc68c4">CastToBooleanVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:a2c3399e0afbc9bf46ce62b3987fc68c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5c9ea0ac0af9e8cb11a7f51efcc59dd"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1TinyIntVal.html">TinyIntVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#af5c9ea0ac0af9e8cb11a7f51efcc59dd">CastToTinyIntVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:af5c9ea0ac0af9e8cb11a7f51efcc59dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea6e7221394a9d97f34de2ce8df28d48"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1SmallIntVal.html">SmallIntVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#aea6e7221394a9d97f34de2ce8df28d48">CastToSmallIntVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:aea6e7221394a9d97f34de2ce8df28d48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7017ed4675357b30d5cc28910fef40eb"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1IntVal.html">IntVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a7017ed4675357b30d5cc28910fef40eb">CastToIntVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:a7017ed4675357b30d5cc28910fef40eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a247df6aa663ebb16c31bff0508fdd8db"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1BigIntVal.html">BigIntVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a247df6aa663ebb16c31bff0508fdd8db">CastToBigIntVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:a247df6aa663ebb16c31bff0508fdd8db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a869783515173f4079143c4408d3b05ab"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1FloatVal.html">FloatVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a869783515173f4079143c4408d3b05ab">CastToFloatVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:a869783515173f4079143c4408d3b05ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b448be0dab44024985e95968908ee1c"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DoubleVal.html">DoubleVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a4b448be0dab44024985e95968908ee1c">CastToDoubleVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:a4b448be0dab44024985e95968908ee1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22f9f2a9a68a6492e5d26eb37c9700a5"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1StringVal.html">StringVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a22f9f2a9a68a6492e5d26eb37c9700a5">CastToStringVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:a22f9f2a9a68a6492e5d26eb37c9700a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae005a5e5c044bdbfead519f2124c3c76"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1TimestampVal.html">TimestampVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#ae005a5e5c044bdbfead519f2124c3c76">CastToTimestampVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:ae005a5e5c044bdbfead519f2124c3c76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d67413704fd75360b54f1ce98781d36"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a6d67413704fd75360b54f1ce98781d36">Add_DecimalVal_DecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:a6d67413704fd75360b54f1ce98781d36"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60bc8acb7593311516a6b127113f9346"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a60bc8acb7593311516a6b127113f9346">Subtract_DecimalVal_DecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:a60bc8acb7593311516a6b127113f9346"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3ec3149190f0d010eb4b91f35bfb277"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#ac3ec3149190f0d010eb4b91f35bfb277">Multiply_DecimalVal_DecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:ac3ec3149190f0d010eb4b91f35bfb277"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad9e180a8853d10b201e7d05913364d0"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#aad9e180a8853d10b201e7d05913364d0">Divide_DecimalVal_DecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:aad9e180a8853d10b201e7d05913364d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf29fd06cee85f0a29501fe24b80e1c0"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#aaf29fd06cee85f0a29501fe24b80e1c0">Mod_DecimalVal_DecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:aaf29fd06cee85f0a29501fe24b80e1c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a009e86a6a82ec70be807ed826937560b"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1BooleanVal.html">BooleanVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a009e86a6a82ec70be807ed826937560b">Eq_DecimalVal_DecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:a009e86a6a82ec70be807ed826937560b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa60fbfbed7dd8b6859052ecf7462be7a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1BooleanVal.html">BooleanVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#aa60fbfbed7dd8b6859052ecf7462be7a">Ne_DecimalVal_DecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:aa60fbfbed7dd8b6859052ecf7462be7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8951fe9612baa943b404c0276c8ff7a2"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1BooleanVal.html">BooleanVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a8951fe9612baa943b404c0276c8ff7a2">Ge_DecimalVal_DecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:a8951fe9612baa943b404c0276c8ff7a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeac436b47849abdfab43e58a183c3642"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1BooleanVal.html">BooleanVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#aeac436b47849abdfab43e58a183c3642">Gt_DecimalVal_DecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:aeac436b47849abdfab43e58a183c3642"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acecfc1f61cb43d994e96158b9c46dfb6"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1BooleanVal.html">BooleanVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#acecfc1f61cb43d994e96158b9c46dfb6">Le_DecimalVal_DecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:acecfc1f61cb43d994e96158b9c46dfb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac26a997dabc466ad1c06c5833c3f45c5"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1BooleanVal.html">BooleanVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#ac26a997dabc466ad1c06c5833c3f45c5">Lt_DecimalVal_DecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;)</td></tr>
<tr class="separator:ac26a997dabc466ad1c06c5833c3f45c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a891d69d50e0ab04f2a10ead145c98178"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a891d69d50e0ab04f2a10ead145c98178">RoundDecimal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *context, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;val, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;val_type, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;output_type, const <a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3">DecimalRoundOp</a> &amp;op)</td></tr>
<tr class="separator:a891d69d50e0ab04f2a10ead145c98178"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1166c976fd16cb6c1d95ede179ef6af7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a1166c976fd16cb6c1d95ede179ef6af7">RoundDecimal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *context, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;val, const <a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3">DecimalRoundOp</a> &amp;op)</td></tr>
<tr class="separator:a1166c976fd16cb6c1d95ede179ef6af7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bd348a888e3caeea0d7411ee4f0b081"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a4bd348a888e3caeea0d7411ee4f0b081">RoundDecimalNegativeScale</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *context, const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;val, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;val_type, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;output_type, const <a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3">DecimalRoundOp</a> &amp;op, int64_t rounding_scale)</td></tr>
<tr class="separator:a4bd348a888e3caeea0d7411ee4f0b081"><td class="memSeparator" colspan="2">&#160;</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:a55fde122b9e01ea5780b36ce7124b0af"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a55fde122b9e01ea5780b36ce7124b0af">IntToDecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *context, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;type, int64_t val)</td></tr>
<tr class="memdesc:a55fde122b9e01ea5780b36ce7124b0af"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts 'val' to a DecimalVal according to 'type'. 'type' must be a decimal type. <a href="#a55fde122b9e01ea5780b36ce7124b0af">More...</a><br/></td></tr>
<tr class="separator:a55fde122b9e01ea5780b36ce7124b0af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cd2c94e82b561b816aa3792085d2bd3"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a8cd2c94e82b561b816aa3792085d2bd3">FloatToDecimalVal</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *context, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;type, double val)</td></tr>
<tr class="separator:a8cd2c94e82b561b816aa3792085d2bd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac675ca83318d201d1df5053aba6ad06"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#aac675ca83318d201d1df5053aba6ad06">ScaleDecimalValue</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *context, const <a class="el" href="namespaceimpala.html#a01fd8e7ac4ce56790dd7490d7ac97415">Decimal4Value</a> &amp;val, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;val_type, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;output_type)</td></tr>
<tr class="memdesc:aac675ca83318d201d1df5053aba6ad06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the value of 'val' scaled to 'output_type'. <a href="#aac675ca83318d201d1df5053aba6ad06">More...</a><br/></td></tr>
<tr class="separator:aac675ca83318d201d1df5053aba6ad06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61aa34a4a5499282d270bbcbb5dad253"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a61aa34a4a5499282d270bbcbb5dad253">ScaleDecimalValue</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *context, const <a class="el" href="namespaceimpala.html#a5f45e6b01e2d7c171fe0d97db9b19c0d">Decimal8Value</a> &amp;val, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;val_type, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;output_type)</td></tr>
<tr class="separator:a61aa34a4a5499282d270bbcbb5dad253"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a5108a2d35f3efd1e17fb60c7773e5f"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a0a5108a2d35f3efd1e17fb60c7773e5f">ScaleDecimalValue</a> (<a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *context, const <a class="el" href="namespaceimpala.html#a18dd78cbfcca2beedefd11d8cdcedadc">Decimal16Value</a> &amp;val, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;val_type, const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;output_type)</td></tr>
<tr class="separator:a0a5108a2d35f3efd1e17fb60c7773e5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ef13906917d59ebd3ef51b4fc071e00"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a4ef13906917d59ebd3ef51b4fc071e00"><td class="memTemplItemLeft" align="right" valign="top">static T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classimpala_1_1DecimalOperators.html#a4ef13906917d59ebd3ef51b4fc071e00">RoundDelta</a> (const <a class="el" href="classimpala_1_1DecimalValue.html">DecimalValue</a>&lt; T &gt; &amp;v, int src_scale, int target_scale, const <a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3">DecimalRoundOp</a> &amp;op)</td></tr>
<tr class="separator:a4ef13906917d59ebd3ef51b4fc071e00"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Implementation of the decimal operators. These include the cast, arithmetic and binary operators. </p>
<p>Definition at line <a class="el" href="decimal-operators_8h_source.html#l00033">33</a> of file <a class="el" href="decimal-operators_8h_source.html">decimal-operators.h</a>.</p>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a class="anchor" id="ade653da0502c3638fe9420f6d576b4b3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3">impala::DecimalOperators::DecimalRoundOp</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>The rounding rule when converting decimals. These only apply going from a higher scale to a lower one. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ade653da0502c3638fe9420f6d576b4b3ab6c9bf5fd54e9374e2707b6d983dca7c"></a>TRUNCATE</em>&#160;</td><td class="fielddoc">
<p>Additional digits are dropped. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ade653da0502c3638fe9420f6d576b4b3ab202f8031fc0202b09872bf3f52a880e"></a>FLOOR</em>&#160;</td><td class="fielddoc">
<p>Returns largest value not greater than the value. (digits are dropped for positive values and rounded away from zero for negative values) </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ade653da0502c3638fe9420f6d576b4b3ab920e69c12ec35c19eed14b64f71f352"></a>CEIL</em>&#160;</td><td class="fielddoc">
<p>Returns smallest value not smaller than the value. (rounded away from zero for positive values and extra digits dropped for negative values) </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="ade653da0502c3638fe9420f6d576b4b3a9160a07b661cc42de411cbdde3acd286"></a>ROUND</em>&#160;</td><td class="fielddoc">
<p>Rounded towards zero if the extra digits are less than .5 and away from zero otherwise. </p>
</td></tr>
</table>
<p>Definition at line <a class="el" href="decimal-operators_8h_source.html#l00081">81</a> of file <a class="el" href="decimal-operators_8h_source.html">decimal-operators.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a6d67413704fd75360b54f1ce98781d36"></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="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> impala::DecimalOperators::Add_DecimalVal_DecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a247df6aa663ebb16c31bff0508fdd8db"></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="structimpala__udf_1_1BigIntVal.html">BigIntVal</a> impala::DecimalOperators::CastToBigIntVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a2c3399e0afbc9bf46ce62b3987fc68c4"></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> impala::DecimalOperators::CastToBooleanVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname"><em>val</em>&#160;</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>Definition at line <a class="el" href="decimal-operators_8cc_source.html#l00534">534</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="udf_8cc_source.html#l00425">impala_udf::FunctionContext::GetArgType()</a>, <a class="el" href="types_8h_source.html#l00178">impala::ColumnType::GetByteSize()</a>, <a class="el" href="udf_8h_source.html#l00359">impala_udf::AnyVal::is_null</a>, <a class="el" href="types_8h_source.html#l00060">impala::ColumnType::type</a>, <a class="el" href="types_8h_source.html#l00042">impala::TYPE_DECIMAL</a>, <a class="el" href="anyval-util_8cc_source.html#l00101">impala::AnyValUtil::TypeDescToColumnType()</a>, <a class="el" href="udf_8h_source.html#l00572">impala_udf::DecimalVal::val16</a>, <a class="el" href="udf_8h_source.html#l00570">impala_udf::DecimalVal::val4</a>, and <a class="el" href="udf_8h_source.html#l00571">impala_udf::DecimalVal::val8</a>.</p>
</div>
</div>
<a class="anchor" id="ade89ebfc9b476c6319df68699f810560"></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> impala::DecimalOperators::CastToDecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname"><em>val</em>&#160;</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>Definition at line <a class="el" href="decimal-operators_8cc_source.html#l00435">435</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="decimal-operators_8cc_source.html#l00377">RoundDecimal()</a>, and <a class="el" href="decimal-operators_8h_source.html#l00083">TRUNCATE</a>.</p>
<p>Referenced by <a class="el" href="expr_8cc_source.html#l00470">impala::Expr::InitBuiltinsDummy()</a>.</p>
</div>
</div>
<a class="anchor" id="aa12834bac1878f65d942db9f1bc76fd8"></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="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> impala::DecimalOperators::CastToDecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1TinyIntVal.html">TinyIntVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a69dc6385e57192ff7954a1763ffde765"></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="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> impala::DecimalOperators::CastToDecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1SmallIntVal.html">SmallIntVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a6d18b127c19a531ff8124d2b2948e356"></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="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> impala::DecimalOperators::CastToDecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1IntVal.html">IntVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a191b524d54b408a0e14e65b6a5be4db5"></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="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> impala::DecimalOperators::CastToDecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1BigIntVal.html">BigIntVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a355600e27aaa6b4119ef90d8c0310f94"></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="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> impala::DecimalOperators::CastToDecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1FloatVal.html">FloatVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a4d77dc7ec23e47fee3b8d70edaac7b13"></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="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> impala::DecimalOperators::CastToDecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DoubleVal.html">DoubleVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a4bf901f3ccebf0648c08e3747b36791d"></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> impala::DecimalOperators::CastToDecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1StringVal.html">StringVal</a> &amp;&#160;</td>
<td class="paramname"><em>val</em>&#160;</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>Definition at line <a class="el" href="decimal-operators_8cc_source.html#l00440">440</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="types_8h_source.html#l00178">impala::ColumnType::GetByteSize()</a>, <a class="el" href="udf-ir_8cc_source.html#l00034">impala_udf::FunctionContext::GetReturnType()</a>, <a class="el" href="udf_8h_source.html#l00359">impala_udf::AnyVal::is_null</a>, <a class="el" href="udf_8h_source.html#l00522">impala_udf::StringVal::len</a>, <a class="el" href="string-parser_8h_source.html#l00052">impala::StringParser::PARSE_SUCCESS</a>, <a class="el" href="string-parser_8h_source.html#l00055">impala::StringParser::PARSE_UNDERFLOW</a>, <a class="el" href="udf_8h_source.html#l00523">impala_udf::StringVal::ptr</a>, <a class="el" href="anyval-util_8cc_source.html#l00101">impala::AnyValUtil::TypeDescToColumnType()</a>, and <a class="el" href="decimal-value_8h_source.html#l00285">impala::DecimalValue&lt; T &gt;::value()</a>.</p>
</div>
</div>
<a class="anchor" id="a4b448be0dab44024985e95968908ee1c"></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="structimpala__udf_1_1DoubleVal.html">DoubleVal</a> impala::DecimalOperators::CastToDoubleVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a869783515173f4079143c4408d3b05ab"></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="structimpala__udf_1_1FloatVal.html">FloatVal</a> impala::DecimalOperators::CastToFloatVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a7017ed4675357b30d5cc28910fef40eb"></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="structimpala__udf_1_1IntVal.html">IntVal</a> impala::DecimalOperators::CastToIntVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="aea6e7221394a9d97f34de2ce8df28d48"></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="structimpala__udf_1_1SmallIntVal.html">SmallIntVal</a> impala::DecimalOperators::CastToSmallIntVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a22f9f2a9a68a6492e5d26eb37c9700a5"></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> impala::DecimalOperators::CastToStringVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname"><em>val</em>&#160;</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>Definition at line <a class="el" href="decimal-operators_8cc_source.html#l00478">478</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="udf_8cc_source.html#l00425">impala_udf::FunctionContext::GetArgType()</a>, <a class="el" href="types_8h_source.html#l00178">impala::ColumnType::GetByteSize()</a>, <a class="el" href="udf_8h_source.html#l00359">impala_udf::AnyVal::is_null</a>, <a class="el" href="decimal-value_8h_source.html#l00449">impala::DecimalValue&lt; T &gt;::ToString()</a>, <a class="el" href="anyval-util_8cc_source.html#l00101">impala::AnyValUtil::TypeDescToColumnType()</a>, <a class="el" href="udf_8h_source.html#l00572">impala_udf::DecimalVal::val16</a>, <a class="el" href="udf_8h_source.html#l00570">impala_udf::DecimalVal::val4</a>, and <a class="el" href="udf_8h_source.html#l00571">impala_udf::DecimalVal::val8</a>.</p>
</div>
</div>
<a class="anchor" id="ae005a5e5c044bdbfead519f2124c3c76"></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> impala::DecimalOperators::CastToTimestampVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname"><em>val</em>&#160;</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>Definition at line <a class="el" href="decimal-operators_8cc_source.html#l00502">502</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="udf_8cc_source.html#l00425">impala_udf::FunctionContext::GetArgType()</a>, <a class="el" href="types_8h_source.html#l00178">impala::ColumnType::GetByteSize()</a>, <a class="el" href="udf_8h_source.html#l00359">impala_udf::AnyVal::is_null</a>, <a class="el" href="decimal-value_8h_source.html#l00299">impala::DecimalValue&lt; T &gt;::ToDouble()</a>, <a class="el" href="timestamp-value_8h_source.html#l00121">impala::TimestampValue::ToTimestampVal()</a>, <a class="el" href="types_8h_source.html#l00060">impala::ColumnType::type</a>, <a class="el" href="types_8h_source.html#l00042">impala::TYPE_DECIMAL</a>, <a class="el" href="anyval-util_8cc_source.html#l00101">impala::AnyValUtil::TypeDescToColumnType()</a>, <a class="el" href="udf_8h_source.html#l00572">impala_udf::DecimalVal::val16</a>, <a class="el" href="udf_8h_source.html#l00570">impala_udf::DecimalVal::val4</a>, and <a class="el" href="udf_8h_source.html#l00571">impala_udf::DecimalVal::val8</a>.</p>
</div>
</div>
<a class="anchor" id="af5c9ea0ac0af9e8cb11a7f51efcc59dd"></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="structimpala__udf_1_1TinyIntVal.html">TinyIntVal</a> impala::DecimalOperators::CastToTinyIntVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="aad9e180a8853d10b201e7d05913364d0"></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="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> impala::DecimalOperators::Divide_DecimalVal_DecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a009e86a6a82ec70be807ed826937560b"></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="structimpala__udf_1_1BooleanVal.html">BooleanVal</a> impala::DecimalOperators::Eq_DecimalVal_DecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a8cd2c94e82b561b816aa3792085d2bd3"></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> impala::DecimalOperators::FloatToDecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>val</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><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="decimal-operators_8cc_source.html#l00066">66</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="decimal-value_8h_source.html#l00052">impala::DecimalValue&lt; int32_t &gt;::FromDouble()</a>, <a class="el" href="decimal-value_8h_source.html#l00052">impala::DecimalValue&lt; int128_t &gt;::FromDouble()</a>, <a class="el" href="decimal-value_8h_source.html#l00052">impala::DecimalValue&lt; int64_t &gt;::FromDouble()</a>, <a class="el" href="types_8h_source.html#l00178">impala::ColumnType::GetByteSize()</a>, <a class="el" href="decimal-operators_8cc_source.html#l00032">RETURN_IF_OVERFLOW</a>, <a class="el" href="types_8h_source.html#l00060">impala::ColumnType::type</a>, <a class="el" href="types_8h_source.html#l00042">impala::TYPE_DECIMAL</a>, and <a class="el" href="decimal-value_8h_source.html#l00285">impala::DecimalValue&lt; T &gt;::value()</a>.</p>
</div>
</div>
<a class="anchor" id="a8951fe9612baa943b404c0276c8ff7a2"></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="structimpala__udf_1_1BooleanVal.html">BooleanVal</a> impala::DecimalOperators::Ge_DecimalVal_DecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="aeac436b47849abdfab43e58a183c3642"></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="structimpala__udf_1_1BooleanVal.html">BooleanVal</a> impala::DecimalOperators::Gt_DecimalVal_DecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a55fde122b9e01ea5780b36ce7124b0af"></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> impala::DecimalOperators::IntToDecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64_t&#160;</td>
<td class="paramname"><em>val</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Converts 'val' to a DecimalVal according to 'type'. 'type' must be a decimal type. </p>
<p>Definition at line <a class="el" href="decimal-operators_8cc_source.html#l00040">40</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="decimal-value_8h_source.html#l00067">impala::DecimalValue&lt; int32_t &gt;::FromInt()</a>, <a class="el" href="decimal-value_8h_source.html#l00067">impala::DecimalValue&lt; int128_t &gt;::FromInt()</a>, <a class="el" href="decimal-value_8h_source.html#l00067">impala::DecimalValue&lt; int64_t &gt;::FromInt()</a>, <a class="el" href="types_8h_source.html#l00178">impala::ColumnType::GetByteSize()</a>, <a class="el" href="decimal-operators_8cc_source.html#l00032">RETURN_IF_OVERFLOW</a>, <a class="el" href="types_8h_source.html#l00060">impala::ColumnType::type</a>, <a class="el" href="types_8h_source.html#l00042">impala::TYPE_DECIMAL</a>, and <a class="el" href="decimal-value_8h_source.html#l00285">impala::DecimalValue&lt; T &gt;::value()</a>.</p>
</div>
</div>
<a class="anchor" id="acecfc1f61cb43d994e96158b9c46dfb6"></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="structimpala__udf_1_1BooleanVal.html">BooleanVal</a> impala::DecimalOperators::Le_DecimalVal_DecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="ac26a997dabc466ad1c06c5833c3f45c5"></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="structimpala__udf_1_1BooleanVal.html">BooleanVal</a> impala::DecimalOperators::Lt_DecimalVal_DecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="aaf29fd06cee85f0a29501fe24b80e1c0"></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="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> impala::DecimalOperators::Mod_DecimalVal_DecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="ac3ec3149190f0d010eb4b91f35bfb277"></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="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> impala::DecimalOperators::Multiply_DecimalVal_DecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="aa60fbfbed7dd8b6859052ecf7462be7a"></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="structimpala__udf_1_1BooleanVal.html">BooleanVal</a> impala::DecimalOperators::Ne_DecimalVal_DecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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="a891d69d50e0ab04f2a10ead145c98178"></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> impala::DecimalOperators::RoundDecimal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname"><em>val</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>val_type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>output_type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3">DecimalRoundOp</a> &amp;&#160;</td>
<td class="paramname"><em>op</em>&#160;</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>Evaluates a round from 'val' and returns the result, using the rounding rule of 'type'. </p>
<p>Definition at line <a class="el" href="decimal-operators_8cc_source.html#l00377">377</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="types_8h_source.html#l00178">impala::ColumnType::GetByteSize()</a>, <a class="el" href="udf_8h_source.html#l00359">impala_udf::AnyVal::is_null</a>, <a class="el" href="decimal-operators_8h_source.html#l00147">RoundDelta()</a>, <a class="el" href="types_8h_source.html#l00068">impala::ColumnType::scale</a>, <a class="el" href="decimal-operators_8cc_source.html#l00099">ScaleDecimalValue()</a>, <a class="el" href="types_8h_source.html#l00060">impala::ColumnType::type</a>, <a class="el" href="types_8h_source.html#l00042">impala::TYPE_DECIMAL</a>, <a class="el" href="udf_8h_source.html#l00572">impala_udf::DecimalVal::val16</a>, <a class="el" href="udf_8h_source.html#l00570">impala_udf::DecimalVal::val4</a>, and <a class="el" href="udf_8h_source.html#l00571">impala_udf::DecimalVal::val8</a>.</p>
<p>Referenced by <a class="el" href="decimal-operators_8cc_source.html#l00435">CastToDecimalVal()</a>, <a class="el" href="decimal-functions_8cc_source.html#l00051">impala::DecimalFunctions::Ceil()</a>, <a class="el" href="decimal-functions_8cc_source.html#l00055">impala::DecimalFunctions::Floor()</a>, <a class="el" href="decimal-functions_8cc_source.html#l00059">impala::DecimalFunctions::Round()</a>, <a class="el" href="decimal-operators_8cc_source.html#l00425">RoundDecimal()</a>, <a class="el" href="decimal-functions_8cc_source.html#l00063">impala::DecimalFunctions::RoundTo()</a>, and <a class="el" href="decimal-functions_8cc_source.html#l00098">impala::DecimalFunctions::Truncate()</a>.</p>
</div>
</div>
<a class="anchor" id="a1166c976fd16cb6c1d95ede179ef6af7"></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> impala::DecimalOperators::RoundDecimal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname"><em>val</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3">DecimalRoundOp</a> &amp;&#160;</td>
<td class="paramname"><em>op</em>&#160;</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>Same as above but infers 'val_type' from the first argument type and 'output_type' from the return type according to 'context'. </p>
<p>Definition at line <a class="el" href="decimal-operators_8cc_source.html#l00425">425</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="udf_8cc_source.html#l00425">impala_udf::FunctionContext::GetArgType()</a>, <a class="el" href="udf-ir_8cc_source.html#l00034">impala_udf::FunctionContext::GetReturnType()</a>, <a class="el" href="decimal-operators_8cc_source.html#l00377">RoundDecimal()</a>, and <a class="el" href="anyval-util_8cc_source.html#l00101">impala::AnyValUtil::TypeDescToColumnType()</a>.</p>
</div>
</div>
<a class="anchor" id="a4bd348a888e3caeea0d7411ee4f0b081"></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> impala::DecimalOperators::RoundDecimalNegativeScale </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname"><em>val</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>val_type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>output_type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3">DecimalRoundOp</a> &amp;&#160;</td>
<td class="paramname"><em>op</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int64_t&#160;</td>
<td class="paramname"><em>rounding_scale</em>&#160;</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>Handles the case of rounding to a negative scale. This means rounding to a digit before the decimal point. rounding_scale is the number of digits before the decimal to round to. TODO: can this code be reorganized to combine the two version of <a class="el" href="classimpala_1_1DecimalOperators.html#a891d69d50e0ab04f2a10ead145c98178">RoundDecimal()</a>? The implementation is similar but not quite the same. This code is, in general, harder to read because there are multiple input/output types to handle and all combinations are valid. Another option might be to use templates to generate each pair: Decimal4Value Round(const Decimal4Value&amp;); Decimal8Value Round(const Decimal4Value&amp;); Decimal4Value Round(const Decimal8Value&amp;); etc. </p>
<p>Definition at line <a class="el" href="decimal-operators_8cc_source.html#l00306">306</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="multi-precision_8h_source.html#l00113">impala::abs()</a>, <a class="el" href="udf_8h_source.html#l00359">impala_udf::AnyVal::is_null</a>, <a class="el" href="decimal-util_8h_source.html#l00032">impala::DecimalUtil::MAX_UNSCALED_DECIMAL</a>, <a class="el" href="udf_8h_source.html#l00572">impala_udf::DecimalVal::val16</a>, <a class="el" href="udf_8h_source.html#l00570">impala_udf::DecimalVal::val4</a>, <a class="el" href="udf_8h_source.html#l00571">impala_udf::DecimalVal::val8</a>, and <a class="el" href="decimal-value_8h_source.html#l00285">impala::DecimalValue&lt; T &gt;::value()</a>.</p>
<p>Referenced by <a class="el" href="decimal-functions_8cc_source.html#l00063">impala::DecimalFunctions::RoundTo()</a>.</p>
</div>
</div>
<a class="anchor" id="a4ef13906917d59ebd3ef51b4fc071e00"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static T impala::DecimalOperators::RoundDelta </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classimpala_1_1DecimalValue.html">DecimalValue</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>v</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>src_scale</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>target_scale</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classimpala_1_1DecimalOperators.html#ade653da0502c3638fe9420f6d576b4b3">DecimalRoundOp</a> &amp;&#160;</td>
<td class="paramname"><em>op</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the delta that needs to be added when the source decimal is rounded to target scale. Returns 0, if no rounding is necessary, or -1/1 if rounding is required. </p>
<p>Definition at line <a class="el" href="decimal-operators_8h_source.html#l00147">147</a> of file <a class="el" href="decimal-operators_8h_source.html">decimal-operators.h</a>.</p>
<p>References <a class="el" href="multi-precision_8h_source.html#l00113">impala::abs()</a>, and <a class="el" href="decimal-value_8h_source.html#l00285">impala::DecimalValue&lt; T &gt;::value()</a>.</p>
<p>Referenced by <a class="el" href="decimal-operators_8cc_source.html#l00377">RoundDecimal()</a>.</p>
</div>
</div>
<a class="anchor" id="aac675ca83318d201d1df5053aba6ad06"></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> impala::DecimalOperators::ScaleDecimalValue </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespaceimpala.html#a01fd8e7ac4ce56790dd7490d7ac97415">Decimal4Value</a> &amp;&#160;</td>
<td class="paramname"><em>val</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>val_type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>output_type</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the value of 'val' scaled to 'output_type'. </p>
<p>Definition at line <a class="el" href="decimal-operators_8cc_source.html#l00099">99</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="types_8h_source.html#l00178">impala::ColumnType::GetByteSize()</a>, <a class="el" href="decimal-operators_8cc_source.html#l00032">RETURN_IF_OVERFLOW</a>, <a class="el" href="decimal-value_8h_source.html#l00119">impala::DecimalValue&lt; T &gt;::ScaleTo()</a>, <a class="el" href="decimal-value_8h_source.html#l00361">impala::ToDecimal16()</a>, <a class="el" href="decimal-value_8h_source.html#l00358">impala::ToDecimal8()</a>, <a class="el" href="types_8h_source.html#l00060">impala::ColumnType::type</a>, <a class="el" href="types_8h_source.html#l00042">impala::TYPE_DECIMAL</a>, and <a class="el" href="decimal-value_8h_source.html#l00285">impala::DecimalValue&lt; T &gt;::value()</a>.</p>
<p>Referenced by <a class="el" href="decimal-operators_8cc_source.html#l00377">RoundDecimal()</a>.</p>
</div>
</div>
<a class="anchor" id="a61aa34a4a5499282d270bbcbb5dad253"></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> impala::DecimalOperators::ScaleDecimalValue </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespaceimpala.html#a5f45e6b01e2d7c171fe0d97db9b19c0d">Decimal8Value</a> &amp;&#160;</td>
<td class="paramname"><em>val</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>val_type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>output_type</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><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="decimal-operators_8cc_source.html#l00129">129</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="types_8h_source.html#l00178">impala::ColumnType::GetByteSize()</a>, <a class="el" href="decimal-operators_8cc_source.html#l00032">RETURN_IF_OVERFLOW</a>, <a class="el" href="decimal-value_8h_source.html#l00119">impala::DecimalValue&lt; T &gt;::ScaleTo()</a>, <a class="el" href="decimal-value_8h_source.html#l00361">impala::ToDecimal16()</a>, <a class="el" href="decimal-value_8h_source.html#l00355">impala::ToDecimal4()</a>, <a class="el" href="types_8h_source.html#l00060">impala::ColumnType::type</a>, <a class="el" href="types_8h_source.html#l00042">impala::TYPE_DECIMAL</a>, and <a class="el" href="decimal-value_8h_source.html#l00285">impala::DecimalValue&lt; T &gt;::value()</a>.</p>
</div>
</div>
<a class="anchor" id="a0a5108a2d35f3efd1e17fb60c7773e5f"></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> impala::DecimalOperators::ScaleDecimalValue </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="namespaceimpala.html#a18dd78cbfcca2beedefd11d8cdcedadc">Decimal16Value</a> &amp;&#160;</td>
<td class="paramname"><em>val</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>val_type</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala_1_1ColumnType.html">ColumnType</a> &amp;&#160;</td>
<td class="paramname"><em>output_type</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><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="decimal-operators_8cc_source.html#l00159">159</a> of file <a class="el" href="decimal-operators_8cc_source.html">decimal-operators.cc</a>.</p>
<p>References <a class="el" href="types_8h_source.html#l00178">impala::ColumnType::GetByteSize()</a>, <a class="el" href="decimal-operators_8cc_source.html#l00032">RETURN_IF_OVERFLOW</a>, <a class="el" href="decimal-value_8h_source.html#l00119">impala::DecimalValue&lt; T &gt;::ScaleTo()</a>, <a class="el" href="decimal-value_8h_source.html#l00355">impala::ToDecimal4()</a>, <a class="el" href="decimal-value_8h_source.html#l00358">impala::ToDecimal8()</a>, <a class="el" href="types_8h_source.html#l00060">impala::ColumnType::type</a>, <a class="el" href="types_8h_source.html#l00042">impala::TYPE_DECIMAL</a>, and <a class="el" href="decimal-value_8h_source.html#l00285">impala::DecimalValue&lt; T &gt;::value()</a>.</p>
</div>
</div>
<a class="anchor" id="a60bc8acb7593311516a6b127113f9346"></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="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> impala::DecimalOperators::Subtract_DecimalVal_DecimalVal </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classimpala__udf_1_1FunctionContext.html">FunctionContext</a> *&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="structimpala__udf_1_1DecimalVal.html">DecimalVal</a> &amp;&#160;</td>
<td class="paramname">&#160;</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>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>be/src/exprs/<a class="el" href="decimal-operators_8h_source.html">decimal-operators.h</a></li>
<li>be/src/exprs/<a class="el" href="decimal-operators_8cc_source.html">decimal-operators.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_1DecimalOperators.html">DecimalOperators</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>