"Fossies" - the Fresh Open Source Software Archive

Member "dmd2/html/d/phobos/std_experimental_allocator_building_blocks_stats_collector.html" (20 Nov 2020, 109526 Bytes) of package /linux/misc/dmd.2.094.2.linux.tar.xz:


The requested HTML page contains a <FORM> tag that is unusable on "Fossies" in "automatic" (rendered) mode so that page is shown as HTML source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 
    2 <!DOCTYPE html>
    3 <html lang="en-US">
    4 <!--
    5     Copyright (c) 1999-2020 by the D Language Foundation
    6     All Rights Reserved.
    7     https://dlang.org/foundation_overview.html
    8   -->
    9 <head>
   10 <meta charset="utf-8">
   11 <meta name="keywords" content="D programming language">
   12 <meta name="description" content="D Programming Language">
   13 <title>std.experimental.allocator.building_blocks.stats_collector - D Programming Language</title>
   14 
   15 <link rel="stylesheet" href="../css/codemirror.css">
   16 <link rel="stylesheet" href="../css/style.css">
   17 <link rel="stylesheet" href="../css/print.css" media="print">
   18 <link rel="shortcut icon" href="../favicon.ico">
   19 <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.1, maximum-scale=10.0">
   20 
   21 </head>
   22 <body id='std.experimental.allocator.building_blocks.stats_collector' class='std'>
   23 <script type="text/javascript">document.body.className += ' have-javascript'</script>
   24 <div id="top"><div class="helper"><div class="helper expand-container">    <div class="logo"><a href=".."><img id="logo" alt="D Logo" src="../images/dlogo.svg"></a></div>
   25     <a href="../menu.html" title="Menu" class="hamburger expand-toggle"><span>Menu</span></a>
   26     
   27 <div id="cssmenu"><ul>    <li><a href='https://tour.dlang.org'><span>Learn</span></a></li>
   28     <li class='expand-container'><a class='expand-toggle' href='../documentation.html'><span>Documentation</span></a>
   29       
   30 <ul class='expand-content'>    <li><a href='../spec/spec.html'>Language Reference</a></li>
   31     <li><a href='../phobos/index.html'>Library Reference</a></li>
   32     <li><a href='../dmd.html'>Command-line Reference</a></li>
   33     <li class="menu-divider"><a href='../comparison.html'>Feature Overview</a></li>
   34     <li><a href='../articles.html'>Articles</a></li>
   35  </ul></li>
   36     <li><a href='../download.html'><span>Downloads</span></a></li>
   37     <li><a href='https://code.dlang.org'><span>Packages</span></a></li>
   38     <li class='expand-container'><a class='expand-toggle' href='../community.html'><span>Community</span></a>
   39       
   40 <ul class='expand-content'>    <li><a href='https://dlang.org/blog'>Blog</a></li>
   41     <li><a href='../orgs-using-d.html'>Orgs using D</a></li>
   42     <li><a href='https://twitter.com/search?q=%23dlang'>Twitter</a></li>
   43     <li><a href='../calendar.html'>Calendar</a></li>
   44     <li class="menu-divider"><a href='https://forum.dlang.org'>Forums</a></li>
   45     <li><a href='irc://irc.freenode.net/d'>IRC</a></li>
   46     <li><a href='https://discord.gg/bMZk9Q4'>Community Discord</a></li>
   47     <li><a href='https://wiki.dlang.org'>Wiki</a></li>
   48     <li class="menu-divider"><a href='https://github.com/dlang'>GitHub</a></li>
   49     <li><a href='../bugstats.html'>Issues</a></li>
   50     <li><a href='https://wiki.dlang.org/Get_involved'>Get involved</a></li>
   51     <li class="menu-divider"><a href='../foundation/contributors.html'>Contributors</a></li>
   52     <li><a href='../foundation/index.html'>Foundation</a></li>
   53     <li><a href='..//security.html'>Security Team</a></li>
   54     <li><a href='../foundation/donate.html'>Donate</a></li>
   55     <li><a href='../foundation/sponsors.html'>Sponsors</a></li>
   56  </ul></li>
   57     <li class='expand-container'><a class='expand-toggle' href='../resources.html'><span>Resources</span></a>
   58       
   59 <ul class='expand-content'>    <li><a href='https://tour.dlang.org'>Tour</a></li>
   60     <li><a href='https://wiki.dlang.org/Books'>Books</a></li>
   61     <li><a href='https://wiki.dlang.org/Tutorials'>Tutorials</a></li>
   62     <li class="menu-divider"><a href='https://wiki.dlang.org/Development_tools'>Tools</a></li>
   63     <li><a href='https://wiki.dlang.org/Editors'>Editors</a></li>
   64     <li><a href='https://wiki.dlang.org/IDEs'>IDEs</a></li>
   65     <li><a href='https://run.dlang.io'>run.dlang.io</a></li>
   66     <li><a href='http://rainers.github.io/visuald/visuald/StartPage.html'>Visual D</a></li>
   67     <li class="menu-divider"><a href='../acknowledgements.html'>Acknowledgments</a></li>
   68     <li><a href='../dstyle.html'>D Style</a></li>
   69     <li><a href='../glossary.html'>Glossary</a></li>
   70     <li><a href='../sitemap.html'>Sitemap</a></li>
   71  </ul></li>
   72 </ul></div>
   73     <div class="search-container expand-container">        <a href="../search.html" class="expand-toggle" title="Search"><span>Search</span></a>
   74         
   75     <div id="search-box">        <form method="get" action="https://google.com/search">
   76             <input type="hidden" id="domains" name="domains" value="dlang.org">
   77             <input type="hidden" id="sourceid" name="sourceid" value="google-search">
   78             <span id="search-query"><input id="q" name="q" placeholder="Search"></span><span id="search-dropdown"><span class="helper">                <select id="sitesearch" name="sitesearch" size="1">
   79                     <option value="dlang.org">Entire Site</option>
   80                     <option  value="dlang.org/spec">Language</option>
   81                     <option selected value="dlang.org/phobos">Library</option>
   82                     <option  value="forum.dlang.org">Forums</option>
   83                     
   84                 </select>
   85             </span></span><span id="search-submit"><button type="submit"><i class="fa fa-search"></i><span>go</span></button></span>
   86         </form>
   87     </div>
   88     </div>
   89 </div></div></div>
   90 
   91 <div class="container">    
   92 <div class="subnav-helper"></div> <div class="subnav">    <div class="head">        <h2>Library Reference</h2>
   93         <p><span class="smallprint">version 2.094.2 <span class="separator"><br></span>
   94             </span>
   95         </p>
   96         <p><a href="index.html">overview</a></p>
   97     </div>
   98     <ul>
   99 
  100 <li><a href='object.html'><span><em class="tt">object</em></span></a></li>
  101 
  102 <li class='expand-container modlist-submenu-std'><a class='expand-toggle' href='#'><span><em class="tt">std</em></span></a>
  103 <ul><li>  <a href="std_algorithm.html" title="std.algorithm"><span class="d_inlinecode donthyphenate notranslate">algorithm</span></a><ul><li>    <a href="std_algorithm_comparison.html" title="std.algorithm.comparison"><span class="d_inlinecode donthyphenate notranslate">comparison</span></a></li><li>    <a href="std_algorithm_iteration.html" title="std.algorithm.iteration"><span class="d_inlinecode donthyphenate notranslate">iteration</span></a></li><li>    <a href="std_algorithm_mutation.html" title="std.algorithm.mutation"><span class="d_inlinecode donthyphenate notranslate">mutation</span></a></li><li>    <a href="std_algorithm_searching.html" title="std.algorithm.searching"><span class="d_inlinecode donthyphenate notranslate">searching</span></a></li><li>    <a href="std_algorithm_setops.html" title="std.algorithm.setops"><span class="d_inlinecode donthyphenate notranslate">setops</span></a></li><li>    <a href="std_algorithm_sorting.html" title="std.algorithm.sorting"><span class="d_inlinecode donthyphenate notranslate">sorting</span></a>
  104   </li></ul></li><li>  <a href="std_array.html" title="std.array"><span class="d_inlinecode donthyphenate notranslate">array</span></a></li><li>  <a href="std_ascii.html" title="std.ascii"><span class="d_inlinecode donthyphenate notranslate">ascii</span></a></li><li>  <a href="std_base64.html" title="std.base64"><span class="d_inlinecode donthyphenate notranslate">base64</span></a></li><li>  <a href="std_bigint.html" title="std.bigint"><span class="d_inlinecode donthyphenate notranslate">bigint</span></a></li><li>  <a href="std_bitmanip.html" title="std.bitmanip"><span class="d_inlinecode donthyphenate notranslate">bitmanip</span></a></li><li>  <a href="std_compiler.html" title="std.compiler"><span class="d_inlinecode donthyphenate notranslate">compiler</span></a></li><li>  <a href="std_complex.html" title="std.complex"><span class="d_inlinecode donthyphenate notranslate">complex</span></a></li><li>  <a href="std_concurrency.html" title="std.concurrency"><span class="d_inlinecode donthyphenate notranslate">concurrency</span></a></li><li>  <a href="std_container.html" title="std.container"><span class="d_inlinecode donthyphenate notranslate">container</span></a><ul><li>    <a href="std_container_array.html" title="std.container.array"><span class="d_inlinecode donthyphenate notranslate">array</span></a></li><li>    <a href="std_container_binaryheap.html" title="std.container.binaryheap"><span class="d_inlinecode donthyphenate notranslate">binaryheap</span></a></li><li>    <a href="std_container_dlist.html" title="std.container.dlist"><span class="d_inlinecode donthyphenate notranslate">dlist</span></a></li><li>    <a href="std_container_rbtree.html" title="std.container.rbtree"><span class="d_inlinecode donthyphenate notranslate">rbtree</span></a></li><li>    <a href="std_container_slist.html" title="std.container.slist"><span class="d_inlinecode donthyphenate notranslate">slist</span></a></li><li>    <a href="std_container_util.html" title="std.container.util"><span class="d_inlinecode donthyphenate notranslate">util</span></a>
  105   </li></ul></li><li>  <a href="std_conv.html" title="std.conv"><span class="d_inlinecode donthyphenate notranslate">conv</span></a></li><li>  <a href="std_csv.html" title="std.csv"><span class="d_inlinecode donthyphenate notranslate">csv</span></a></li><li>  <a href="std_datetime.html" title="std.datetime"><span class="d_inlinecode donthyphenate notranslate">datetime</span></a><ul><li>    <a href="std_datetime_date.html" title="std.datetime.date"><span class="d_inlinecode donthyphenate notranslate">date</span></a></li><li>    <a href="std_datetime_interval.html" title="std.datetime.interval"><span class="d_inlinecode donthyphenate notranslate">interval</span></a></li><li>    <a href="std_datetime_stopwatch.html" title="std.datetime.stopwatch"><span class="d_inlinecode donthyphenate notranslate">stopwatch</span></a></li><li>    <a href="std_datetime_systime.html" title="std.datetime.systime"><span class="d_inlinecode donthyphenate notranslate">systime</span></a></li><li>    <a href="std_datetime_timezone.html" title="std.datetime.timezone"><span class="d_inlinecode donthyphenate notranslate">timezone</span></a>
  106   </li></ul></li><li>  <a href="std_demangle.html" title="std.demangle"><span class="d_inlinecode donthyphenate notranslate">demangle</span></a></li><li>  <a href="std_digest.html" title="std.digest"><span class="d_inlinecode donthyphenate notranslate">digest</span></a><ul><li>    <a href="std_digest_crc.html" title="std.digest.crc"><span class="d_inlinecode donthyphenate notranslate">crc</span></a></li><li>    <a href="std_digest_hmac.html" title="std.digest.hmac"><span class="d_inlinecode donthyphenate notranslate">hmac</span></a></li><li>    <a href="std_digest_md.html" title="std.digest.md"><span class="d_inlinecode donthyphenate notranslate">md</span></a></li><li>    <a href="std_digest_murmurhash.html" title="std.digest.murmurhash"><span class="d_inlinecode donthyphenate notranslate">murmurhash</span></a></li><li>    <a href="std_digest_ripemd.html" title="std.digest.ripemd"><span class="d_inlinecode donthyphenate notranslate">ripemd</span></a></li><li>    <a href="std_digest_sha.html" title="std.digest.sha"><span class="d_inlinecode donthyphenate notranslate">sha</span></a>
  107   </li></ul></li><li>  <a href="std_encoding.html" title="std.encoding"><span class="d_inlinecode donthyphenate notranslate">encoding</span></a></li><li>  <a href="std_exception.html" title="std.exception"><span class="d_inlinecode donthyphenate notranslate">exception</span></a></li><li>  <h7><span class="d_inlinecode donthyphenate notranslate">experimental</span></h7><ul><li>    <a href="std_experimental_allocator.html" title="std.experimental.allocator"><span class="d_inlinecode donthyphenate notranslate">allocator</span></a><ul><li>      <a href="std_experimental_allocator_building_blocks.html" title="std.experimental.allocator.building_blocks"><span class="d_inlinecode donthyphenate notranslate">building_blocks</span></a><ul><li>        <a href="std_experimental_allocator_building_blocks_affix_allocator.html" title="std.experimental.allocator.building_blocks.affix_allocator"><span class="d_inlinecode donthyphenate notranslate">affix_allocator</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_aligned_block_list.html" title="std.experimental.allocator.building_blocks.aligned_block_list"><span class="d_inlinecode donthyphenate notranslate">aligned_block_list</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_allocator_list.html" title="std.experimental.allocator.building_blocks.allocator_list"><span class="d_inlinecode donthyphenate notranslate">allocator_list</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_ascending_page_allocator.html" title="std.experimental.allocator.building_blocks.ascending_page_allocator"><span class="d_inlinecode donthyphenate notranslate">ascending_page_allocator</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_bitmapped_block.html" title="std.experimental.allocator.building_blocks.bitmapped_block"><span class="d_inlinecode donthyphenate notranslate">bitmapped_block</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_bucketizer.html" title="std.experimental.allocator.building_blocks.bucketizer"><span class="d_inlinecode donthyphenate notranslate">bucketizer</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_fallback_allocator.html" title="std.experimental.allocator.building_blocks.fallback_allocator"><span class="d_inlinecode donthyphenate notranslate">fallback_allocator</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_free_list.html" title="std.experimental.allocator.building_blocks.free_list"><span class="d_inlinecode donthyphenate notranslate">free_list</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_free_tree.html" title="std.experimental.allocator.building_blocks.free_tree"><span class="d_inlinecode donthyphenate notranslate">free_tree</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_kernighan_ritchie.html" title="std.experimental.allocator.building_blocks.kernighan_ritchie"><span class="d_inlinecode donthyphenate notranslate">kernighan_ritchie</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_null_allocator.html" title="std.experimental.allocator.building_blocks.null_allocator"><span class="d_inlinecode donthyphenate notranslate">null_allocator</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_quantizer.html" title="std.experimental.allocator.building_blocks.quantizer"><span class="d_inlinecode donthyphenate notranslate">quantizer</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_region.html" title="std.experimental.allocator.building_blocks.region"><span class="d_inlinecode donthyphenate notranslate">region</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_scoped_allocator.html" title="std.experimental.allocator.building_blocks.scoped_allocator"><span class="d_inlinecode donthyphenate notranslate">scoped_allocator</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_segregator.html" title="std.experimental.allocator.building_blocks.segregator"><span class="d_inlinecode donthyphenate notranslate">segregator</span></a></li><li>        <a href="std_experimental_allocator_building_blocks_stats_collector.html" title="std.experimental.allocator.building_blocks.stats_collector"><span class="d_inlinecode donthyphenate notranslate">stats_collector</span></a>
  108       </li></ul></li><li>      <a href="std_experimental_allocator_common.html" title="std.experimental.allocator.common"><span class="d_inlinecode donthyphenate notranslate">common</span></a></li><li>      <a href="std_experimental_allocator_gc_allocator.html" title="std.experimental.allocator.gc_allocator"><span class="d_inlinecode donthyphenate notranslate">gc_allocator</span></a></li><li>      <a href="std_experimental_allocator_mallocator.html" title="std.experimental.allocator.mallocator"><span class="d_inlinecode donthyphenate notranslate">mallocator</span></a></li><li>      <a href="std_experimental_allocator_mmap_allocator.html" title="std.experimental.allocator.mmap_allocator"><span class="d_inlinecode donthyphenate notranslate">mmap_allocator</span></a></li><li>      <a href="std_experimental_allocator_showcase.html" title="std.experimental.allocator.showcase"><span class="d_inlinecode donthyphenate notranslate">showcase</span></a></li><li>      <a href="std_experimental_allocator_typed.html" title="std.experimental.allocator.typed"><span class="d_inlinecode donthyphenate notranslate">typed</span></a>
  109     </li></ul></li><li>    <a href="std_experimental_checkedint.html" title="std.experimental.checkedint"><span class="d_inlinecode donthyphenate notranslate">checkedint</span></a></li><li>    <a href="std_experimental_logger.html" title="std.experimental.logger"><span class="d_inlinecode donthyphenate notranslate">logger</span></a><ul><li>      <a href="std_experimental_logger_core.html" title="std.experimental.logger.core"><span class="d_inlinecode donthyphenate notranslate">core</span></a></li><li>      <a href="std_experimental_logger_filelogger.html" title="std.experimental.logger.filelogger"><span class="d_inlinecode donthyphenate notranslate">filelogger</span></a></li><li>      <a href="std_experimental_logger_multilogger.html" title="std.experimental.logger.multilogger"><span class="d_inlinecode donthyphenate notranslate">multilogger</span></a></li><li>      <a href="std_experimental_logger_nulllogger.html" title="std.experimental.logger.nulllogger"><span class="d_inlinecode donthyphenate notranslate">nulllogger</span></a>
  110     </li></ul></li><li>    <a href="std_experimental_typecons.html" title="std.experimental.typecons"><span class="d_inlinecode donthyphenate notranslate">typecons</span></a>
  111   </li></ul></li><li>  <a href="std_file.html" title="std.file"><span class="d_inlinecode donthyphenate notranslate">file</span></a></li><li>  <a href="std_format.html" title="std.format"><span class="d_inlinecode donthyphenate notranslate">format</span></a></li><li>  <a href="std_functional.html" title="std.functional"><span class="d_inlinecode donthyphenate notranslate">functional</span></a></li><li>  <a href="std_getopt.html" title="std.getopt"><span class="d_inlinecode donthyphenate notranslate">getopt</span></a></li><li>  <a href="std_json.html" title="std.json"><span class="d_inlinecode donthyphenate notranslate">json</span></a></li><li>  <a href="std_math.html" title="std.math"><span class="d_inlinecode donthyphenate notranslate">math</span></a></li><li>  <a href="std_mathspecial.html" title="std.mathspecial"><span class="d_inlinecode donthyphenate notranslate">mathspecial</span></a></li><li>  <a href="std_meta.html" title="std.meta"><span class="d_inlinecode donthyphenate notranslate">meta</span></a></li><li>  <a href="std_mmfile.html" title="std.mmfile"><span class="d_inlinecode donthyphenate notranslate">mmfile</span></a></li><li>  <h7><span class="d_inlinecode donthyphenate notranslate">net</span></h7><ul><li>    <a href="std_net_curl.html" title="std.net.curl"><span class="d_inlinecode donthyphenate notranslate">curl</span></a></li><li>    <a href="std_net_isemail.html" title="std.net.isemail"><span class="d_inlinecode donthyphenate notranslate">isemail</span></a>
  112   </li></ul></li><li>  <a href="std_numeric.html" title="std.numeric"><span class="d_inlinecode donthyphenate notranslate">numeric</span></a></li><li>  <a href="std_outbuffer.html" title="std.outbuffer"><span class="d_inlinecode donthyphenate notranslate">outbuffer</span></a></li><li>  <a href="std_parallelism.html" title="std.parallelism"><span class="d_inlinecode donthyphenate notranslate">parallelism</span></a></li><li>  <a href="std_path.html" title="std.path"><span class="d_inlinecode donthyphenate notranslate">path</span></a></li><li>  <a href="std_process.html" title="std.process"><span class="d_inlinecode donthyphenate notranslate">process</span></a></li><li>  <a href="std_random.html" title="std.random"><span class="d_inlinecode donthyphenate notranslate">random</span></a></li><li>  <a href="std_range.html" title="std.range"><span class="d_inlinecode donthyphenate notranslate">range</span></a><ul><li>    <a href="std_range_interfaces.html" title="std.range.interfaces"><span class="d_inlinecode donthyphenate notranslate">interfaces</span></a></li><li>    <a href="std_range_primitives.html" title="std.range.primitives"><span class="d_inlinecode donthyphenate notranslate">primitives</span></a>
  113   </li></ul></li><li>  <a href="std_regex.html" title="std.regex"><span class="d_inlinecode donthyphenate notranslate">regex</span></a></li><li>  <a href="std_signals.html" title="std.signals"><span class="d_inlinecode donthyphenate notranslate">signals</span></a></li><li>  <a href="std_socket.html" title="std.socket"><span class="d_inlinecode donthyphenate notranslate">socket</span></a></li><li>  <a href="std_stdint.html" title="std.stdint"><span class="d_inlinecode donthyphenate notranslate">stdint</span></a></li><li>  <a href="std_stdio.html" title="std.stdio"><span class="d_inlinecode donthyphenate notranslate">stdio</span></a></li><li>  <a href="std_string.html" title="std.string"><span class="d_inlinecode donthyphenate notranslate">string</span></a></li><li>  <a href="std_system.html" title="std.system"><span class="d_inlinecode donthyphenate notranslate">system</span></a></li><li>  <a href="std_traits.html" title="std.traits"><span class="d_inlinecode donthyphenate notranslate">traits</span></a></li><li>  <a href="std_typecons.html" title="std.typecons"><span class="d_inlinecode donthyphenate notranslate">typecons</span></a></li><li>  <a href="std_uni.html" title="std.uni"><span class="d_inlinecode donthyphenate notranslate">uni</span></a></li><li>  <a href="std_uri.html" title="std.uri"><span class="d_inlinecode donthyphenate notranslate">uri</span></a></li><li>  <a href="std_utf.html" title="std.utf"><span class="d_inlinecode donthyphenate notranslate">utf</span></a></li><li>  <a href="std_uuid.html" title="std.uuid"><span class="d_inlinecode donthyphenate notranslate">uuid</span></a></li><li>  <a href="std_variant.html" title="std.variant"><span class="d_inlinecode donthyphenate notranslate">variant</span></a></li><li>  <h7><span class="d_inlinecode donthyphenate notranslate">windows</span></h7><ul><li>    <a href="std_windows_charset.html" title="std.windows.charset"><span class="d_inlinecode donthyphenate notranslate">charset</span></a></li><li>    <a href="std_windows_syserror.html" title="std.windows.syserror"><span class="d_inlinecode donthyphenate notranslate">syserror</span></a>
  114   </li></ul></li><li>  <a href="std_xml.html" title="std.xml"><span class="d_inlinecode donthyphenate notranslate">xml</span></a></li><li>  <a href="std_zip.html" title="std.zip"><span class="d_inlinecode donthyphenate notranslate">zip</span></a></li><li>  <a href="std_zlib.html" title="std.zlib"><span class="d_inlinecode donthyphenate notranslate">zlib</span></a>
  115 </li></ul>
  116 </li>
  117 
  118 <li class='expand-container modlist-submenu-etc'><a class='expand-toggle' href='#'><span><em class="tt">etc</em></span></a>
  119 <ul><li>  <h7><span class="d_inlinecode donthyphenate notranslate">c</span></h7><ul><li>    <a href="etc_c_curl.html" title="etc.c.curl"><span class="d_inlinecode donthyphenate notranslate">curl</span></a></li><li>    <h7><span class="d_inlinecode donthyphenate notranslate">odbc</span></h7><ul><li>      <a href="etc_c_odbc_sql.html" title="etc.c.odbc.sql"><span class="d_inlinecode donthyphenate notranslate">sql</span></a></li><li>      <a href="etc_c_odbc_sqlext.html" title="etc.c.odbc.sqlext"><span class="d_inlinecode donthyphenate notranslate">sqlext</span></a></li><li>      <a href="etc_c_odbc_sqltypes.html" title="etc.c.odbc.sqltypes"><span class="d_inlinecode donthyphenate notranslate">sqltypes</span></a></li><li>      <a href="etc_c_odbc_sqlucode.html" title="etc.c.odbc.sqlucode"><span class="d_inlinecode donthyphenate notranslate">sqlucode</span></a>
  120     </li></ul></li><li>    <a href="etc_c_sqlite3.html" title="etc.c.sqlite3"><span class="d_inlinecode donthyphenate notranslate">sqlite3</span></a></li><li>    <a href="etc_c_zlib.html" title="etc.c.zlib"><span class="d_inlinecode donthyphenate notranslate">zlib</span></a>
  121   </li></ul>
  122 </li></ul>
  123 </li>
  124 
  125 <li class='expand-container modlist-submenu-core'><a class='expand-toggle' href='#'><span><em class="tt">core</em></span></a>
  126 <ul><li>  <a href="core_atomic.html" title="core.atomic"><span class="d_inlinecode donthyphenate notranslate">atomic</span></a></li><li>  <a href="core_attribute.html" title="core.attribute"><span class="d_inlinecode donthyphenate notranslate">attribute</span></a></li><li>  <a href="core_bitop.html" title="core.bitop"><span class="d_inlinecode donthyphenate notranslate">bitop</span></a></li><li>  <a href="core_checkedint.html" title="core.checkedint"><span class="d_inlinecode donthyphenate notranslate">checkedint</span></a></li><li>  <a href="core_cpuid.html" title="core.cpuid"><span class="d_inlinecode donthyphenate notranslate">cpuid</span></a></li><li>  <a href="core_demangle.html" title="core.demangle"><span class="d_inlinecode donthyphenate notranslate">demangle</span></a></li><li>  <a href="core_exception.html" title="core.exception"><span class="d_inlinecode donthyphenate notranslate">exception</span></a></li><li>  <h7><span class="d_inlinecode donthyphenate notranslate">gc</span></h7><ul><li>    <a href="core_gc_config.html" title="core.gc.config"><span class="d_inlinecode donthyphenate notranslate">config</span></a></li><li>    <a href="core_gc_gcinterface.html" title="core.gc.gcinterface"><span class="d_inlinecode donthyphenate notranslate">gcinterface</span></a></li><li>    <a href="core_gc_registry.html" title="core.gc.registry"><span class="d_inlinecode donthyphenate notranslate">registry</span></a>
  127   </li></ul></li><li>  <a href="core_lifetime.html" title="core.lifetime"><span class="d_inlinecode donthyphenate notranslate">lifetime</span></a></li><li>  <a href="core_math.html" title="core.math"><span class="d_inlinecode donthyphenate notranslate">math</span></a></li><li>  <a href="core_memory.html" title="core.memory"><span class="d_inlinecode donthyphenate notranslate">memory</span></a></li><li>  <a href="core_runtime.html" title="core.runtime"><span class="d_inlinecode donthyphenate notranslate">runtime</span></a></li><li>  <a href="core_simd.html" title="core.simd"><span class="d_inlinecode donthyphenate notranslate">simd</span></a></li><li>  <h7><span class="d_inlinecode donthyphenate notranslate">stdc</span></h7><ul><li>    <a href="core_stdc_assert_.html" title="core.stdc.assert_"><span class="d_inlinecode donthyphenate notranslate">assert_</span></a></li><li>    <a href="core_stdc_complex.html" title="core.stdc.complex"><span class="d_inlinecode donthyphenate notranslate">complex</span></a></li><li>    <a href="core_stdc_ctype.html" title="core.stdc.ctype"><span class="d_inlinecode donthyphenate notranslate">ctype</span></a></li><li>    <a href="core_stdc_errno.html" title="core.stdc.errno"><span class="d_inlinecode donthyphenate notranslate">errno</span></a></li><li>    <a href="core_stdc_fenv.html" title="core.stdc.fenv"><span class="d_inlinecode donthyphenate notranslate">fenv</span></a></li><li>    <a href="core_stdc_float_.html" title="core.stdc.float_"><span class="d_inlinecode donthyphenate notranslate">float_</span></a></li><li>    <a href="core_stdc_inttypes.html" title="core.stdc.inttypes"><span class="d_inlinecode donthyphenate notranslate">inttypes</span></a></li><li>    <a href="core_stdc_limits.html" title="core.stdc.limits"><span class="d_inlinecode donthyphenate notranslate">limits</span></a></li><li>    <a href="core_stdc_locale.html" title="core.stdc.locale"><span class="d_inlinecode donthyphenate notranslate">locale</span></a></li><li>    <a href="core_stdc_math.html" title="core.stdc.math"><span class="d_inlinecode donthyphenate notranslate">math</span></a></li><li>    <a href="core_stdc_signal.html" title="core.stdc.signal"><span class="d_inlinecode donthyphenate notranslate">signal</span></a></li><li>    <a href="core_stdc_stdarg.html" title="core.stdc.stdarg"><span class="d_inlinecode donthyphenate notranslate">stdarg</span></a></li><li>    <a href="core_stdc_stddef.html" title="core.stdc.stddef"><span class="d_inlinecode donthyphenate notranslate">stddef</span></a></li><li>    <a href="core_stdc_stdint.html" title="core.stdc.stdint"><span class="d_inlinecode donthyphenate notranslate">stdint</span></a></li><li>    <a href="core_stdc_stdio.html" title="core.stdc.stdio"><span class="d_inlinecode donthyphenate notranslate">stdio</span></a></li><li>    <a href="core_stdc_stdlib.html" title="core.stdc.stdlib"><span class="d_inlinecode donthyphenate notranslate">stdlib</span></a></li><li>    <a href="core_stdc_string.html" title="core.stdc.string"><span class="d_inlinecode donthyphenate notranslate">string</span></a></li><li>    <a href="core_stdc_tgmath.html" title="core.stdc.tgmath"><span class="d_inlinecode donthyphenate notranslate">tgmath</span></a></li><li>    <a href="core_stdc_time.html" title="core.stdc.time"><span class="d_inlinecode donthyphenate notranslate">time</span></a></li><li>    <a href="core_stdc_wchar_.html" title="core.stdc.wchar_"><span class="d_inlinecode donthyphenate notranslate">wchar_</span></a></li><li>    <a href="core_stdc_wctype.html" title="core.stdc.wctype"><span class="d_inlinecode donthyphenate notranslate">wctype</span></a>
  128   </li></ul></li><li>  <h7><span class="d_inlinecode donthyphenate notranslate">stdcpp</span></h7><ul><li>    <a href="core_stdcpp_allocator.html" title="core.stdcpp.allocator"><span class="d_inlinecode donthyphenate notranslate">allocator</span></a></li><li>    <a href="core_stdcpp_array.html" title="core.stdcpp.array"><span class="d_inlinecode donthyphenate notranslate">array</span></a></li><li>    <a href="core_stdcpp_exception.html" title="core.stdcpp.exception"><span class="d_inlinecode donthyphenate notranslate">exception</span></a></li><li>    <a href="core_stdcpp_memory.html" title="core.stdcpp.memory"><span class="d_inlinecode donthyphenate notranslate">memory</span></a></li><li>    <a href="core_stdcpp_new_.html" title="core.stdcpp.new_"><span class="d_inlinecode donthyphenate notranslate">new_</span></a></li><li>    <a href="core_stdcpp_string.html" title="core.stdcpp.string"><span class="d_inlinecode donthyphenate notranslate">string</span></a></li><li>    <a href="core_stdcpp_string_view.html" title="core.stdcpp.string_view"><span class="d_inlinecode donthyphenate notranslate">string_view</span></a></li><li>    <a href="core_stdcpp_type_traits.html" title="core.stdcpp.type_traits"><span class="d_inlinecode donthyphenate notranslate">type_traits</span></a></li><li>    <a href="core_stdcpp_typeinfo.html" title="core.stdcpp.typeinfo"><span class="d_inlinecode donthyphenate notranslate">typeinfo</span></a></li><li>    <a href="core_stdcpp_utility.html" title="core.stdcpp.utility"><span class="d_inlinecode donthyphenate notranslate">utility</span></a></li><li>    <a href="core_stdcpp_vector.html" title="core.stdcpp.vector"><span class="d_inlinecode donthyphenate notranslate">vector</span></a></li><li>    <a href="core_stdcpp_xutility.html" title="core.stdcpp.xutility"><span class="d_inlinecode donthyphenate notranslate">xutility</span></a>
  129   </li></ul></li><li>  <h7><span class="d_inlinecode donthyphenate notranslate">sync</span></h7><ul><li>    <a href="core_sync_barrier.html" title="core.sync.barrier"><span class="d_inlinecode donthyphenate notranslate">barrier</span></a></li><li>    <a href="core_sync_condition.html" title="core.sync.condition"><span class="d_inlinecode donthyphenate notranslate">condition</span></a></li><li>    <a href="core_sync_config.html" title="core.sync.config"><span class="d_inlinecode donthyphenate notranslate">config</span></a></li><li>    <a href="core_sync_event.html" title="core.sync.event"><span class="d_inlinecode donthyphenate notranslate">event</span></a></li><li>    <a href="core_sync_exception.html" title="core.sync.exception"><span class="d_inlinecode donthyphenate notranslate">exception</span></a></li><li>    <a href="core_sync_mutex.html" title="core.sync.mutex"><span class="d_inlinecode donthyphenate notranslate">mutex</span></a></li><li>    <a href="core_sync_rwmutex.html" title="core.sync.rwmutex"><span class="d_inlinecode donthyphenate notranslate">rwmutex</span></a></li><li>    <a href="core_sync_semaphore.html" title="core.sync.semaphore"><span class="d_inlinecode donthyphenate notranslate">semaphore</span></a>
  130   </li></ul></li><li>  <a href="core_thread.html" title="core.thread"><span class="d_inlinecode donthyphenate notranslate">thread</span></a><ul><li>    <a href="core_thread_context.html" title="core.thread.context"><span class="d_inlinecode donthyphenate notranslate">context</span></a></li><li>    <a href="core_thread_fiber.html" title="core.thread.fiber"><span class="d_inlinecode donthyphenate notranslate">fiber</span></a></li><li>    <a href="core_thread_osthread.html" title="core.thread.osthread"><span class="d_inlinecode donthyphenate notranslate">osthread</span></a></li><li>    <a href="core_thread_threadbase.html" title="core.thread.threadbase"><span class="d_inlinecode donthyphenate notranslate">threadbase</span></a></li><li>    <a href="core_thread_threadgroup.html" title="core.thread.threadgroup"><span class="d_inlinecode donthyphenate notranslate">threadgroup</span></a></li><li>    <a href="core_thread_types.html" title="core.thread.types"><span class="d_inlinecode donthyphenate notranslate">types</span></a>
  131   </li></ul></li><li>  <a href="core_time.html" title="core.time"><span class="d_inlinecode donthyphenate notranslate">time</span></a></li><li>  <a href="core_vararg.html" title="core.vararg"><span class="d_inlinecode donthyphenate notranslate">vararg</span></a></li><li>  <a href="core_volatile.html" title="core.volatile"><span class="d_inlinecode donthyphenate notranslate">volatile</span></a>
  132 </li></ul>
  133 </li>
  134 <div class="modlist-internal-separator">Internal API</div>
  135 
  136 <li class='expand-container modlist-submenu-core'><a class='expand-toggle' href='#'><span><em class="tt">core</em></span></a>
  137 <ul><li>  <h7><span class="d_inlinecode donthyphenate notranslate">internal</span></h7><ul><li>    <h7><span class="d_inlinecode donthyphenate notranslate">array</span></h7><ul><li>      <a href="core_internal_array_appending.html" title="core.internal.array.appending"><span class="d_inlinecode donthyphenate notranslate">appending</span></a></li><li>      <a href="core_internal_array_capacity.html" title="core.internal.array.capacity"><span class="d_inlinecode donthyphenate notranslate">capacity</span></a></li><li>      <a href="core_internal_array_casting.html" title="core.internal.array.casting"><span class="d_inlinecode donthyphenate notranslate">casting</span></a></li><li>      <a href="core_internal_array_comparison.html" title="core.internal.array.comparison"><span class="d_inlinecode donthyphenate notranslate">comparison</span></a></li><li>      <a href="core_internal_array_concatenation.html" title="core.internal.array.concatenation"><span class="d_inlinecode donthyphenate notranslate">concatenation</span></a></li><li>      <a href="core_internal_array_construction.html" title="core.internal.array.construction"><span class="d_inlinecode donthyphenate notranslate">construction</span></a></li><li>      <a href="core_internal_array_equality.html" title="core.internal.array.equality"><span class="d_inlinecode donthyphenate notranslate">equality</span></a></li><li>      <a href="core_internal_array_operations.html" title="core.internal.array.operations"><span class="d_inlinecode donthyphenate notranslate">operations</span></a></li><li>      <a href="core_internal_array_utils.html" title="core.internal.array.utils"><span class="d_inlinecode donthyphenate notranslate">utils</span></a>
  138     </li></ul></li><li>    <h7><span class="d_inlinecode donthyphenate notranslate">util</span></h7><ul><li>      <a href="core_internal_util_array.html" title="core.internal.util.array"><span class="d_inlinecode donthyphenate notranslate">array</span></a>
  139     </li></ul>
  140   </li></ul>
  141 </li></ul>
  142 </li>
  143 
  144 <li class='expand-container modlist-submenu-dmd'><a class='expand-toggle' href='#'><span><em class="tt">dmd</em></span></a>
  145 <ul><li>  <a href="dmd_access.html" title="dmd.access"><span class="d_inlinecode donthyphenate notranslate">access</span></a></li><li>  <a href="dmd_aggregate.html" title="dmd.aggregate"><span class="d_inlinecode donthyphenate notranslate">aggregate</span></a></li><li>  <a href="dmd_aliasthis.html" title="dmd.aliasthis"><span class="d_inlinecode donthyphenate notranslate">aliasthis</span></a></li><li>  <a href="dmd_apply.html" title="dmd.apply"><span class="d_inlinecode donthyphenate notranslate">apply</span></a></li><li>  <a href="dmd_argtypes_aarch64.html" title="dmd.argtypes_aarch64"><span class="d_inlinecode donthyphenate notranslate">argtypes_aarch64</span></a></li><li>  <a href="dmd_argtypes_sysv_x64.html" title="dmd.argtypes_sysv_x64"><span class="d_inlinecode donthyphenate notranslate">argtypes_sysv_x64</span></a></li><li>  <a href="dmd_argtypes_x86.html" title="dmd.argtypes_x86"><span class="d_inlinecode donthyphenate notranslate">argtypes_x86</span></a></li><li>  <a href="dmd_arrayop.html" title="dmd.arrayop"><span class="d_inlinecode donthyphenate notranslate">arrayop</span></a></li><li>  <a href="dmd_arraytypes.html" title="dmd.arraytypes"><span class="d_inlinecode donthyphenate notranslate">arraytypes</span></a></li><li>  <a href="dmd_ast_node.html" title="dmd.ast_node"><span class="d_inlinecode donthyphenate notranslate">ast_node</span></a></li><li>  <a href="dmd_astbase.html" title="dmd.astbase"><span class="d_inlinecode donthyphenate notranslate">astbase</span></a></li><li>  <a href="dmd_astcodegen.html" title="dmd.astcodegen"><span class="d_inlinecode donthyphenate notranslate">astcodegen</span></a></li><li>  <a href="dmd_asttypename.html" title="dmd.asttypename"><span class="d_inlinecode donthyphenate notranslate">asttypename</span></a></li><li>  <a href="dmd_attrib.html" title="dmd.attrib"><span class="d_inlinecode donthyphenate notranslate">attrib</span></a></li><li>  <h7><span class="d_inlinecode donthyphenate notranslate">backend</span></h7><ul><li>    <a href="dmd_backend_aarray.html" title="dmd.backend.aarray"><span class="d_inlinecode donthyphenate notranslate">aarray</span></a></li><li>    <a href="dmd_backend_backconfig.html" title="dmd.backend.backconfig"><span class="d_inlinecode donthyphenate notranslate">backconfig</span></a></li><li>    <a href="dmd_backend_backend.html" title="dmd.backend.backend"><span class="d_inlinecode donthyphenate notranslate">backend</span></a></li><li>    <a href="dmd_backend_barray.html" title="dmd.backend.barray"><span class="d_inlinecode donthyphenate notranslate">barray</span></a></li><li>    <a href="dmd_backend_bcomplex.html" title="dmd.backend.bcomplex"><span class="d_inlinecode donthyphenate notranslate">bcomplex</span></a></li><li>    <a href="dmd_backend_blockopt.html" title="dmd.backend.blockopt"><span class="d_inlinecode donthyphenate notranslate">blockopt</span></a></li><li>    <a href="dmd_backend_cc.html" title="dmd.backend.cc"><span class="d_inlinecode donthyphenate notranslate">cc</span></a></li><li>    <a href="dmd_backend_cdef.html" title="dmd.backend.cdef"><span class="d_inlinecode donthyphenate notranslate">cdef</span></a></li><li>    <a href="dmd_backend_cg.html" title="dmd.backend.cg"><span class="d_inlinecode donthyphenate notranslate">cg</span></a></li><li>    <a href="dmd_backend_cg87.html" title="dmd.backend.cg87"><span class="d_inlinecode donthyphenate notranslate">cg87</span></a></li><li>    <a href="dmd_backend_cgcod.html" title="dmd.backend.cgcod"><span class="d_inlinecode donthyphenate notranslate">cgcod</span></a></li><li>    <a href="dmd_backend_cgcs.html" title="dmd.backend.cgcs"><span class="d_inlinecode donthyphenate notranslate">cgcs</span></a></li><li>    <a href="dmd_backend_cgcse.html" title="dmd.backend.cgcse"><span class="d_inlinecode donthyphenate notranslate">cgcse</span></a></li><li>    <a href="dmd_backend_cgcv.html" title="dmd.backend.cgcv"><span class="d_inlinecode donthyphenate notranslate">cgcv</span></a></li><li>    <a href="dmd_backend_cgelem.html" title="dmd.backend.cgelem"><span class="d_inlinecode donthyphenate notranslate">cgelem</span></a></li><li>    <a href="dmd_backend_cgen.html" title="dmd.backend.cgen"><span class="d_inlinecode donthyphenate notranslate">cgen</span></a></li><li>    <a href="dmd_backend_cgobj.html" title="dmd.backend.cgobj"><span class="d_inlinecode donthyphenate notranslate">cgobj</span></a></li><li>    <a href="dmd_backend_cgreg.html" title="dmd.backend.cgreg"><span class="d_inlinecode donthyphenate notranslate">cgreg</span></a></li><li>    <a href="dmd_backend_cgsched.html" title="dmd.backend.cgsched"><span class="d_inlinecode donthyphenate notranslate">cgsched</span></a></li><li>    <a href="dmd_backend_cgxmm.html" title="dmd.backend.cgxmm"><span class="d_inlinecode donthyphenate notranslate">cgxmm</span></a></li><li>    <a href="dmd_backend_cod1.html" title="dmd.backend.cod1"><span class="d_inlinecode donthyphenate notranslate">cod1</span></a></li><li>    <a href="dmd_backend_cod2.html" title="dmd.backend.cod2"><span class="d_inlinecode donthyphenate notranslate">cod2</span></a></li><li>    <a href="dmd_backend_cod3.html" title="dmd.backend.cod3"><span class="d_inlinecode donthyphenate notranslate">cod3</span></a></li><li>    <a href="dmd_backend_cod4.html" title="dmd.backend.cod4"><span class="d_inlinecode donthyphenate notranslate">cod4</span></a></li><li>    <a href="dmd_backend_cod5.html" title="dmd.backend.cod5"><span class="d_inlinecode donthyphenate notranslate">cod5</span></a></li><li>    <a href="dmd_backend_code.html" title="dmd.backend.code"><span class="d_inlinecode donthyphenate notranslate">code</span></a></li><li>    <a href="dmd_backend_code_x86.html" title="dmd.backend.code_x86"><span class="d_inlinecode donthyphenate notranslate">code_x86</span></a></li><li>    <a href="dmd_backend_codebuilder.html" title="dmd.backend.codebuilder"><span class="d_inlinecode donthyphenate notranslate">codebuilder</span></a></li><li>    <a href="dmd_backend_compress.html" title="dmd.backend.compress"><span class="d_inlinecode donthyphenate notranslate">compress</span></a></li><li>    <a href="dmd_backend_cv4.html" title="dmd.backend.cv4"><span class="d_inlinecode donthyphenate notranslate">cv4</span></a></li><li>    <a href="dmd_backend_cv8.html" title="dmd.backend.cv8"><span class="d_inlinecode donthyphenate notranslate">cv8</span></a></li><li>    <a href="dmd_backend_dcgcv.html" title="dmd.backend.dcgcv"><span class="d_inlinecode donthyphenate notranslate">dcgcv</span></a></li><li>    <a href="dmd_backend_dcode.html" title="dmd.backend.dcode"><span class="d_inlinecode donthyphenate notranslate">dcode</span></a></li><li>    <a href="dmd_backend_debugprint.html" title="dmd.backend.debugprint"><span class="d_inlinecode donthyphenate notranslate">debugprint</span></a></li><li>    <a href="dmd_backend_divcoeff.html" title="dmd.backend.divcoeff"><span class="d_inlinecode donthyphenate notranslate">divcoeff</span></a></li><li>    <a href="dmd_backend_dlist.html" title="dmd.backend.dlist"><span class="d_inlinecode donthyphenate notranslate">dlist</span></a></li><li>    <a href="dmd_backend_drtlsym.html" title="dmd.backend.drtlsym"><span class="d_inlinecode donthyphenate notranslate">drtlsym</span></a></li><li>    <a href="dmd_backend_dt.html" title="dmd.backend.dt"><span class="d_inlinecode donthyphenate notranslate">dt</span></a></li><li>    <a href="dmd_backend_dtype.html" title="dmd.backend.dtype"><span class="d_inlinecode donthyphenate notranslate">dtype</span></a></li><li>    <a href="dmd_backend_dvarstats.html" title="dmd.backend.dvarstats"><span class="d_inlinecode donthyphenate notranslate">dvarstats</span></a></li><li>    <a href="dmd_backend_dvec.html" title="dmd.backend.dvec"><span class="d_inlinecode donthyphenate notranslate">dvec</span></a></li><li>    <a href="dmd_backend_dwarf.html" title="dmd.backend.dwarf"><span class="d_inlinecode donthyphenate notranslate">dwarf</span></a></li><li>    <a href="dmd_backend_dwarf2.html" title="dmd.backend.dwarf2"><span class="d_inlinecode donthyphenate notranslate">dwarf2</span></a></li><li>    <a href="dmd_backend_dwarfdbginf.html" title="dmd.backend.dwarfdbginf"><span class="d_inlinecode donthyphenate notranslate">dwarfdbginf</span></a></li><li>    <a href="dmd_backend_dwarfeh.html" title="dmd.backend.dwarfeh"><span class="d_inlinecode donthyphenate notranslate">dwarfeh</span></a></li><li>    <a href="dmd_backend_ee.html" title="dmd.backend.ee"><span class="d_inlinecode donthyphenate notranslate">ee</span></a></li><li>    <a href="dmd_backend_el.html" title="dmd.backend.el"><span class="d_inlinecode donthyphenate notranslate">el</span></a></li><li>    <a href="dmd_backend_elem.html" title="dmd.backend.elem"><span class="d_inlinecode donthyphenate notranslate">elem</span></a></li><li>    <a href="dmd_backend_elfobj.html" title="dmd.backend.elfobj"><span class="d_inlinecode donthyphenate notranslate">elfobj</span></a></li><li>    <a href="dmd_backend_elpicpie.html" title="dmd.backend.elpicpie"><span class="d_inlinecode donthyphenate notranslate">elpicpie</span></a></li><li>    <a href="dmd_backend_evalu8.html" title="dmd.backend.evalu8"><span class="d_inlinecode donthyphenate notranslate">evalu8</span></a></li><li>    <a href="dmd_backend_exh.html" title="dmd.backend.exh"><span class="d_inlinecode donthyphenate notranslate">exh</span></a></li><li>    <a href="dmd_backend_filespec.html" title="dmd.backend.filespec"><span class="d_inlinecode donthyphenate notranslate">filespec</span></a></li><li>    <a href="dmd_backend_fp.html" title="dmd.backend.fp"><span class="d_inlinecode donthyphenate notranslate">fp</span></a></li><li>    <a href="dmd_backend_gdag.html" title="dmd.backend.gdag"><span class="d_inlinecode donthyphenate notranslate">gdag</span></a></li><li>    <a href="dmd_backend_gflow.html" title="dmd.backend.gflow"><span class="d_inlinecode donthyphenate notranslate">gflow</span></a></li><li>    <a href="dmd_backend_global.html" title="dmd.backend.global"><span class="d_inlinecode donthyphenate notranslate">global</span></a></li><li>    <a href="dmd_backend_glocal.html" title="dmd.backend.glocal"><span class="d_inlinecode donthyphenate notranslate">glocal</span></a></li><li>    <a href="dmd_backend_gloop.html" title="dmd.backend.gloop"><span class="d_inlinecode donthyphenate notranslate">gloop</span></a></li><li>    <a href="dmd_backend_go.html" title="dmd.backend.go"><span class="d_inlinecode donthyphenate notranslate">go</span></a></li><li>    <a href="dmd_backend_goh.html" title="dmd.backend.goh"><span class="d_inlinecode donthyphenate notranslate">goh</span></a></li><li>    <a href="dmd_backend_gother.html" title="dmd.backend.gother"><span class="d_inlinecode donthyphenate notranslate">gother</span></a></li><li>    <a href="dmd_backend_gsroa.html" title="dmd.backend.gsroa"><span class="d_inlinecode donthyphenate notranslate">gsroa</span></a></li><li>    <a href="dmd_backend_iasm.html" title="dmd.backend.iasm"><span class="d_inlinecode donthyphenate notranslate">iasm</span></a></li><li>    <a href="dmd_backend_mach.html" title="dmd.backend.mach"><span class="d_inlinecode donthyphenate notranslate">mach</span></a></li><li>    <a href="dmd_backend_machobj.html" title="dmd.backend.machobj"><span class="d_inlinecode donthyphenate notranslate">machobj</span></a></li><li>    <a href="dmd_backend_md5.html" title="dmd.backend.md5"><span class="d_inlinecode donthyphenate notranslate">md5</span></a></li><li>    <a href="dmd_backend_melf.html" title="dmd.backend.melf"><span class="d_inlinecode donthyphenate notranslate">melf</span></a></li><li>    <a href="dmd_backend_mem.html" title="dmd.backend.mem"><span class="d_inlinecode donthyphenate notranslate">mem</span></a></li><li>    <a href="dmd_backend_mscoff.html" title="dmd.backend.mscoff"><span class="d_inlinecode donthyphenate notranslate">mscoff</span></a></li><li>    <a href="dmd_backend_mscoffobj.html" title="dmd.backend.mscoffobj"><span class="d_inlinecode donthyphenate notranslate">mscoffobj</span></a></li><li>    <a href="dmd_backend_newman.html" title="dmd.backend.newman"><span class="d_inlinecode donthyphenate notranslate">newman</span></a></li><li>    <a href="dmd_backend_nteh.html" title="dmd.backend.nteh"><span class="d_inlinecode donthyphenate notranslate">nteh</span></a></li><li>    <a href="dmd_backend_obj.html" title="dmd.backend.obj"><span class="d_inlinecode donthyphenate notranslate">obj</span></a></li><li>    <a href="dmd_backend_oper.html" title="dmd.backend.oper"><span class="d_inlinecode donthyphenate notranslate">oper</span></a></li><li>    <a href="dmd_backend_os.html" title="dmd.backend.os"><span class="d_inlinecode donthyphenate notranslate">os</span></a></li><li>    <a href="dmd_backend_out.html" title="dmd.backend.out"><span class="d_inlinecode donthyphenate notranslate">out</span></a></li><li>    <a href="dmd_backend_outbuf.html" title="dmd.backend.outbuf"><span class="d_inlinecode donthyphenate notranslate">outbuf</span></a></li><li>    <a href="dmd_backend_pdata.html" title="dmd.backend.pdata"><span class="d_inlinecode donthyphenate notranslate">pdata</span></a></li><li>    <a href="dmd_backend_ph2.html" title="dmd.backend.ph2"><span class="d_inlinecode donthyphenate notranslate">ph2</span></a></li><li>    <a href="dmd_backend_ptrntab.html" title="dmd.backend.ptrntab"><span class="d_inlinecode donthyphenate notranslate">ptrntab</span></a></li><li>    <a href="dmd_backend_rtlsym.html" title="dmd.backend.rtlsym"><span class="d_inlinecode donthyphenate notranslate">rtlsym</span></a></li><li>    <a href="dmd_backend_symbol.html" title="dmd.backend.symbol"><span class="d_inlinecode donthyphenate notranslate">symbol</span></a></li><li>    <a href="dmd_backend_ty.html" title="dmd.backend.ty"><span class="d_inlinecode donthyphenate notranslate">ty</span></a></li><li>    <a href="dmd_backend_type.html" title="dmd.backend.type"><span class="d_inlinecode donthyphenate notranslate">type</span></a></li><li>    <a href="dmd_backend_util2.html" title="dmd.backend.util2"><span class="d_inlinecode donthyphenate notranslate">util2</span></a></li><li>    <a href="dmd_backend_var.html" title="dmd.backend.var"><span class="d_inlinecode donthyphenate notranslate">var</span></a></li><li>    <a href="dmd_backend_xmm.html" title="dmd.backend.xmm"><span class="d_inlinecode donthyphenate notranslate">xmm</span></a>
  146   </li></ul></li><li>  <a href="dmd_blockexit.html" title="dmd.blockexit"><span class="d_inlinecode donthyphenate notranslate">blockexit</span></a></li><li>  <a href="dmd_builtin.html" title="dmd.builtin"><span class="d_inlinecode donthyphenate notranslate">builtin</span></a></li><li>  <a href="dmd_canthrow.html" title="dmd.canthrow"><span class="d_inlinecode donthyphenate notranslate">canthrow</span></a></li><li>  <a href="dmd_chkformat.html" title="dmd.chkformat"><span class="d_inlinecode donthyphenate notranslate">chkformat</span></a></li><li>  <a href="dmd_cli.html" title="dmd.cli"><span class="d_inlinecode donthyphenate notranslate">cli</span></a></li><li>  <a href="dmd_clone.html" title="dmd.clone"><span class="d_inlinecode donthyphenate notranslate">clone</span></a></li><li>  <a href="dmd_compiler.html" title="dmd.compiler"><span class="d_inlinecode donthyphenate notranslate">compiler</span></a></li><li>  <a href="dmd_complex.html" title="dmd.complex"><span class="d_inlinecode donthyphenate notranslate">complex</span></a></li><li>  <a href="dmd_cond.html" title="dmd.cond"><span class="d_inlinecode donthyphenate notranslate">cond</span></a></li><li>  <a href="dmd_console.html" title="dmd.console"><span class="d_inlinecode donthyphenate notranslate">console</span></a></li><li>  <a href="dmd_constfold.html" title="dmd.constfold"><span class="d_inlinecode donthyphenate notranslate">constfold</span></a></li><li>  <a href="dmd_cppmangle.html" title="dmd.cppmangle"><span class="d_inlinecode donthyphenate notranslate">cppmangle</span></a></li><li>  <a href="dmd_cppmanglewin.html" title="dmd.cppmanglewin"><span class="d_inlinecode donthyphenate notranslate">cppmanglewin</span></a></li><li>  <a href="dmd_ctfeexpr.html" title="dmd.ctfeexpr"><span class="d_inlinecode donthyphenate notranslate">ctfeexpr</span></a></li><li>  <a href="dmd_ctorflow.html" title="dmd.ctorflow"><span class="d_inlinecode donthyphenate notranslate">ctorflow</span></a></li><li>  <a href="dmd_dcast.html" title="dmd.dcast"><span class="d_inlinecode donthyphenate notranslate">dcast</span></a></li><li>  <a href="dmd_dclass.html" title="dmd.dclass"><span class="d_inlinecode donthyphenate notranslate">dclass</span></a></li><li>  <a href="dmd_declaration.html" title="dmd.declaration"><span class="d_inlinecode donthyphenate notranslate">declaration</span></a></li><li>  <a href="dmd_delegatize.html" title="dmd.delegatize"><span class="d_inlinecode donthyphenate notranslate">delegatize</span></a></li><li>  <a href="dmd_denum.html" title="dmd.denum"><span class="d_inlinecode donthyphenate notranslate">denum</span></a></li><li>  <a href="dmd_dimport.html" title="dmd.dimport"><span class="d_inlinecode donthyphenate notranslate">dimport</span></a></li><li>  <a href="dmd_dinifile.html" title="dmd.dinifile"><span class="d_inlinecode donthyphenate notranslate">dinifile</span></a></li><li>  <a href="dmd_dinterpret.html" title="dmd.dinterpret"><span class="d_inlinecode donthyphenate notranslate">dinterpret</span></a></li><li>  <a href="dmd_dmacro.html" title="dmd.dmacro"><span class="d_inlinecode donthyphenate notranslate">dmacro</span></a></li><li>  <a href="dmd_dmangle.html" title="dmd.dmangle"><span class="d_inlinecode donthyphenate notranslate">dmangle</span></a></li><li>  <a href="dmd_dmodule.html" title="dmd.dmodule"><span class="d_inlinecode donthyphenate notranslate">dmodule</span></a></li><li>  <a href="dmd_dmsc.html" title="dmd.dmsc"><span class="d_inlinecode donthyphenate notranslate">dmsc</span></a></li><li>  <a href="dmd_doc.html" title="dmd.doc"><span class="d_inlinecode donthyphenate notranslate">doc</span></a></li><li>  <a href="dmd_dscope.html" title="dmd.dscope"><span class="d_inlinecode donthyphenate notranslate">dscope</span></a></li><li>  <a href="dmd_dstruct.html" title="dmd.dstruct"><span class="d_inlinecode donthyphenate notranslate">dstruct</span></a></li><li>  <a href="dmd_dsymbol.html" title="dmd.dsymbol"><span class="d_inlinecode donthyphenate notranslate">dsymbol</span></a></li><li>  <a href="dmd_dsymbolsem.html" title="dmd.dsymbolsem"><span class="d_inlinecode donthyphenate notranslate">dsymbolsem</span></a></li><li>  <a href="dmd_dtemplate.html" title="dmd.dtemplate"><span class="d_inlinecode donthyphenate notranslate">dtemplate</span></a></li><li>  <a href="dmd_dtoh.html" title="dmd.dtoh"><span class="d_inlinecode donthyphenate notranslate">dtoh</span></a></li><li>  <a href="dmd_dversion.html" title="dmd.dversion"><span class="d_inlinecode donthyphenate notranslate">dversion</span></a></li><li>  <a href="dmd_e2ir.html" title="dmd.e2ir"><span class="d_inlinecode donthyphenate notranslate">e2ir</span></a></li><li>  <a href="dmd_eh.html" title="dmd.eh"><span class="d_inlinecode donthyphenate notranslate">eh</span></a></li><li>  <a href="dmd_entity.html" title="dmd.entity"><span class="d_inlinecode donthyphenate notranslate">entity</span></a></li><li>  <a href="dmd_env.html" title="dmd.env"><span class="d_inlinecode donthyphenate notranslate">env</span></a></li><li>  <a href="dmd_errors.html" title="dmd.errors"><span class="d_inlinecode donthyphenate notranslate">errors</span></a></li><li>  <a href="dmd_escape.html" title="dmd.escape"><span class="d_inlinecode donthyphenate notranslate">escape</span></a></li><li>  <a href="dmd_expression.html" title="dmd.expression"><span class="d_inlinecode donthyphenate notranslate">expression</span></a></li><li>  <a href="dmd_expressionsem.html" title="dmd.expressionsem"><span class="d_inlinecode donthyphenate notranslate">expressionsem</span></a></li><li>  <a href="dmd_filecache.html" title="dmd.filecache"><span class="d_inlinecode donthyphenate notranslate">filecache</span></a></li><li>  <a href="dmd_foreachvar.html" title="dmd.foreachvar"><span class="d_inlinecode donthyphenate notranslate">foreachvar</span></a></li><li>  <a href="dmd_frontend.html" title="dmd.frontend"><span class="d_inlinecode donthyphenate notranslate">frontend</span></a></li><li>  <a href="dmd_func.html" title="dmd.func"><span class="d_inlinecode donthyphenate notranslate">func</span></a></li><li>  <a href="dmd_globals.html" title="dmd.globals"><span class="d_inlinecode donthyphenate notranslate">globals</span></a></li><li>  <a href="dmd_glue.html" title="dmd.glue"><span class="d_inlinecode donthyphenate notranslate">glue</span></a></li><li>  <a href="dmd_gluelayer.html" title="dmd.gluelayer"><span class="d_inlinecode donthyphenate notranslate">gluelayer</span></a></li><li>  <a href="dmd_hdrgen.html" title="dmd.hdrgen"><span class="d_inlinecode donthyphenate notranslate">hdrgen</span></a></li><li>  <a href="dmd_iasm.html" title="dmd.iasm"><span class="d_inlinecode donthyphenate notranslate">iasm</span></a></li><li>  <a href="dmd_iasmdmd.html" title="dmd.iasmdmd"><span class="d_inlinecode donthyphenate notranslate">iasmdmd</span></a></li><li>  <a href="dmd_iasmgcc.html" title="dmd.iasmgcc"><span class="d_inlinecode donthyphenate notranslate">iasmgcc</span></a></li><li>  <a href="dmd_id.html" title="dmd.id"><span class="d_inlinecode donthyphenate notranslate">id</span></a></li><li>  <a href="dmd_identifier.html" title="dmd.identifier"><span class="d_inlinecode donthyphenate notranslate">identifier</span></a></li><li>  <a href="dmd_impcnvtab.html" title="dmd.impcnvtab"><span class="d_inlinecode donthyphenate notranslate">impcnvtab</span></a></li><li>  <a href="dmd_imphint.html" title="dmd.imphint"><span class="d_inlinecode donthyphenate notranslate">imphint</span></a></li><li>  <a href="dmd_init.html" title="dmd.init"><span class="d_inlinecode donthyphenate notranslate">init</span></a></li><li>  <a href="dmd_initsem.html" title="dmd.initsem"><span class="d_inlinecode donthyphenate notranslate">initsem</span></a></li><li>  <a href="dmd_inline.html" title="dmd.inline"><span class="d_inlinecode donthyphenate notranslate">inline</span></a></li><li>  <a href="dmd_inlinecost.html" title="dmd.inlinecost"><span class="d_inlinecode donthyphenate notranslate">inlinecost</span></a></li><li>  <a href="dmd_intrange.html" title="dmd.intrange"><span class="d_inlinecode donthyphenate notranslate">intrange</span></a></li><li>  <a href="dmd_json.html" title="dmd.json"><span class="d_inlinecode donthyphenate notranslate">json</span></a></li><li>  <a href="dmd_lambdacomp.html" title="dmd.lambdacomp"><span class="d_inlinecode donthyphenate notranslate">lambdacomp</span></a></li><li>  <a href="dmd_lexer.html" title="dmd.lexer"><span class="d_inlinecode donthyphenate notranslate">lexer</span></a></li><li>  <a href="dmd_lib.html" title="dmd.lib"><span class="d_inlinecode donthyphenate notranslate">lib</span></a></li><li>  <a href="dmd_libelf.html" title="dmd.libelf"><span class="d_inlinecode donthyphenate notranslate">libelf</span></a></li><li>  <a href="dmd_libomf.html" title="dmd.libomf"><span class="d_inlinecode donthyphenate notranslate">libomf</span></a></li><li>  <a href="dmd_link.html" title="dmd.link"><span class="d_inlinecode donthyphenate notranslate">link</span></a></li><li>  <a href="dmd_mars.html" title="dmd.mars"><span class="d_inlinecode donthyphenate notranslate">mars</span></a></li><li>  <a href="dmd_mtype.html" title="dmd.mtype"><span class="d_inlinecode donthyphenate notranslate">mtype</span></a></li><li>  <a href="dmd_nogc.html" title="dmd.nogc"><span class="d_inlinecode donthyphenate notranslate">nogc</span></a></li><li>  <a href="dmd_nspace.html" title="dmd.nspace"><span class="d_inlinecode donthyphenate notranslate">nspace</span></a></li><li>  <a href="dmd_ob.html" title="dmd.ob"><span class="d_inlinecode donthyphenate notranslate">ob</span></a></li><li>  <a href="dmd_objc.html" title="dmd.objc"><span class="d_inlinecode donthyphenate notranslate">objc</span></a></li><li>  <a href="dmd_objc_glue.html" title="dmd.objc_glue"><span class="d_inlinecode donthyphenate notranslate">objc_glue</span></a></li><li>  <a href="dmd_opover.html" title="dmd.opover"><span class="d_inlinecode donthyphenate notranslate">opover</span></a></li><li>  <a href="dmd_optimize.html" title="dmd.optimize"><span class="d_inlinecode donthyphenate notranslate">optimize</span></a></li><li>  <a href="dmd_parse.html" title="dmd.parse"><span class="d_inlinecode donthyphenate notranslate">parse</span></a></li><li>  <a href="dmd_parsetimevisitor.html" title="dmd.parsetimevisitor"><span class="d_inlinecode donthyphenate notranslate">parsetimevisitor</span></a></li><li>  <a href="dmd_permissivevisitor.html" title="dmd.permissivevisitor"><span class="d_inlinecode donthyphenate notranslate">permissivevisitor</span></a></li><li>  <a href="dmd_printast.html" title="dmd.printast"><span class="d_inlinecode donthyphenate notranslate">printast</span></a></li><li>  <h7><span class="d_inlinecode donthyphenate notranslate">root</span></h7><ul><li>    <a href="dmd_root_aav.html" title="dmd.root.aav"><span class="d_inlinecode donthyphenate notranslate">aav</span></a></li><li>    <a href="dmd_root_array.html" title="dmd.root.array"><span class="d_inlinecode donthyphenate notranslate">array</span></a></li><li>    <a href="dmd_root_bitarray.html" title="dmd.root.bitarray"><span class="d_inlinecode donthyphenate notranslate">bitarray</span></a></li><li>    <a href="dmd_root_ctfloat.html" title="dmd.root.ctfloat"><span class="d_inlinecode donthyphenate notranslate">ctfloat</span></a></li><li>    <a href="dmd_root_file.html" title="dmd.root.file"><span class="d_inlinecode donthyphenate notranslate">file</span></a></li><li>    <a href="dmd_root_filename.html" title="dmd.root.filename"><span class="d_inlinecode donthyphenate notranslate">filename</span></a></li><li>    <a href="dmd_root_hash.html" title="dmd.root.hash"><span class="d_inlinecode donthyphenate notranslate">hash</span></a></li><li>    <a href="dmd_root_longdouble.html" title="dmd.root.longdouble"><span class="d_inlinecode donthyphenate notranslate">longdouble</span></a></li><li>    <a href="dmd_root_man.html" title="dmd.root.man"><span class="d_inlinecode donthyphenate notranslate">man</span></a></li><li>    <a href="dmd_root_outbuffer.html" title="dmd.root.outbuffer"><span class="d_inlinecode donthyphenate notranslate">outbuffer</span></a></li><li>    <a href="dmd_root_port.html" title="dmd.root.port"><span class="d_inlinecode donthyphenate notranslate">port</span></a></li><li>    <a href="dmd_root_region.html" title="dmd.root.region"><span class="d_inlinecode donthyphenate notranslate">region</span></a></li><li>    <a href="dmd_root_response.html" title="dmd.root.response"><span class="d_inlinecode donthyphenate notranslate">response</span></a></li><li>    <a href="dmd_root_rmem.html" title="dmd.root.rmem"><span class="d_inlinecode donthyphenate notranslate">rmem</span></a></li><li>    <a href="dmd_root_rootobject.html" title="dmd.root.rootobject"><span class="d_inlinecode donthyphenate notranslate">rootobject</span></a></li><li>    <a href="dmd_root_speller.html" title="dmd.root.speller"><span class="d_inlinecode donthyphenate notranslate">speller</span></a></li><li>    <a href="dmd_root_string.html" title="dmd.root.string"><span class="d_inlinecode donthyphenate notranslate">string</span></a></li><li>    <a href="dmd_root_stringtable.html" title="dmd.root.stringtable"><span class="d_inlinecode donthyphenate notranslate">stringtable</span></a></li><li>    <a href="dmd_root_strtold.html" title="dmd.root.strtold"><span class="d_inlinecode donthyphenate notranslate">strtold</span></a>
  147   </li></ul></li><li>  <a href="dmd_s2ir.html" title="dmd.s2ir"><span class="d_inlinecode donthyphenate notranslate">s2ir</span></a></li><li>  <a href="dmd_safe.html" title="dmd.safe"><span class="d_inlinecode donthyphenate notranslate">safe</span></a></li><li>  <a href="dmd_sapply.html" title="dmd.sapply"><span class="d_inlinecode donthyphenate notranslate">sapply</span></a></li><li>  <a href="dmd_scanelf.html" title="dmd.scanelf"><span class="d_inlinecode donthyphenate notranslate">scanelf</span></a></li><li>  <a href="dmd_scanomf.html" title="dmd.scanomf"><span class="d_inlinecode donthyphenate notranslate">scanomf</span></a></li><li>  <a href="dmd_semantic2.html" title="dmd.semantic2"><span class="d_inlinecode donthyphenate notranslate">semantic2</span></a></li><li>  <a href="dmd_semantic3.html" title="dmd.semantic3"><span class="d_inlinecode donthyphenate notranslate">semantic3</span></a></li><li>  <a href="dmd_sideeffect.html" title="dmd.sideeffect"><span class="d_inlinecode donthyphenate notranslate">sideeffect</span></a></li><li>  <a href="dmd_statement.html" title="dmd.statement"><span class="d_inlinecode donthyphenate notranslate">statement</span></a></li><li>  <a href="dmd_statement_rewrite_walker.html" title="dmd.statement_rewrite_walker"><span class="d_inlinecode donthyphenate notranslate">statement_rewrite_walker</span></a></li><li>  <a href="dmd_statementsem.html" title="dmd.statementsem"><span class="d_inlinecode donthyphenate notranslate">statementsem</span></a></li><li>  <a href="dmd_staticassert.html" title="dmd.staticassert"><span class="d_inlinecode donthyphenate notranslate">staticassert</span></a></li><li>  <a href="dmd_staticcond.html" title="dmd.staticcond"><span class="d_inlinecode donthyphenate notranslate">staticcond</span></a></li><li>  <a href="dmd_stmtstate.html" title="dmd.stmtstate"><span class="d_inlinecode donthyphenate notranslate">stmtstate</span></a></li><li>  <a href="dmd_strictvisitor.html" title="dmd.strictvisitor"><span class="d_inlinecode donthyphenate notranslate">strictvisitor</span></a></li><li>  <a href="dmd_target.html" title="dmd.target"><span class="d_inlinecode donthyphenate notranslate">target</span></a></li><li>  <a href="dmd_templateparamsem.html" title="dmd.templateparamsem"><span class="d_inlinecode donthyphenate notranslate">templateparamsem</span></a></li><li>  <a href="dmd_tocsym.html" title="dmd.tocsym"><span class="d_inlinecode donthyphenate notranslate">tocsym</span></a></li><li>  <a href="dmd_toctype.html" title="dmd.toctype"><span class="d_inlinecode donthyphenate notranslate">toctype</span></a></li><li>  <a href="dmd_tocvdebug.html" title="dmd.tocvdebug"><span class="d_inlinecode donthyphenate notranslate">tocvdebug</span></a></li><li>  <a href="dmd_todt.html" title="dmd.todt"><span class="d_inlinecode donthyphenate notranslate">todt</span></a></li><li>  <a href="dmd_toir.html" title="dmd.toir"><span class="d_inlinecode donthyphenate notranslate">toir</span></a></li><li>  <a href="dmd_tokens.html" title="dmd.tokens"><span class="d_inlinecode donthyphenate notranslate">tokens</span></a></li><li>  <a href="dmd_toobj.html" title="dmd.toobj"><span class="d_inlinecode donthyphenate notranslate">toobj</span></a></li><li>  <a href="dmd_traits.html" title="dmd.traits"><span class="d_inlinecode donthyphenate notranslate">traits</span></a></li><li>  <a href="dmd_transitivevisitor.html" title="dmd.transitivevisitor"><span class="d_inlinecode donthyphenate notranslate">transitivevisitor</span></a></li><li>  <a href="dmd_typesem.html" title="dmd.typesem"><span class="d_inlinecode donthyphenate notranslate">typesem</span></a></li><li>  <a href="dmd_typinf.html" title="dmd.typinf"><span class="d_inlinecode donthyphenate notranslate">typinf</span></a></li><li>  <a href="dmd_utf.html" title="dmd.utf"><span class="d_inlinecode donthyphenate notranslate">utf</span></a></li><li>  <a href="dmd_utils.html" title="dmd.utils"><span class="d_inlinecode donthyphenate notranslate">utils</span></a></li><li>  <a href="dmd_visitor.html" title="dmd.visitor"><span class="d_inlinecode donthyphenate notranslate">visitor</span></a></li><li>  <a href="dmd_vsoptions.html" title="dmd.vsoptions"><span class="d_inlinecode donthyphenate notranslate">vsoptions</span></a>
  148 </li></ul>
  149 </li>
  150 
  151 <li class='expand-container modlist-submenu-rt'><a class='expand-toggle' href='#'><span><em class="tt">rt</em></span></a>
  152 <ul><li>  <a href="rt_aApply.html" title="rt.aApply"><span class="d_inlinecode donthyphenate notranslate">aApply</span></a></li><li>  <a href="rt_aApplyR.html" title="rt.aApplyR"><span class="d_inlinecode donthyphenate notranslate">aApplyR</span></a></li><li>  <a href="rt_aaA.html" title="rt.aaA"><span class="d_inlinecode donthyphenate notranslate">aaA</span></a></li><li>  <a href="rt_adi.html" title="rt.adi"><span class="d_inlinecode donthyphenate notranslate">adi</span></a></li><li>  <a href="rt_alloca.html" title="rt.alloca"><span class="d_inlinecode donthyphenate notranslate">alloca</span></a></li><li>  <a href="rt_arrayassign.html" title="rt.arrayassign"><span class="d_inlinecode donthyphenate notranslate">arrayassign</span></a></li><li>  <a href="rt_arraycat.html" title="rt.arraycat"><span class="d_inlinecode donthyphenate notranslate">arraycat</span></a></li><li>  <h7><span class="d_inlinecode donthyphenate notranslate">backtrace</span></h7><ul><li>    <a href="rt_backtrace_dwarf.html" title="rt.backtrace.dwarf"><span class="d_inlinecode donthyphenate notranslate">dwarf</span></a></li><li>    <a href="rt_backtrace_elf.html" title="rt.backtrace.elf"><span class="d_inlinecode donthyphenate notranslate">elf</span></a></li><li>    <a href="rt_backtrace_macho.html" title="rt.backtrace.macho"><span class="d_inlinecode donthyphenate notranslate">macho</span></a>
  153   </li></ul></li><li>  <a href="rt_cast_.html" title="rt.cast_"><span class="d_inlinecode donthyphenate notranslate">cast_</span></a></li><li>  <a href="rt_cmath2.html" title="rt.cmath2"><span class="d_inlinecode donthyphenate notranslate">cmath2</span></a></li><li>  <a href="rt_config.html" title="rt.config"><span class="d_inlinecode donthyphenate notranslate">config</span></a></li><li>  <a href="rt_cover.html" title="rt.cover"><span class="d_inlinecode donthyphenate notranslate">cover</span></a></li><li>  <a href="rt_critical_.html" title="rt.critical_"><span class="d_inlinecode donthyphenate notranslate">critical_</span></a></li><li>  <a href="rt_deh.html" title="rt.deh"><span class="d_inlinecode donthyphenate notranslate">deh</span></a></li><li>  <a href="rt_deh_win32.html" title="rt.deh_win32"><span class="d_inlinecode donthyphenate notranslate">deh_win32</span></a></li><li>  <a href="rt_deh_win64_posix.html" title="rt.deh_win64_posix"><span class="d_inlinecode donthyphenate notranslate">deh_win64_posix</span></a></li><li>  <a href="rt_dmain2.html" title="rt.dmain2"><span class="d_inlinecode donthyphenate notranslate">dmain2</span></a></li><li>  <a href="rt_dwarfeh.html" title="rt.dwarfeh"><span class="d_inlinecode donthyphenate notranslate">dwarfeh</span></a></li><li>  <a href="rt_ehalloc.html" title="rt.ehalloc"><span class="d_inlinecode donthyphenate notranslate">ehalloc</span></a></li><li>  <a href="rt_invariant.html" title="rt.invariant"><span class="d_inlinecode donthyphenate notranslate">invariant</span></a></li><li>  <a href="rt_lifetime.html" title="rt.lifetime"><span class="d_inlinecode donthyphenate notranslate">lifetime</span></a></li><li>  <a href="rt_llmath.html" title="rt.llmath"><span class="d_inlinecode donthyphenate notranslate">llmath</span></a></li><li>  <a href="rt_memory.html" title="rt.memory"><span class="d_inlinecode donthyphenate notranslate">memory</span></a></li><li>  <a href="rt_memset.html" title="rt.memset"><span class="d_inlinecode donthyphenate notranslate">memset</span></a></li><li>  <a href="rt_minfo.html" title="rt.minfo"><span class="d_inlinecode donthyphenate notranslate">minfo</span></a></li><li>  <a href="rt_monitor_.html" title="rt.monitor_"><span class="d_inlinecode donthyphenate notranslate">monitor_</span></a></li><li>  <a href="rt_profilegc.html" title="rt.profilegc"><span class="d_inlinecode donthyphenate notranslate">profilegc</span></a></li><li>  <a href="rt_qsort.html" title="rt.qsort"><span class="d_inlinecode donthyphenate notranslate">qsort</span></a></li><li>  <a href="rt_sections.html" title="rt.sections"><span class="d_inlinecode donthyphenate notranslate">sections</span></a></li><li>  <a href="rt_sections_android.html" title="rt.sections_android"><span class="d_inlinecode donthyphenate notranslate">sections_android</span></a></li><li>  <a href="rt_sections_darwin_64.html" title="rt.sections_darwin_64"><span class="d_inlinecode donthyphenate notranslate">sections_darwin_64</span></a></li><li>  <a href="rt_sections_elf_shared.html" title="rt.sections_elf_shared"><span class="d_inlinecode donthyphenate notranslate">sections_elf_shared</span></a></li><li>  <a href="rt_sections_osx_x86.html" title="rt.sections_osx_x86"><span class="d_inlinecode donthyphenate notranslate">sections_osx_x86</span></a></li><li>  <a href="rt_sections_osx_x86_64.html" title="rt.sections_osx_x86_64"><span class="d_inlinecode donthyphenate notranslate">sections_osx_x86_64</span></a></li><li>  <a href="rt_sections_solaris.html" title="rt.sections_solaris"><span class="d_inlinecode donthyphenate notranslate">sections_solaris</span></a></li><li>  <a href="rt_sections_win32.html" title="rt.sections_win32"><span class="d_inlinecode donthyphenate notranslate">sections_win32</span></a></li><li>  <a href="rt_sections_win64.html" title="rt.sections_win64"><span class="d_inlinecode donthyphenate notranslate">sections_win64</span></a></li><li>  <a href="rt_tlsgc.html" title="rt.tlsgc"><span class="d_inlinecode donthyphenate notranslate">tlsgc</span></a></li><li>  <a href="rt_trace.html" title="rt.trace"><span class="d_inlinecode donthyphenate notranslate">trace</span></a></li><li>  <a href="rt_tracegc.html" title="rt.tracegc"><span class="d_inlinecode donthyphenate notranslate">tracegc</span></a></li><li>  <a href="rt_unwind.html" title="rt.unwind"><span class="d_inlinecode donthyphenate notranslate">unwind</span></a></li><li>  <h7><span class="d_inlinecode donthyphenate notranslate">util</span></h7><ul><li>    <h7><span class="d_inlinecode donthyphenate notranslate">container</span></h7><ul><li>      <a href="rt_util_container_array.html" title="rt.util.container.array"><span class="d_inlinecode donthyphenate notranslate">array</span></a></li><li>      <a href="rt_util_container_common.html" title="rt.util.container.common"><span class="d_inlinecode donthyphenate notranslate">common</span></a></li><li>      <a href="rt_util_container_hashtab.html" title="rt.util.container.hashtab"><span class="d_inlinecode donthyphenate notranslate">hashtab</span></a></li><li>      <a href="rt_util_container_treap.html" title="rt.util.container.treap"><span class="d_inlinecode donthyphenate notranslate">treap</span></a>
  154     </li></ul></li><li>    <a href="rt_util_random.html" title="rt.util.random"><span class="d_inlinecode donthyphenate notranslate">random</span></a></li><li>    <a href="rt_util_typeinfo.html" title="rt.util.typeinfo"><span class="d_inlinecode donthyphenate notranslate">typeinfo</span></a></li><li>    <a href="rt_util_utility.html" title="rt.util.utility"><span class="d_inlinecode donthyphenate notranslate">utility</span></a>
  155   </li></ul>
  156 </li></ul>
  157 </li></ul>
  158 </div>
  159     <div class="hyphenate" id="content">        
  160 <div id="tools"><div >  <div class="tip smallprint">        <a href="https://issues.dlang.org/enter_bug.cgi?bug_file_loc=http%3A%2F%2Fdlang.org/phobos/&amp;component=phobos&amp;op_sys=All&amp;priority=P3&amp;product=D&amp;rep_platform=All&amp;short_desc=%5Bstd.experimental.allocator.building_blocks.stats_collector%5D&amp;version=D2&amp;bug_severity=enhancement">Report a bug</a>
  161         <div >          If you spot a problem with this page, click here to create a Bugzilla issue.
  162         </div>
  163     </div>
  164     <div class="tip smallprint">        <a href="https://github.com/dlang/phobos/edit/master/std/experimental/allocator/building_blocks/stats_collector.d">Improve this page</a>
  165         <div >          Quickly fork, edit online, and submit a pull request for this page.
  166             Requires a signed-in GitHub account. This works well for small changes.
  167             If you'd like to make larger changes you may want to consider using
  168             a local clone.
  169         </div>
  170     </div>
  171 </div></div>
  172         <h1><span class="d_title">std.experimental.allocator.building_blocks.stats_collector</span></h1>
  173         <div class="quickindex" id="quickindex"></div>
  174         <div class="summary">Allocator that collects useful statistics about allocations, both global and per
  175 calling point. The statistics collected can be configured statically by choosing
  176 combinations of <span class="d_inlinecode donthyphenate notranslate">Options</span> appropriately.
  177 </div><div class="val"><p class="keyval Section"><span class="key keySection">Source</span>
  178 <span class="phobos_src"><a class="https" href="https://github.com/dlang/phobos/blob/master/std/experimental/allocator/building_blocks/stats_collector.d">std/experimental/allocator/building_blocks/stats_collector.d</a></span></p></div>
  179 <span class="dlang_runnable"></span><div class="keyval Examples"><span class="key keyExamples">Examples:</span> <div class="val valExamples"><pre class="d_code notranslate"><span class="d_keyword">import</span> std.experimental.allocator.gc_allocator : GCAllocator;
  180 <span class="d_keyword">import</span> std.experimental.allocator.building_blocks.free_list : FreeList;
  181 <span class="d_keyword">alias</span> Allocator = StatsCollector!(GCAllocator, Options.bytesUsed);
  182 </pre>
  183 </div></div>
  184 
  185 <dl><dt class="d_decl"><div ><span class="def-anchor" id=".Options"></span><div class="quickindex" id="quickindex.Options"></div>enum <span class="def-anchor" id="Options"></span><code class="ddoc_psymbol">Options</code>: ulong;
  186 <br></div></dt>
  187 <dd><div class="summary">Options for <span class="d_inlinecode donthyphenate notranslate">StatsCollector</span> defined below. Each enables during
  188 compilation one specific counter, statistic, or other piece of information.</div>
  189 <dl><dt class="d_decl"><div ><span class="def-anchor" id=".Options.numOwns"></span><div class="quickindex" id="quickindex.Options.numOwns"></div><span class="def-anchor" id="numOwns"></span><code class="ddoc_psymbol">numOwns</code><br></div></dt>
  190 <dd><div class="summary">Counts the number of calls to <span class="d_inlinecode donthyphenate notranslate">owns</span>.</div>
  191 </dd>
  192 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.numAllocate"></span><div class="quickindex" id="quickindex.Options.numAllocate"></div><span class="def-anchor" id="numAllocate"></span><code class="ddoc_psymbol">numAllocate</code><br></div></dt>
  193 <dd><div class="summary">Counts the number of calls to <span class="d_inlinecode donthyphenate notranslate">allocate</span>. All calls are counted,
  194     including requests for zero bytes or failed requests.</div>
  195 </dd>
  196 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.numAllocateOK"></span><div class="quickindex" id="quickindex.Options.numAllocateOK"></div><span class="def-anchor" id="numAllocateOK"></span><code class="ddoc_psymbol">numAllocateOK</code><br></div></dt>
  197 <dd><div class="summary">Counts the number of calls to <span class="d_inlinecode donthyphenate notranslate">allocate</span> that succeeded, i.e. they
  198     returned a block as large as requested. (N.B. requests for zero bytes count
  199     as successful.)</div>
  200 </dd>
  201 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.numExpand"></span><div class="quickindex" id="quickindex.Options.numExpand"></div><span class="def-anchor" id="numExpand"></span><code class="ddoc_psymbol">numExpand</code><br></div></dt>
  202 <dd><div class="summary">Counts the number of calls to <span class="d_inlinecode donthyphenate notranslate">expand</span>, regardless of arguments or
  203     result.</div>
  204 </dd>
  205 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.numExpandOK"></span><div class="quickindex" id="quickindex.Options.numExpandOK"></div><span class="def-anchor" id="numExpandOK"></span><code class="ddoc_psymbol">numExpandOK</code><br></div></dt>
  206 <dd><div class="summary">Counts the number of calls to <span class="d_inlinecode donthyphenate notranslate">expand</span> that resulted in a successful
  207     expansion.</div>
  208 </dd>
  209 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.numReallocate"></span><div class="quickindex" id="quickindex.Options.numReallocate"></div><span class="def-anchor" id="numReallocate"></span><code class="ddoc_psymbol">numReallocate</code><br></div></dt>
  210 <dd><div class="summary">Counts the number of calls to <span class="d_inlinecode donthyphenate notranslate">reallocate</span>, regardless of arguments or
  211     result.</div>
  212 </dd>
  213 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.numReallocateOK"></span><div class="quickindex" id="quickindex.Options.numReallocateOK"></div><span class="def-anchor" id="numReallocateOK"></span><code class="ddoc_psymbol">numReallocateOK</code><br></div></dt>
  214 <dd><div class="summary">Counts the number of calls to <span class="d_inlinecode donthyphenate notranslate">reallocate</span> that succeeded.
  215     (Reallocations to zero bytes count as successful.)</div>
  216 </dd>
  217 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.numReallocateInPlace"></span><div class="quickindex" id="quickindex.Options.numReallocateInPlace"></div><span class="def-anchor" id="numReallocateInPlace"></span><code class="ddoc_psymbol">numReallocateInPlace</code><br></div></dt>
  218 <dd><div class="summary">Counts the number of calls to <span class="d_inlinecode donthyphenate notranslate">reallocate</span> that resulted in an in-place
  219     reallocation (no memory moved). If this number is close to the total number
  220     of reallocations, that indicates the allocator finds room at the current
  221     block's end in a large fraction of the cases, but also that internal
  222     fragmentation may be high (the size of the unit of allocation is large
  223     compared to the typical allocation size of the application).</div>
  224 </dd>
  225 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.numDeallocate"></span><div class="quickindex" id="quickindex.Options.numDeallocate"></div><span class="def-anchor" id="numDeallocate"></span><code class="ddoc_psymbol">numDeallocate</code><br></div></dt>
  226 <dd><div class="summary">Counts the number of calls to <span class="d_inlinecode donthyphenate notranslate">deallocate</span>.</div>
  227 </dd>
  228 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.numDeallocateAll"></span><div class="quickindex" id="quickindex.Options.numDeallocateAll"></div><span class="def-anchor" id="numDeallocateAll"></span><code class="ddoc_psymbol">numDeallocateAll</code><br></div></dt>
  229 <dd><div class="summary">Counts the number of calls to <span class="d_inlinecode donthyphenate notranslate">deallocateAll</span>.</div>
  230 </dd>
  231 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.numAlignedAllocate"></span><div class="quickindex" id="quickindex.Options.numAlignedAllocate"></div><span class="def-anchor" id="numAlignedAllocate"></span><code class="ddoc_psymbol">numAlignedAllocate</code><br></div></dt>
  232 <dd><div class="summary">Counts the number of calls to <span class="d_inlinecode donthyphenate notranslate">alignedAllocate</span>. All calls are counted,
  233     including requests for zero bytes or failed requests.</div>
  234 </dd>
  235 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.numAlignedAllocateOk"></span><div class="quickindex" id="quickindex.Options.numAlignedAllocateOk"></div><span class="def-anchor" id="numAlignedAllocateOk"></span><code class="ddoc_psymbol">numAlignedAllocateOk</code><br></div></dt>
  236 <dd><div class="summary">Counts the number of calls to <span class="d_inlinecode donthyphenate notranslate">alignedAllocate</span> that succeeded, i.e. they
  237     returned a block as large as requested. (N.B. requests for zero bytes count
  238     as successful.)</div>
  239 </dd>
  240 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.numAll"></span><div class="quickindex" id="quickindex.Options.numAll"></div><span class="def-anchor" id="numAll"></span><code class="ddoc_psymbol">numAll</code><br></div></dt>
  241 <dd><div class="summary">Chooses all <span class="d_inlinecode donthyphenate notranslate">numXxx</span> flags.</div>
  242 </dd>
  243 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.bytesUsed"></span><div class="quickindex" id="quickindex.Options.bytesUsed"></div><span class="def-anchor" id="bytesUsed"></span><code class="ddoc_psymbol">bytesUsed</code><br></div></dt>
  244 <dd><div class="summary">Tracks bytes currently allocated by this allocator. This number goes up
  245     and down as memory is allocated and deallocated, and is zero if the
  246     allocator currently has no active allocation.</div>
  247 </dd>
  248 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.bytesAllocated"></span><div class="quickindex" id="quickindex.Options.bytesAllocated"></div><span class="def-anchor" id="bytesAllocated"></span><code class="ddoc_psymbol">bytesAllocated</code><br></div></dt>
  249 <dd><div class="summary">Tracks total cumulative bytes allocated by means of <span class="d_inlinecode donthyphenate notranslate">allocate</span>,
  250     <span class="d_inlinecode donthyphenate notranslate">expand</span>, and <span class="d_inlinecode donthyphenate notranslate">reallocate</span> (when resulting in an expansion). This
  251     number always grows and indicates allocation traffic. To compute bytes
  252     deallocated cumulatively, subtract <span class="d_inlinecode donthyphenate notranslate">bytesUsed</span> from <span class="d_inlinecode donthyphenate notranslate"><span class="def-anchor" id="bytesAllocated"></span><code class="ddoc_psymbol">bytesAllocated</code></span>.</div>
  253 </dd>
  254 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.bytesExpanded"></span><div class="quickindex" id="quickindex.Options.bytesExpanded"></div><span class="def-anchor" id="bytesExpanded"></span><code class="ddoc_psymbol">bytesExpanded</code><br></div></dt>
  255 <dd><div class="summary">Tracks the sum of all <span class="d_inlinecode donthyphenate notranslate">delta</span> values in calls of the form
  256     <span class="d_inlinecode donthyphenate notranslate">expand(b, delta)</span> that succeed (return <span class="d_inlinecode donthyphenate notranslate">true</span>).</div>
  257 </dd>
  258 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.bytesContracted"></span><div class="quickindex" id="quickindex.Options.bytesContracted"></div><span class="def-anchor" id="bytesContracted"></span><code class="ddoc_psymbol">bytesContracted</code><br></div></dt>
  259 <dd><div class="summary">Tracks the sum of all <span class="d_inlinecode donthyphenate notranslate">b.length - s</span> with <span class="d_inlinecode donthyphenate notranslate">b.length &gt; s</span> in calls of
  260     the form <span class="d_inlinecode donthyphenate notranslate">realloc(b, s)</span> that succeed (return <span class="d_inlinecode donthyphenate notranslate">true</span>). In per-call
  261     statistics, also unambiguously counts the bytes deallocated with
  262     <span class="d_inlinecode donthyphenate notranslate">deallocate</span>.</div>
  263 </dd>
  264 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.bytesMoved"></span><div class="quickindex" id="quickindex.Options.bytesMoved"></div><span class="def-anchor" id="bytesMoved"></span><code class="ddoc_psymbol">bytesMoved</code><br></div></dt>
  265 <dd><div class="summary">Tracks the sum of all bytes moved as a result of calls to <span class="d_inlinecode donthyphenate notranslate">realloc</span> that
  266     were unable to reallocate in place. A large number (relative to <span class="d_inlinecode donthyphenate notranslate">    bytesAllocated</span>) indicates that the application should use larger
  267     preallocations.</div>
  268 </dd>
  269 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.bytesNotMoved"></span><div class="quickindex" id="quickindex.Options.bytesNotMoved"></div><span class="def-anchor" id="bytesNotMoved"></span><code class="ddoc_psymbol">bytesNotMoved</code><br></div></dt>
  270 <dd><div class="summary">Tracks the sum of all bytes NOT moved as result of calls to <span class="d_inlinecode donthyphenate notranslate">realloc</span>
  271     that managed to reallocate in place. A large number (relative to <span class="d_inlinecode donthyphenate notranslate">    bytesAllocated</span>) indicates that the application is expansion-intensive and
  272     is saving a good amount of moves. However, if this number is relatively
  273     small and <span class="d_inlinecode donthyphenate notranslate">bytesSlack</span> is high, it means the application is
  274     overallocating for little benefit.</div>
  275 </dd>
  276 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.bytesSlack"></span><div class="quickindex" id="quickindex.Options.bytesSlack"></div><span class="def-anchor" id="bytesSlack"></span><code class="ddoc_psymbol">bytesSlack</code><br></div></dt>
  277 <dd><div class="summary">Measures the sum of extra bytes allocated beyond the bytes requested, i.e.
  278     the <a href="http://goo.gl/YoKffF">internal fragmentation</a>. This is the current
  279     effective number of slack bytes, and it goes up and down with time.</div>
  280 </dd>
  281 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.bytesHighTide"></span><div class="quickindex" id="quickindex.Options.bytesHighTide"></div><span class="def-anchor" id="bytesHighTide"></span><code class="ddoc_psymbol">bytesHighTide</code><br></div></dt>
  282 <dd><div class="summary">Measures the maximum bytes allocated over the time. This is useful for
  283     dimensioning allocators.</div>
  284 </dd>
  285 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.bytesAll"></span><div class="quickindex" id="quickindex.Options.bytesAll"></div><span class="def-anchor" id="bytesAll"></span><code class="ddoc_psymbol">bytesAll</code><br></div></dt>
  286 <dd><div class="summary">Chooses all <span class="d_inlinecode donthyphenate notranslate">byteXxx</span> flags.</div>
  287 </dd>
  288 <dt class="d_decl"><div ><span class="def-anchor" id=".Options.all"></span><div class="quickindex" id="quickindex.Options.all"></div><span class="def-anchor" id="all"></span><code class="ddoc_psymbol">all</code><br></div></dt>
  289 <dd><div class="summary">Combines all flags above.</div>
  290 </dd>
  291 </dl>
  292 </dd>
  293 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector"></span><div class="quickindex" id="quickindex.StatsCollector"></div>struct <span class="def-anchor" id="StatsCollector"></span><code class="ddoc_psymbol">StatsCollector</code>(Allocator, ulong flags = Options.all, ulong perCallFlags = 0);
  294 <br></div></dt>
  295 <dd><div class="summary">Allocator that collects extra data about allocations. Since each piece of
  296 information adds size and time overhead, statistics can be individually enabled
  297 or disabled through compile-time <span class="d_inlinecode donthyphenate notranslate">flags</span>.
  298 </div><div class="description">All stats of the form <span class="d_inlinecode donthyphenate notranslate">numXxx</span> record counts of events occurring, such as
  299 calls to functions and specific results. The stats of the form <span class="d_inlinecode donthyphenate notranslate">bytesXxx</span>
  300 collect cumulative sizes.
  301 <div class="blankline"></div>
  302 
  303 In addition, the data <span class="d_inlinecode donthyphenate notranslate">callerSize</span>, <span class="d_inlinecode donthyphenate notranslate">callerModule</span>, <span class="d_inlinecode donthyphenate notranslate">callerFile</span>, <span class="d_inlinecode donthyphenate notranslate">callerLine</span>, and <span class="d_inlinecode donthyphenate notranslate">callerTime</span> is associated with each specific allocation.
  304 This data prefixes each allocation.</div>
  305 <span class="dlang_runnable"></span><div class="keyval Examples"><span class="key keyExamples">Examples:</span> <div class="val valExamples"><pre class="d_code notranslate"><span class="d_keyword">import</span> std.experimental.allocator.building_blocks.free_list : FreeList;
  306 <span class="d_keyword">import</span> std.experimental.allocator.gc_allocator : GCAllocator;
  307 <span class="d_keyword">alias</span> Allocator = <span class="d_psymbol">StatsCollector</span>!(GCAllocator, Options.all, Options.all);
  308 
  309 Allocator alloc;
  310 <span class="d_keyword">auto</span> b = alloc.allocate(10);
  311 alloc.reallocate(b, 20);
  312 alloc.deallocate(b);
  313 
  314 <span class="d_keyword">import</span> std.file : deleteme, remove;
  315 <span class="d_keyword">import</span> std.range : walkLength;
  316 <span class="d_keyword">import</span> std.stdio : File;
  317 
  318 <span class="d_keyword">auto</span> f = deleteme ~ <span class="d_string">"-dlang.std.experimental.allocator.stats_collector.txt"</span>;
  319 <span class="d_keyword">scope</span>(exit) remove(f);
  320 Allocator.reportPerCallStatistics(File(f, <span class="d_string">"w"</span>));
  321 alloc.reportStatistics(File(f, <span class="d_string">"a"</span>));
  322 writeln(File(f).byLine.walkLength); <span class="d_comment">// 24
  323 </span></pre>
  324 </div></div>
  325 
  326 <dl><dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.parent"></span><div class="quickindex" id="quickindex.StatsCollector.parent"></div>Allocator <span class="def-anchor" id="parent"></span><code class="ddoc_psymbol">parent</code>;
  327 <br></div></dt>
  328 <dd><div class="summary">The parent allocator is publicly accessible either as a direct member if it
  329     holds state, or as an alias to <span class="d_inlinecode donthyphenate notranslate">Allocator.instance</span> otherwise. One may use
  330     it for making calls that won't count toward statistics collection.</div>
  331 </dd>
  332 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.alignment"></span><div class="quickindex" id="quickindex.StatsCollector.alignment"></div>alias <span class="def-anchor" id="alignment"></span><code class="ddoc_psymbol">alignment</code> = Allocator.<span class="def-anchor" id="alignment"></span><code class="ddoc_psymbol">alignment</code>;
  333 <br></div></dt>
  334 <dd><div class="summary">Alignment offered is equal to <span class="d_inlinecode donthyphenate notranslate">Allocator.<span class="def-anchor" id="alignment"></span><code class="ddoc_psymbol">alignment</code></span>.</div>
  335 </dd>
  336 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.owns"></span><div class="quickindex" id="quickindex.StatsCollector.owns"></div>Ternary <span class="def-anchor" id="owns"></span><code class="ddoc_psymbol">owns</code>(void[] <code class="ddoc_param">b</code>);
  337 <br></div></dt>
  338 <dd><div class="summary">Increments <span class="d_inlinecode donthyphenate notranslate">numOwns</span> (per instance and and per call) and forwards to <span class="d_inlinecode donthyphenate notranslate">    parent.owns(b)</span>.</div>
  339 </dd>
  340 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.allocate"></span><div class="quickindex" id="quickindex.StatsCollector.allocate"></div>void[] <span class="def-anchor" id="allocate"></span><code class="ddoc_psymbol">allocate</code>(size_t <code class="ddoc_param">n</code>);
  341 <br></div></dt>
  342 <dd><div class="summary">Forwards to <span class="d_inlinecode donthyphenate notranslate">parent.<span class="def-anchor" id="allocate"></span><code class="ddoc_psymbol">allocate</code></span>. Affects per instance: <span class="d_inlinecode donthyphenate notranslate">numAllocate</span>,
  343     <span class="d_inlinecode donthyphenate notranslate">bytesUsed</span>, <span class="d_inlinecode donthyphenate notranslate">bytesAllocated</span>, <span class="d_inlinecode donthyphenate notranslate">bytesSlack</span>, <span class="d_inlinecode donthyphenate notranslate">numAllocateOK</span>,
  344     and <span class="d_inlinecode donthyphenate notranslate">bytesHighTide</span>. Affects per call: <span class="d_inlinecode donthyphenate notranslate">numAllocate</span>, <span class="d_inlinecode donthyphenate notranslate">    numAllocateOK</span>, and <span class="d_inlinecode donthyphenate notranslate">bytesAllocated</span>.</div>
  345 </dd>
  346 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.alignedAllocate"></span><div class="quickindex" id="quickindex.StatsCollector.alignedAllocate"></div>void[] <span class="def-anchor" id="alignedAllocate"></span><code class="ddoc_psymbol">alignedAllocate</code>(size_t <code class="ddoc_param">n</code>, uint <code class="ddoc_param">a</code>);
  347 <br></div></dt>
  348 <dd><div class="summary">Forwards to <span class="d_inlinecode donthyphenate notranslate">parent.<span class="def-anchor" id="alignedAllocate"></span><code class="ddoc_psymbol">alignedAllocate</code></span>. Affects per instance: <span class="d_inlinecode donthyphenate notranslate">numAlignedAllocate</span>,
  349     <span class="d_inlinecode donthyphenate notranslate">bytesUsed</span>, <span class="d_inlinecode donthyphenate notranslate">bytesAllocated</span>, <span class="d_inlinecode donthyphenate notranslate">bytesSlack</span>, <span class="d_inlinecode donthyphenate notranslate">numAlignedAllocateOk</span>,
  350     and <span class="d_inlinecode donthyphenate notranslate">bytesHighTide</span>. Affects per call: <span class="d_inlinecode donthyphenate notranslate">numAlignedAllocate</span>, <span class="d_inlinecode donthyphenate notranslate">numAlignedAllocateOk</span>,
  351     and <span class="d_inlinecode donthyphenate notranslate">bytesAllocated</span>.</div>
  352 </dd>
  353 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.expand"></span><div class="quickindex" id="quickindex.StatsCollector.expand"></div>bool <span class="def-anchor" id="expand"></span><code class="ddoc_psymbol">expand</code>(ref void[] <code class="ddoc_param">b</code>, size_t <code class="ddoc_param">delta</code>);
  354 <br></div></dt>
  355 <dd><div class="summary">Defined whether or not <span class="d_inlinecode donthyphenate notranslate">Allocator.<span class="def-anchor" id="expand"></span><code class="ddoc_psymbol">expand</code></span> is defined. Affects
  356     per instance: <span class="d_inlinecode donthyphenate notranslate">numExpand</span>, <span class="d_inlinecode donthyphenate notranslate">numExpandOK</span>, <span class="d_inlinecode donthyphenate notranslate">bytesExpanded</span>,
  357     <span class="d_inlinecode donthyphenate notranslate">bytesSlack</span>, <span class="d_inlinecode donthyphenate notranslate">bytesAllocated</span>, and <span class="d_inlinecode donthyphenate notranslate">bytesUsed</span>. Affects per call:
  358     <span class="d_inlinecode donthyphenate notranslate">numExpand</span>, <span class="d_inlinecode donthyphenate notranslate">numExpandOK</span>, <span class="d_inlinecode donthyphenate notranslate">bytesExpanded</span>, and
  359     <span class="d_inlinecode donthyphenate notranslate">bytesAllocated</span>.</div>
  360 </dd>
  361 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.reallocate"></span><div class="quickindex" id="quickindex.StatsCollector.reallocate"></div>bool <span class="def-anchor" id="reallocate"></span><code class="ddoc_psymbol">reallocate</code>(ref void[] <code class="ddoc_param">b</code>, size_t <code class="ddoc_param">s</code>);
  362 <br></div></dt>
  363 <dd><div class="summary">Defined whether or not <span class="d_inlinecode donthyphenate notranslate">Allocator.<span class="def-anchor" id="reallocate"></span><code class="ddoc_psymbol">reallocate</code></span> is defined. Affects
  364     per instance: <span class="d_inlinecode donthyphenate notranslate">numReallocate</span>, <span class="d_inlinecode donthyphenate notranslate">numReallocateOK</span>, <span class="d_inlinecode donthyphenate notranslate">    numReallocateInPlace</span>, <span class="d_inlinecode donthyphenate notranslate">bytesNotMoved</span>, <span class="d_inlinecode donthyphenate notranslate">bytesAllocated</span>, <span class="d_inlinecode donthyphenate notranslate">    bytesSlack</span>, <span class="d_inlinecode donthyphenate notranslate">bytesExpanded</span>, and <span class="d_inlinecode donthyphenate notranslate">bytesContracted</span>. Affects per call:
  365     <span class="d_inlinecode donthyphenate notranslate">numReallocate</span>, <span class="d_inlinecode donthyphenate notranslate">numReallocateOK</span>, <span class="d_inlinecode donthyphenate notranslate">numReallocateInPlace</span>,
  366     <span class="d_inlinecode donthyphenate notranslate">bytesNotMoved</span>, <span class="d_inlinecode donthyphenate notranslate">bytesExpanded</span>, <span class="d_inlinecode donthyphenate notranslate">bytesContracted</span>, and
  367     <span class="d_inlinecode donthyphenate notranslate">bytesMoved</span>.</div>
  368 </dd>
  369 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.deallocate"></span><div class="quickindex" id="quickindex.StatsCollector.deallocate"></div>bool <span class="def-anchor" id="deallocate"></span><code class="ddoc_psymbol">deallocate</code>(void[] <code class="ddoc_param">b</code>);
  370 <br></div></dt>
  371 <dd><div class="summary">Defined whether or not <span class="d_inlinecode donthyphenate notranslate">Allocator.<span class="def-anchor" id="deallocate"></span><code class="ddoc_psymbol">deallocate</code></span> is defined. Affects
  372     per instance: <span class="d_inlinecode donthyphenate notranslate">numDeallocate</span>, <span class="d_inlinecode donthyphenate notranslate">bytesUsed</span>, and <span class="d_inlinecode donthyphenate notranslate">bytesSlack</span>.
  373     Affects per call: <span class="d_inlinecode donthyphenate notranslate">numDeallocate</span> and <span class="d_inlinecode donthyphenate notranslate">bytesContracted</span>.</div>
  374 </dd>
  375 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.deallocateAll"></span><div class="quickindex" id="quickindex.StatsCollector.deallocateAll"></div>bool <span class="def-anchor" id="deallocateAll"></span><code class="ddoc_psymbol">deallocateAll</code>();
  376 <br></div></dt>
  377 <dd><div class="summary">Defined only if <span class="d_inlinecode donthyphenate notranslate">Allocator.<span class="def-anchor" id="deallocateAll"></span><code class="ddoc_psymbol">deallocateAll</code></span> is defined. Affects
  378         per instance and per call <span class="d_inlinecode donthyphenate notranslate">numDeallocateAll</span>.</div>
  379 </dd>
  380 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.empty"></span><div class="quickindex" id="quickindex.StatsCollector.empty"></div>pure nothrow @nogc @safe Ternary <span class="def-anchor" id="empty"></span><code class="ddoc_psymbol">empty</code>();
  381 <br></div></dt>
  382 <dd><div class="summary">Defined only if <span class="d_inlinecode donthyphenate notranslate">Options.bytesUsed</span> is defined. Returns <span class="d_inlinecode donthyphenate notranslate">bytesUsed ==
  383     0</span>.</div>
  384 </dd>
  385 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.reportStatistics"></span><div class="quickindex" id="quickindex.StatsCollector.reportStatistics"></div>void <span class="def-anchor" id="reportStatistics"></span><code class="ddoc_psymbol">reportStatistics</code><span class="template_param_list" title="Template parameter list">(R)</span>(auto ref R <code class="ddoc_param">output</code>);
  386 <br></div></dt>
  387 <dd><div class="summary">Reports per instance statistics to <span class="d_inlinecode donthyphenate notranslate"><code class="ddoc_param">output</code></span> (e.g. <span class="d_inlinecode donthyphenate notranslate">stdout</span>). The
  388     format is simple: one kind and value per line, separated by a colon, e.g.
  389     <span class="d_inlinecode donthyphenate notranslate">bytesAllocated:7395404</span></div>
  390 </dd>
  391 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.PerCallStatistics"></span><div class="quickindex" id="quickindex.StatsCollector.PerCallStatistics"></div>struct <span class="def-anchor" id="PerCallStatistics"></span><code class="ddoc_psymbol">PerCallStatistics</code>;
  392 <br></div></dt>
  393 <dd><div class="summary">Defined if <span class="d_inlinecode donthyphenate notranslate">perCallFlags</span> is nonzero.</div>
  394 <dl><dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.PerCallStatistics.file"></span><div class="quickindex" id="quickindex.StatsCollector.PerCallStatistics.file"></div>string <span class="def-anchor" id="file"></span><code class="ddoc_psymbol">file</code>;
  395 <br><br><span class="def-anchor" id=".StatsCollector.PerCallStatistics.line"></span><div class="quickindex" id="quickindex.StatsCollector.PerCallStatistics.line"></div>uint <span class="def-anchor" id="line"></span><code class="ddoc_psymbol">line</code>;
  396 <br></div></dt>
  397 <dd><div class="summary">The file and line of the call.</div>
  398 </dd>
  399 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.PerCallStatistics.opts"></span><div class="quickindex" id="quickindex.StatsCollector.PerCallStatistics.opts"></div>Options[] <span class="def-anchor" id="opts"></span><code class="ddoc_psymbol">opts</code>;
  400 <br></div></dt>
  401 <dd><div class="summary">The options corresponding to the statistics collected.</div>
  402 </dd>
  403 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.PerCallStatistics.values"></span><div class="quickindex" id="quickindex.StatsCollector.PerCallStatistics.values"></div>ulong[] <span class="def-anchor" id="values"></span><code class="ddoc_psymbol">values</code>;
  404 <br></div></dt>
  405 <dd><div class="summary">The values of the statistics. Has the same length as <span class="d_inlinecode donthyphenate notranslate">opts</span>.</div>
  406 </dd>
  407 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.PerCallStatistics.toString"></span><div class="quickindex" id="quickindex.StatsCollector.PerCallStatistics.toString"></div>const string <span class="def-anchor" id="toString"></span><code class="ddoc_psymbol">toString</code>();
  408 <br></div></dt>
  409 <dd><div class="summary">Format to a string such as:
  410             <span class="d_inlinecode donthyphenate notranslate">mymodule.d(655): [numAllocate:21, numAllocateOK:21, bytesAllocated:324202]</span>.</div>
  411 </dd>
  412 </dl>
  413 </dd>
  414 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.byFileLine"></span><div class="quickindex" id="quickindex.StatsCollector.byFileLine"></div>static auto <span class="def-anchor" id="byFileLine"></span><code class="ddoc_psymbol">byFileLine</code>();
  415 <br></div></dt>
  416 <dd><div class="summary">Defined if <span class="d_inlinecode donthyphenate notranslate">perCallFlags</span> is nonzero. Iterates all monitored
  417         file/line instances. The order of iteration is not meaningful (items
  418         are inserted at the front of a list upon the first call), so
  419         preprocessing the statistics after collection might be appropriate.</div>
  420 </dd>
  421 <dt class="d_decl"><div ><span class="def-anchor" id=".StatsCollector.reportPerCallStatistics"></span><div class="quickindex" id="quickindex.StatsCollector.reportPerCallStatistics"></div>void <span class="def-anchor" id="reportPerCallStatistics"></span><code class="ddoc_psymbol">reportPerCallStatistics</code><span class="template_param_list" title="Template parameter list">(R)</span>(auto ref R <code class="ddoc_param">output</code>);
  422 <br></div></dt>
  423 <dd><div class="summary">Defined if <span class="d_inlinecode donthyphenate notranslate">perCallFlags</span> is nonzero. Outputs (e.g. to a <span class="d_inlinecode donthyphenate notranslate">File</span>)
  424         a simple report of the collected per-call statistics.</div>
  425 </dd>
  426 </dl>
  427 </dd>
  428 </dl>
  429 
  430         <div class="smallprint" id="copyright">Copyright &copy; 1999-2020 by the <a href="../foundation_overview.html">D Language Foundation</a> | Page generated by
  431 <a href="../spec/ddoc.html">Ddoc</a> on Fri Nov 20 21:58:18 2020
  432 </div>
  433     </div>
  434 </div>
  435 
  436     <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
  437     <script type="text/javascript">window.jQuery || document.write('\x3Cscript src="../js/jquery-1.7.2.min.js">\x3C/script>');</script>
  438     <script type="text/javascript" src="../js/dlang.js"></script>
  439     
  440     <script type="text/javascript" src="../js/codemirror-compressed.js"></script>
  441     <script type="text/javascript" src="../js/run.js"></script>
  442 <script type="text/javascript" src="../js/run_examples.js"></script>
  443 
  444 <script type="text/javascript" src="../js/listanchors.js"></script>
  445 <script type="text/javascript" src="../js/show_contributors.js"></script>
  446 <script type="text/javascript">jQuery(document).ready(listanchors);</script>
  447 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css">
  448 </body>
  449 </html>