| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511 |
- <library-reference>
- <header name="boost/array.hpp">
- <namespace name="boost">
- <class name="array">
- <template>
- <template-type-parameter name="T"/>
- <template-nontype-parameter name="N">
- <type>std::size_t</type>
- </template-nontype-parameter>
- </template>
- <purpose>
- <para>STL compliant container wrapper for arrays of constant size</para>
- </purpose>
- <typedef name="value_type">
- <type>T</type>
- </typedef>
- <typedef name="iterator">
- <type>T*</type>
- </typedef>
- <typedef name="const_iterator">
- <type>const T*</type>
- </typedef>
- <typedef name="reverse_iterator">
- <type>
- <classname>std::reverse_iterator</classname><iterator>
- </type>
- </typedef>
- <typedef name="const_reverse_iterator">
- <type>
- <classname>std::reverse_iterator</classname><const_iterator>
- </type>
- </typedef>
- <typedef name="reference">
- <type>T&</type>
- </typedef>
- <typedef name="const_reference">
- <type>const T&</type>
- </typedef>
- <typedef name="size_type">
- <type>std::size_t</type>
- </typedef>
- <typedef name="difference_type">
- <type>std::ptrdiff_t</type>
- </typedef>
- <static-constant name="static_size">
- <type>size_type</type>
- <default>N</default>
- </static-constant>
- <copy-assignment>
- <template>
- <template-type-parameter name="U"/>
- </template>
- <parameter name="other">
- <paramtype>const <classname>array</classname><U, N>&</paramtype>
- </parameter>
- <effects>
- <simpara>
- <code>
- std::copy(rhs.<methodname>begin</methodname>(),rhs.<methodname>end</methodname>(), <methodname>begin</methodname>())
- </code>
- </simpara>
- </effects>
- </copy-assignment>
- <method-group name="iterator support">
- <overloaded-method name="begin">
- <signature>
- <type>iterator</type>
- </signature>
- <signature cv="const">
- <type>const_iterator</type>
- </signature>
- <returns>
- <simpara>iterator for the first element</simpara>
- </returns>
- <throws>
- <simpara>will not throw</simpara>
- </throws>
- </overloaded-method>
- <overloaded-method name="end">
- <signature>
- <type>iterator</type>
- </signature>
- <signature cv="const">
- <type>const_iterator</type>
- </signature>
- <returns>
- <simpara>iterator for position after the last element</simpara>
- </returns>
- <throws>
- <simpara>will not throw</simpara>
- </throws>
- </overloaded-method>
- </method-group>
- <method-group name="reverse iterator support">
- <overloaded-method name="rbegin">
- <signature>
- <type>reverse_iterator</type>
- </signature>
- <signature cv="const">
- <type>const_reverse_iterator</type>
- </signature>
- <returns>
- <simpara>reverse iterator for the first element of reverse iteration</simpara>
- </returns>
- </overloaded-method>
- <overloaded-method name="rend">
- <signature>
- <type>reverse_iterator</type>
- </signature>
- <signature cv="const">
- <type>const_reverse_iterator</type>
- </signature>
- <returns>
- <simpara>reverse iterator for position after the last element in reverse iteration</simpara>
- </returns>
- </overloaded-method>
- </method-group>
- <method-group name="capacity">
- <method name="size">
- <type>size_type</type>
- <returns>
- <simpara>
- <code>N</code>
- </simpara>
- </returns>
- </method>
- <method name="empty">
- <type>bool</type>
- <returns>
- <simpara>
- <code>N==0</code>
- </simpara>
- </returns>
- <throws>
- <simpara>will not throw</simpara>
- </throws>
- </method>
- <method name="max_size">
- <type>size_type</type>
- <returns>
- <simpara>
- <code>N</code>
- </simpara>
- </returns>
- <throws>
- <simpara>will not throw</simpara>
- </throws>
- </method>
- </method-group>
- <method-group name="element access">
- <overloaded-method name="operator[]">
- <signature>
- <type>reference</type>
- <parameter name="i">
- <paramtype>size_type</paramtype>
- </parameter>
- </signature>
- <signature cv="const">
- <type>const_reference</type>
- <parameter name="i">
- <paramtype>size_type</paramtype>
- </parameter>
- </signature>
- <requires>
- <simpara>
- <code>i < N</code>
- </simpara>
- </requires>
- <returns>
- <simpara>
- element with index <code>i</code>
- </simpara>
- </returns>
- <throws>
- <simpara>will not throw.</simpara>
- </throws>
- </overloaded-method>
- <overloaded-method name="at">
- <signature>
- <type>reference</type>
- <parameter name="i">
- <paramtype>size_type</paramtype>
- </parameter>
- </signature>
- <signature cv="const">
- <type>const_reference</type>
- <parameter name="i">
- <paramtype>size_type</paramtype>
- </parameter>
- </signature>
- <returns>
- <simpara>
- element with index <code>i</code>
- </simpara>
- </returns>
- <throws>
- <simpara>
- <code>
- <classname>std::range_error</classname>
- </code> if <code>i >= N</code>
- </simpara>
- </throws>
- </overloaded-method>
- <overloaded-method name="front">
- <signature>
- <type>reference</type>
- </signature>
- <signature cv="const">
- <type>const_reference</type>
- </signature>
- <requires>
- <simpara>
- <code>N > 0</code>
- </simpara>
- </requires>
- <returns>
- <simpara>the first element</simpara>
- </returns>
- <throws>
- <simpara>will not throw</simpara>
- </throws>
- </overloaded-method>
- <overloaded-method name="back">
- <signature>
- <type>reference</type>
- </signature>
- <signature cv="const">
- <type>const_reference</type>
- </signature>
- <requires>
- <simpara>
- <code>N > 0</code>
- </simpara>
- </requires>
- <returns>
- <simpara>the last element</simpara>
- </returns>
- <throws>
- <simpara>will not throw</simpara>
- </throws>
- </overloaded-method>
- <method name="data" cv="const">
- <type>const T*</type>
- <returns>
- <simpara>
- <code>elems</code>
- </simpara>
- </returns>
- <throws>
- <simpara>will not throw</simpara>
- </throws>
- </method>
- <method name="c_array">
- <type>T*</type>
- <returns>
- <simpara>
- <code>elems</code>
- </simpara>
- </returns>
- <throws>
- <simpara>will not throw</simpara>
- </throws>
- </method>
- </method-group>
- <method-group name="modifiers">
- <method name="swap">
- <type>void</type>
- <parameter name="other">
- <paramtype><classname>array</classname><T, N>&</paramtype>
- </parameter>
- <effects>
- <simpara>
- <code>
- std::swap_ranges(<methodname>begin</methodname>(), <methodname>end</methodname>(), other.<methodname>begin</methodname>())
- </code>
- </simpara>
- </effects>
- <complexity>
- <simpara>
- linear in <code>N</code>
- </simpara>
- </complexity>
- </method>
- <method name="assign">
- <type>void</type>
- <parameter name="value">
- <paramtype>const T&</paramtype>
- </parameter>
- <effects>
- <simpara>
- <code>
- std::fill_n(<methodname>begin</methodname>(), N, value)
- </code>
- </simpara>
- </effects>
- </method>
- </method-group>
- <data-member name="elems[N]">
- <!-- HACK -->
- <type>T</type>
- </data-member>
- <free-function-group name="specialized algorithms">
- <function name="swap">
- <template>
- <template-type-parameter name="T"/>
- <template-nontype-parameter name="N">
- <type>std::size_t</type>
- </template-nontype-parameter>
- </template>
- <type>void</type>
- <parameter name="x">
- <paramtype><classname>array</classname><T, N>&</paramtype>
- </parameter>
- <parameter name="y">
- <paramtype><classname>array</classname><T, N>&</paramtype>
- </parameter>
- <effects>
- <simpara>
- <code>
- x.<methodname>swap</methodname>(y)
- </code>
- </simpara>
- </effects>
- <throws>
- <simpara>will not throw.</simpara>
- </throws>
- </function>
- </free-function-group>
- <free-function-group name="comparisons">
- <function name="operator==">
- <template>
- <template-type-parameter name="T"/>
- <template-nontype-parameter name="N">
- <type>std::size_t</type>
- </template-nontype-parameter>
- </template>
- <type>bool</type>
- <parameter name="x">
- <paramtype>const <classname>array</classname><T, N>&</paramtype>
- </parameter>
- <parameter name="y">
- <paramtype>const <classname>array</classname><T, N>&</paramtype>
- </parameter>
- <returns>
- <simpara>
- <code>
- std::equal(x.<methodname>begin</methodname>(), x.<methodname>end</methodname>(), y.<methodname>begin</methodname>())
- </code>
- </simpara>
- </returns>
- </function>
- <function name="operator!=">
- <template>
- <template-type-parameter name="T"/>
- <template-nontype-parameter name="N">
- <type>std::size_t</type>
- </template-nontype-parameter>
- </template>
- <type>bool</type>
- <parameter name="x">
- <paramtype>const <classname>array</classname><T, N>&</paramtype>
- </parameter>
- <parameter name="y">
- <paramtype>const <classname>array</classname><T, N>&</paramtype>
- </parameter>
- <returns>
- <simpara>
- <code>!(x == y)</code>
- </simpara>
- </returns>
- </function>
- <function name="operator<">
- <template>
- <template-type-parameter name="T"/>
- <template-nontype-parameter name="N">
- <type>std::size_t</type>
- </template-nontype-parameter>
- </template>
- <type>bool</type>
- <parameter name="x">
- <paramtype>const <classname>array</classname><T, N>&</paramtype>
- </parameter>
- <parameter name="y">
- <paramtype>const <classname>array</classname><T, N>&</paramtype>
- </parameter>
- <returns>
- <simpara>
- <code>
- std::lexicographical_compare(x.<methodname>begin</methodname>(), x.<methodname>end</methodname>(), y.<methodname>begin</methodname>(), y.<methodname>end</methodname>())
- </code>
- </simpara>
- </returns>
- </function>
- <function name="operator>">
- <template>
- <template-type-parameter name="T"/>
- <template-nontype-parameter name="N">
- <type>std::size_t</type>
- </template-nontype-parameter>
- </template>
- <type>bool</type>
- <parameter name="x">
- <paramtype>const <classname>array</classname><T, N>&</paramtype>
- </parameter>
- <parameter name="y">
- <paramtype>const <classname>array</classname><T, N>&</paramtype>
- </parameter>
- <returns>
- <simpara>
- <code>y < x</code>
- </simpara>
- </returns>
- </function>
- <function name="operator<=">
- <template>
- <template-type-parameter name="T"/>
- <template-nontype-parameter name="N">
- <type>std::size_t</type>
- </template-nontype-parameter>
- </template>
- <type>bool</type>
- <parameter name="x">
- <paramtype>const <classname>array</classname><T, N>&</paramtype>
- </parameter>
- <parameter name="y">
- <paramtype>const <classname>array</classname><T, N>&</paramtype>
- </parameter>
- <returns>
- <simpara>
- <code>!(y < x)</code>
- </simpara>
- </returns>
- </function>
- <function name="operator>=">
- <template>
- <template-type-parameter name="T"/>
- <template-nontype-parameter name="N">
- <type>std::size_t</type>
- </template-nontype-parameter>
- </template>
- <type>bool</type>
- <parameter name="x">
- <paramtype>const <classname>array</classname><T, N>&</paramtype>
- </parameter>
- <parameter name="y">
- <paramtype>const <classname>array</classname><T, N>&</paramtype>
- </parameter>
- <returns>
- <simpara>
- <code>!(x < y)</code>
- </simpara>
- </returns>
- </function>
- </free-function-group>
- </class>
- </namespace>
- </header>
- </library-reference>
|