blob: 3c7ab5e16b524ff89566d39565df6bdf8d92ab21 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Crashpad: crashpad::internal::CheckedAddressRangeGeneric&lt; ValueType, SizeType &gt; Class Template 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="crashpad_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 id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Crashpad
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</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 id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespacecrashpad.html">crashpad</a></li><li class="navelem"><a class="el" href="namespacecrashpad_1_1internal.html">internal</a></li><li class="navelem"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html">CheckedAddressRangeGeneric</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">crashpad::internal::CheckedAddressRangeGeneric&lt; ValueType, SizeType &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Ensures that a range, composed of a base and a size, does not overflow the pointer type of the process it describes a range in.
<a href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#details">More...</a></p>
<p><code>#include &quot;util/numeric/checked_address_range.h&quot;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a6356cef12e9b42af786cfb0f73d200f5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a6356cef12e9b42af786cfb0f73d200f5">CheckedAddressRangeGeneric</a> ()</td></tr>
<tr class="memdesc:a6356cef12e9b42af786cfb0f73d200f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes a default range. <a href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a6356cef12e9b42af786cfb0f73d200f5">More...</a><br /></td></tr>
<tr class="separator:a6356cef12e9b42af786cfb0f73d200f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2690036082f8e3b953d52d6d7beef3e0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a2690036082f8e3b953d52d6d7beef3e0">CheckedAddressRangeGeneric</a> (bool is_64_bit, ValueType base, SizeType size)</td></tr>
<tr class="memdesc:a2690036082f8e3b953d52d6d7beef3e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes a range. <a href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a2690036082f8e3b953d52d6d7beef3e0">More...</a><br /></td></tr>
<tr class="separator:a2690036082f8e3b953d52d6d7beef3e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae72bd91632c64a7a2677aa87a780e856"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#ae72bd91632c64a7a2677aa87a780e856">SetRange</a> (bool is_64_bit, ValueType base, SizeType size)</td></tr>
<tr class="memdesc:ae72bd91632c64a7a2677aa87a780e856"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets a range’s fields. <a href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#ae72bd91632c64a7a2677aa87a780e856">More...</a><br /></td></tr>
<tr class="separator:ae72bd91632c64a7a2677aa87a780e856"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ee265f81eab405b7c7d47a819f19065"><td class="memItemLeft" align="right" valign="top"><a id="a4ee265f81eab405b7c7d47a819f19065"></a>
ValueType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a4ee265f81eab405b7c7d47a819f19065">Base</a> () const</td></tr>
<tr class="memdesc:a4ee265f81eab405b7c7d47a819f19065"><td class="mdescLeft">&#160;</td><td class="mdescRight">The range’s base address. <br /></td></tr>
<tr class="separator:a4ee265f81eab405b7c7d47a819f19065"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaaea0395d445220754c02667af5d6e84"><td class="memItemLeft" align="right" valign="top"><a id="aaaea0395d445220754c02667af5d6e84"></a>
SizeType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#aaaea0395d445220754c02667af5d6e84">Size</a> () const</td></tr>
<tr class="memdesc:aaaea0395d445220754c02667af5d6e84"><td class="mdescLeft">&#160;</td><td class="mdescRight">The range’s size. <br /></td></tr>
<tr class="separator:aaaea0395d445220754c02667af5d6e84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c980aecd7633d3aa8f425ae45132e63"><td class="memItemLeft" align="right" valign="top"><a id="a2c980aecd7633d3aa8f425ae45132e63"></a>
ValueType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a2c980aecd7633d3aa8f425ae45132e63">End</a> () const</td></tr>
<tr class="memdesc:a2c980aecd7633d3aa8f425ae45132e63"><td class="mdescLeft">&#160;</td><td class="mdescRight">The range’s end address (its base address plus its size). <br /></td></tr>
<tr class="separator:a2c980aecd7633d3aa8f425ae45132e63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a237cf2b69cfecf358f68993497ccbdc7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a237cf2b69cfecf358f68993497ccbdc7">IsValid</a> () const</td></tr>
<tr class="memdesc:a237cf2b69cfecf358f68993497ccbdc7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the validity of the address range. <a href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a237cf2b69cfecf358f68993497ccbdc7">More...</a><br /></td></tr>
<tr class="separator:a237cf2b69cfecf358f68993497ccbdc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acf514946362dcfa9ff12a714dfbf88c4"><td class="memItemLeft" align="right" valign="top"><a id="acf514946362dcfa9ff12a714dfbf88c4"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#acf514946362dcfa9ff12a714dfbf88c4">Is64Bit</a> () const</td></tr>
<tr class="memdesc:acf514946362dcfa9ff12a714dfbf88c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether this range refers to a 64-bit process. <br /></td></tr>
<tr class="separator:acf514946362dcfa9ff12a714dfbf88c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2efcf0521beb3dee7494bc4f868f5571"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a2efcf0521beb3dee7494bc4f868f5571">ContainsValue</a> (const ValueType value) const</td></tr>
<tr class="memdesc:a2efcf0521beb3dee7494bc4f868f5571"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether the address range contains another address. <a href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a2efcf0521beb3dee7494bc4f868f5571">More...</a><br /></td></tr>
<tr class="separator:a2efcf0521beb3dee7494bc4f868f5571"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4dd85d91cc54e85241522eb4065829cb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a4dd85d91cc54e85241522eb4065829cb">ContainsRange</a> (const <a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html">CheckedAddressRangeGeneric</a> &amp;that) const</td></tr>
<tr class="memdesc:a4dd85d91cc54e85241522eb4065829cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether the address range contains another address range. <a href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a4dd85d91cc54e85241522eb4065829cb">More...</a><br /></td></tr>
<tr class="separator:a4dd85d91cc54e85241522eb4065829cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a112f17bdb6885c0938863d6717f7f5d6"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a112f17bdb6885c0938863d6717f7f5d6">AsString</a> () const</td></tr>
<tr class="memdesc:a112f17bdb6885c0938863d6717f7f5d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a string describing the address range. <a href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a112f17bdb6885c0938863d6717f7f5d6">More...</a><br /></td></tr>
<tr class="separator:a112f17bdb6885c0938863d6717f7f5d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;class ValueType, class SizeType&gt;<br />
class crashpad::internal::CheckedAddressRangeGeneric&lt; ValueType, SizeType &gt;</h3>
<p>Ensures that a range, composed of a base and a size, does not overflow the pointer type of the process it describes a range in. </p>
<p>This class checks bases of type <code>ValueType</code> and sizes of type <code>SizeType</code> against a process whose pointer type is either 32 or 64 bits wide.</p>
<p>Aside from varying the overall range on the basis of a process’ pointer type width, this class functions very similarly to <a class="el" href="classcrashpad_1_1CheckedRange.html" title="Ensures that a range, composed of a base and size, does not overflow its data type.">CheckedRange</a>.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="namespacecrashpad.html#a8d7f0170c573e59ca6b02e29735f4fad" title="Ensures that a range, composed of a base and a size, does not overflow the pointer type of the proces...">CheckedMachAddressRange</a> </dd></dl>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a6356cef12e9b42af786cfb0f73d200f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6356cef12e9b42af786cfb0f73d200f5">&#9670;&nbsp;</a></span>CheckedAddressRangeGeneric() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ValueType , class SizeType &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html">crashpad::internal::CheckedAddressRangeGeneric</a>&lt; ValueType, SizeType &gt;::<a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html">CheckedAddressRangeGeneric</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initializes a default range. </p>
<p>The default range has base 0, size 0, and appears to be from a 32-bit process. </p>
</div>
</div>
<a id="a2690036082f8e3b953d52d6d7beef3e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2690036082f8e3b953d52d6d7beef3e0">&#9670;&nbsp;</a></span>CheckedAddressRangeGeneric() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ValueType , class SizeType &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html">crashpad::internal::CheckedAddressRangeGeneric</a>&lt; ValueType, SizeType &gt;::<a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html">CheckedAddressRangeGeneric</a> </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>is_64_bit</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ValueType&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">SizeType&#160;</td>
<td class="paramname"><em>size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Initializes a range. </p>
<p>See <a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#ae72bd91632c64a7a2677aa87a780e856" title="Sets a range’s fields.">SetRange()</a>. </p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a112f17bdb6885c0938863d6717f7f5d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a112f17bdb6885c0938863d6717f7f5d6">&#9670;&nbsp;</a></span>AsString()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ValueType , class SizeType &gt; </div>
<table class="memname">
<tr>
<td class="memname">std::string <a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html">crashpad::internal::CheckedAddressRangeGeneric</a>&lt; ValueType, SizeType &gt;::AsString</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a string describing the address range. </p>
<p>The string will be formatted as <code>"0x123 + 0x45 (64)"</code>, where the individual components are the address, size, and bitness. </p>
</div>
</div>
<a id="a4dd85d91cc54e85241522eb4065829cb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4dd85d91cc54e85241522eb4065829cb">&#9670;&nbsp;</a></span>ContainsRange()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ValueType , class SizeType &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html">crashpad::internal::CheckedAddressRangeGeneric</a>&lt; ValueType, SizeType &gt;::ContainsRange </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html">CheckedAddressRangeGeneric</a>&lt; ValueType, SizeType &gt; &amp;&#160;</td>
<td class="paramname"><em>that</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns whether the address range contains another address range. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">that</td><td>The (possibly) contained address range.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if <code>this</code> address range, the containing address range, contains <em>that</em>, the contained address range. <code>false</code> otherwise.</dd></dl>
<p>An address range contains another address range when the contained address range’s base is greater than or equal to the containing address range’s base, and the contained address range’s end is less than or equal to the containing address range’s end.</p>
<p>This method should only be called on two <a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html" title="Ensures that a range, composed of a base and a size, does not overflow the pointer type of the proces...">CheckedAddressRangeGeneric</a> objects representing address ranges in the same process.</p>
<p>This method must only be called if <a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a237cf2b69cfecf358f68993497ccbdc7" title="Returns the validity of the address range.">IsValid()</a> would return <code>true</code> for both <a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html" title="Ensures that a range, composed of a base and a size, does not overflow the pointer type of the proces...">CheckedAddressRangeGeneric</a> objects involved. </p>
</div>
</div>
<a id="a2efcf0521beb3dee7494bc4f868f5571"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2efcf0521beb3dee7494bc4f868f5571">&#9670;&nbsp;</a></span>ContainsValue()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ValueType , class SizeType &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html">crashpad::internal::CheckedAddressRangeGeneric</a>&lt; ValueType, SizeType &gt;::ContainsValue </td>
<td>(</td>
<td class="paramtype">const ValueType&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns whether the address range contains another address. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The (possibly) contained address.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if the address range contains <em>value</em>, <code>false</code> otherwise.</dd></dl>
<p>An address range contains a value if the value is greater than or equal to its base address, and less than its end address (base address plus size).</p>
<p>This method must only be called if <a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html#a237cf2b69cfecf358f68993497ccbdc7" title="Returns the validity of the address range.">IsValid()</a> would return <code>true</code>. </p>
</div>
</div>
<a id="a237cf2b69cfecf358f68993497ccbdc7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a237cf2b69cfecf358f68993497ccbdc7">&#9670;&nbsp;</a></span>IsValid()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ValueType , class SizeType &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html">crashpad::internal::CheckedAddressRangeGeneric</a>&lt; ValueType, SizeType &gt;::IsValid</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the validity of the address range. </p>
<dl class="section return"><dt>Returns</dt><dd><code>true</code> if the address range is valid, <code>false</code> otherwise.</dd></dl>
<p>An address range is valid if its size can be converted to the address range’s data type without data loss, and if its end (base plus size) can be computed without overflowing its data type. </p>
</div>
</div>
<a id="ae72bd91632c64a7a2677aa87a780e856"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae72bd91632c64a7a2677aa87a780e856">&#9670;&nbsp;</a></span>SetRange()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ValueType , class SizeType &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classcrashpad_1_1internal_1_1CheckedAddressRangeGeneric.html">crashpad::internal::CheckedAddressRangeGeneric</a>&lt; ValueType, SizeType &gt;::SetRange </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>is_64_bit</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ValueType&#160;</td>
<td class="paramname"><em>base</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">SizeType&#160;</td>
<td class="paramname"><em>size</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets a range’s fields. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">is_64_bit</td><td><code>true</code> if <em>base</em> and <em>size</em> refer to addresses in a 64-bit process; <code>false</code> if they refer to addresses in a 32-bit process. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">base</td><td>The range’s base address. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>The range’s size. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>util/numeric/checked_address_range.h</li>
<li>util/numeric/checked_address_range.cc</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.18
</small></address>
</body>
</html>