OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [libstdc++-v3/] [doc/] [html/] [manual/] [ext_containers.html] - Blame information for rev 742

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 742 jeremybenn
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Chapter 23. HP/SGI Extensions</title><meta name="generator" content="DocBook XSL-NS Stylesheets V1.76.1"/><meta name="keywords" content="&#10;      ISO C++&#10;    , &#10;      library&#10;    "/><meta name="keywords" content="&#10;      ISO C++&#10;    , &#10;      runtime&#10;    , &#10;      library&#10;    "/><link rel="home" href="../index.html" title="The GNU C++ Library"/><link rel="up" href="extensions.html" title="Part III.  Extensions"/><link rel="prev" href="policy_data_structures_biblio.html" title="Acknowledgments"/><link rel="next" href="bk01pt03ch23s02.html" title="Deprecated"/></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 23. HP/SGI Extensions</th></tr><tr><td align="left"><a accesskey="p" href="policy_data_structures_biblio.html">Prev</a> </td><th width="60%" align="center">Part III. 
4
  Extensions
5
 
6
</th><td align="right"> <a accesskey="n" href="bk01pt03ch23s02.html">Next</a></td></tr></table><hr/></div><div class="chapter" title="Chapter 23. HP/SGI Extensions"><div class="titlepage"><div><div><h2 class="title"><a id="manual.ext.containers"/>Chapter 23. HP/SGI Extensions</h2></div></div></div><div class="toc"><p><strong>Table of Contents</strong></p><dl><dt><span class="section"><a href="ext_containers.html#manual.ext.containers.sgi">Backwards Compatibility</a></span></dt><dt><span class="section"><a href="bk01pt03ch23s02.html">Deprecated</a></span></dt></dl></div><div class="section" title="Backwards Compatibility"><div class="titlepage"><div><div><h2 class="title"><a id="manual.ext.containers.sgi"/>Backwards Compatibility</h2></div></div></div><p>A few extensions and nods to backwards-compatibility have
7
    been made with containers.  Those dealing with older SGI-style
8
    allocators are dealt with elsewhere.  The remaining ones all deal
9
    with bits:
10
    </p><p>The old pre-standard <code class="code">bit_vector</code> class is
11
    present for backwards compatibility.  It is simply a typedef for
12
    the <code class="code">vector&lt;bool&gt;</code> specialization.
13
    </p><p>The <code class="code">bitset</code> class has a number of extensions, described in the
14
   rest of this item.  First, we'll mention that this implementation of
15
   <code class="code">bitset&lt;N&gt;</code> is specialized for cases where N number of
16
   bits will fit into a single word of storage.  If your choice of N is
17
   within that range (&lt;=32 on i686-pc-linux-gnu, for example), then all
18
   of the operations will be faster.
19
</p><p>There are
20
   versions of single-bit test, set, reset, and flip member functions which
21
   do no range-checking.  If we call them member functions of an instantiation
22
   of <code class="code">bitset&lt;N&gt;</code>, then their names and signatures are:
23
</p><pre class="programlisting">
24
   bitset&lt;N&gt;&amp;   _Unchecked_set   (size_t pos);
25
   bitset&lt;N&gt;&amp;   _Unchecked_set   (size_t pos, int val);
26
   bitset&lt;N&gt;&amp;   _Unchecked_reset (size_t pos);
27
   bitset&lt;N&gt;&amp;   _Unchecked_flip  (size_t pos);
28
   bool         _Unchecked_test  (size_t pos);
29
   </pre><p>Note that these may in fact be removed in the future, although we have
30
   no present plans to do so (and there doesn't seem to be any immediate
31
   reason to).
32
</p><p>The member function <code class="code">operator[]</code> on a const bitset returns
33
   a bool, and for a non-const bitset returns a <code class="code">reference</code> (a
34
   nested type).  No range-checking is done on the index argument, in keeping
35
   with other containers' <code class="code">operator[]</code> requirements.
36
</p><p>Finally, two additional searching functions have been added.  They return
37
   the index of the first "on" bit, and the index of the first
38
   "on" bit that is after <code class="code">prev</code>, respectively:
39
</p><pre class="programlisting">
40
   size_t _Find_first() const;
41
   size_t _Find_next (size_t prev) const;</pre><p>The same caveat given for the _Unchecked_* functions applies here also.
42
</p></div></div><div class="navfooter"><hr/><table width="100%" summary="Navigation footer"><tr><td align="left"><a accesskey="p" href="policy_data_structures_biblio.html">Prev</a> </td><td align="center"><a accesskey="u" href="extensions.html">Up</a></td><td align="right"> <a accesskey="n" href="bk01pt03ch23s02.html">Next</a></td></tr><tr><td align="left" valign="top">Acknowledgments </td><td align="center"><a accesskey="h" href="../index.html">Home</a></td><td align="right" valign="top"> Deprecated</td></tr></table></div></body></html>

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.