.TH "std::__detail::_Nfa" 3cxx "Fri Dec 19 2014" "libstdc++" \" -*- nroff -*- .ad l .nh .SH NAME std::__detail::_Nfa \- .SH SYNOPSIS .br .PP .PP Inherits \fBstd::__detail::_Automaton\fP, and \fBstd::vector< _State >\fP\&. .SS "Public Types" .in +1c .ti -1c .RI "typedef .br \fBregex_constants::syntax_option_type\fP \fB_FlagT\fP" .br .ti -1c .RI "typedef unsigned int \fB_SizeT\fP" .br .ti -1c .RI "typedef \fB_State\fP \fB_StateT\fP" .br .ti -1c .RI "typedef _Alloc \fBallocator_type\fP" .br .ti -1c .RI "typedef .br __gnu_cxx::__normal_iterator .br < const_pointer, \fBvector\fP > \fBconst_iterator\fP" .br .ti -1c .RI "typedef .br _Alloc_traits::const_pointer \fBconst_pointer\fP" .br .ti -1c .RI "typedef .br _Alloc_traits::const_reference \fBconst_reference\fP" .br .ti -1c .RI "typedef \fBstd::reverse_iterator\fP .br < const_iterator > \fBconst_reverse_iterator\fP" .br .ti -1c .RI "typedef ptrdiff_t \fBdifference_type\fP" .br .ti -1c .RI "typedef .br __gnu_cxx::__normal_iterator .br < pointer, \fBvector\fP > \fBiterator\fP" .br .ti -1c .RI "typedef _Base::pointer \fBpointer\fP" .br .ti -1c .RI "typedef _Alloc_traits::reference \fBreference\fP" .br .ti -1c .RI "typedef \fBstd::reverse_iterator\fP .br < iterator > \fBreverse_iterator\fP" .br .ti -1c .RI "typedef size_t \fBsize_type\fP" .br .ti -1c .RI "typedef \fB_State\fP \fBvalue_type\fP" .br .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "\fB_Nfa\fP (_FlagT __f)" .br .ti -1c .RI "const \fB_StateSet\fP & \fB_M_final_states\fP () const " .br .ti -1c .RI "\fB_StateIdT\fP \fB_M_insert_accept\fP ()" .br .ti -1c .RI "\fB_StateIdT\fP \fB_M_insert_alt\fP (\fB_StateIdT\fP __next, \fB_StateIdT\fP __alt)" .br .ti -1c .RI "\fB_StateIdT\fP \fB_M_insert_matcher\fP (\fB_Matcher\fP __m)" .br .ti -1c .RI "\fB_StateIdT\fP \fB_M_insert_subexpr_begin\fP (const \fB_Tagger\fP &__t)" .br .ti -1c .RI "\fB_StateIdT\fP \fB_M_insert_subexpr_end\fP (unsigned int __i, const \fB_Tagger\fP &__t)" .br .ti -1c .RI "_FlagT \fB_M_options\fP () const " .br .ti -1c .RI "\fB_StateIdT\fP \fB_M_start\fP () const " .br .ti -1c .RI "_SizeT \fB_M_sub_count\fP () const " .br .ti -1c .RI "void \fBassign\fP (size_type __n, const value_type &__val)" .br .ti -1c .RI "void \fBassign\fP (_InputIterator __first, _InputIterator __last)" .br .ti -1c .RI "void \fBassign\fP (initializer_list< value_type > __l)" .br .ti -1c .RI "reference \fBat\fP (size_type __n)" .br .ti -1c .RI "const_reference \fBat\fP (size_type __n) const" .br .ti -1c .RI "reference \fBback\fP ()" .br .ti -1c .RI "const_reference \fBback\fP () const" .br .ti -1c .RI "iterator \fBbegin\fP () noexcept" .br .ti -1c .RI "const_iterator \fBbegin\fP () const noexcept" .br .ti -1c .RI "size_type \fBcapacity\fP () const noexcept" .br .ti -1c .RI "const_iterator \fBcbegin\fP () const noexcept" .br .ti -1c .RI "const_iterator \fBcend\fP () const noexcept" .br .ti -1c .RI "void \fBclear\fP () noexcept" .br .ti -1c .RI "\fBconst_reverse_iterator\fP \fBcrbegin\fP () const noexcept" .br .ti -1c .RI "\fBconst_reverse_iterator\fP \fBcrend\fP () const noexcept" .br .ti -1c .RI "\fB_State\fP * \fBdata\fP () noexcept" .br .ti -1c .RI "const \fB_State\fP * \fBdata\fP () const noexcept" .br .ti -1c .RI "iterator \fBemplace\fP (iterator __position, _Args &&\&.\&.\&.__args)" .br .ti -1c .RI "void \fBemplace_back\fP (_Args &&\&.\&.\&.__args)" .br .ti -1c .RI "bool \fBempty\fP () const noexcept" .br .ti -1c .RI "iterator \fBend\fP () noexcept" .br .ti -1c .RI "const_iterator \fBend\fP () const noexcept" .br .ti -1c .RI "iterator \fBerase\fP (iterator __position)" .br .ti -1c .RI "iterator \fBerase\fP (iterator __first, iterator __last)" .br .ti -1c .RI "reference \fBfront\fP ()" .br .ti -1c .RI "const_reference \fBfront\fP () const" .br .ti -1c .RI "iterator \fBinsert\fP (iterator __position, const value_type &__x)" .br .ti -1c .RI "iterator \fBinsert\fP (iterator __position, value_type &&__x)" .br .ti -1c .RI "void \fBinsert\fP (iterator __position, initializer_list< value_type > __l)" .br .ti -1c .RI "void \fBinsert\fP (iterator __position, size_type __n, const value_type &__x)" .br .ti -1c .RI "void \fBinsert\fP (iterator __position, _InputIterator __first, _InputIterator __last)" .br .ti -1c .RI "size_type \fBmax_size\fP () const noexcept" .br .ti -1c .RI "reference \fBoperator[]\fP (size_type __n)" .br .ti -1c .RI "const_reference \fBoperator[]\fP (size_type __n) const" .br .ti -1c .RI "void \fBpop_back\fP ()" .br .ti -1c .RI "void \fBpush_back\fP (const value_type &__x)" .br .ti -1c .RI "void \fBpush_back\fP (value_type &&__x)" .br .ti -1c .RI "\fBreverse_iterator\fP \fBrbegin\fP () noexcept" .br .ti -1c .RI "\fBconst_reverse_iterator\fP \fBrbegin\fP () const noexcept" .br .ti -1c .RI "\fBreverse_iterator\fP \fBrend\fP () noexcept" .br .ti -1c .RI "\fBconst_reverse_iterator\fP \fBrend\fP () const noexcept" .br .ti -1c .RI "void \fBreserve\fP (size_type __n)" .br .ti -1c .RI "void \fBresize\fP (size_type __new_size)" .br .ti -1c .RI "void \fBresize\fP (size_type __new_size, const value_type &__x)" .br .ti -1c .RI "void \fBshrink_to_fit\fP ()" .br .ti -1c .RI "size_type \fBsize\fP () const noexcept" .br .ti -1c .RI "void \fBswap\fP (\fBvector\fP &__x) noexcept(_Alloc_traits::_S_nothrow_swap())" .br .in -1c .SS "Protected Member Functions" .in +1c .ti -1c .RI "pointer \fB_M_allocate\fP (size_t __n)" .br .ti -1c .RI "pointer \fB_M_allocate_and_copy\fP (size_type __n, _ForwardIterator __first, _ForwardIterator __last)" .br .ti -1c .RI "void \fB_M_assign_aux\fP (_InputIterator __first, _InputIterator __last, \fBstd::input_iterator_tag\fP)" .br .ti -1c .RI "void \fB_M_assign_aux\fP (_ForwardIterator __first, _ForwardIterator __last, \fBstd::forward_iterator_tag\fP)" .br .ti -1c .RI "void \fB_M_assign_dispatch\fP (_Integer __n, _Integer __val, __true_type)" .br .ti -1c .RI "void \fB_M_assign_dispatch\fP (_InputIterator __first, _InputIterator __last, __false_type)" .br .ti -1c .RI "size_type \fB_M_check_len\fP (size_type __n, const char *__s) const" .br .ti -1c .RI "void \fB_M_deallocate\fP (pointer __p, size_t __n)" .br .ti -1c .RI "void \fB_M_default_append\fP (size_type __n)" .br .ti -1c .RI "void \fB_M_default_initialize\fP (size_type __n)" .br .ti -1c .RI "void \fB_M_emplace_back_aux\fP (_Args &&\&.\&.\&.__args)" .br .ti -1c .RI "void \fB_M_erase_at_end\fP (pointer __pos)" .br .ti -1c .RI "void \fB_M_fill_assign\fP (size_type __n, const value_type &__val)" .br .ti -1c .RI "void \fB_M_fill_initialize\fP (size_type __n, const value_type &__value)" .br .ti -1c .RI "void \fB_M_fill_insert\fP (iterator __pos, size_type __n, const value_type &__x)" .br .ti -1c .RI "_Tp_alloc_type & \fB_M_get_Tp_allocator\fP () noexcept" .br .ti -1c .RI "const _Tp_alloc_type & \fB_M_get_Tp_allocator\fP () const noexcept" .br .ti -1c .RI "void \fB_M_initialize_dispatch\fP (_Integer __n, _Integer __value, __true_type)" .br .ti -1c .RI "void \fB_M_initialize_dispatch\fP (_InputIterator __first, _InputIterator __last, __false_type)" .br .ti -1c .RI "void \fB_M_insert_aux\fP (iterator __position, _Args &&\&.\&.\&.__args)" .br .ti -1c .RI "void \fB_M_insert_dispatch\fP (iterator __pos, _Integer __n, _Integer __val, __true_type)" .br .ti -1c .RI "void \fB_M_insert_dispatch\fP (iterator __pos, _InputIterator __first, _InputIterator __last, __false_type)" .br .ti -1c .RI "void \fB_M_range_check\fP (size_type __n) const" .br .ti -1c .RI "void \fB_M_range_initialize\fP (_InputIterator __first, _InputIterator __last, \fBstd::input_iterator_tag\fP)" .br .ti -1c .RI "void \fB_M_range_initialize\fP (_ForwardIterator __first, _ForwardIterator __last, \fBstd::forward_iterator_tag\fP)" .br .ti -1c .RI "void \fB_M_range_insert\fP (iterator __pos, _InputIterator __first, _InputIterator __last, \fBstd::input_iterator_tag\fP)" .br .ti -1c .RI "void \fB_M_range_insert\fP (iterator __pos, _ForwardIterator __first, _ForwardIterator __last, \fBstd::forward_iterator_tag\fP)" .br .ti -1c .RI "bool \fB_M_shrink_to_fit\fP ()" .br .ti -1c .RI "allocator_type \fBget_allocator\fP () const noexcept" .br .in -1c .SS "Protected Attributes" .in +1c .ti -1c .RI "_Vector_impl \fB_M_impl\fP" .br .in -1c .SH "Detailed Description" .PP struct _Nfa A collection of all states making up an NFA\&. .PP An NFA is a 4-tuple M = (K, S, s, F), where K is a finite set of states, S is the alphabet of the NFA, s is the initial state, F is a set of final (accepting) states\&. .PP This NFA class is templated on S, a type that will hold values of the underlying alphabet (without regard to semantics of that alphabet)\&. The other elements of the tuple are generated during construction of the NFA and are available through accessor member functions\&. .PP Definition at line 269 of file regex_nfa\&.h\&. .SH "Member Function Documentation" .PP .SS "pointer \fBstd::vector\fP< \fB_State\fP , _Alloc >::_M_allocate_and_copy (size_type__n, _ForwardIterator__first, _ForwardIterator__last)\fC [inline]\fP, \fC [protected]\fP, \fC [inherited]\fP" Memory expansion handler\&. Uses the member allocation function to obtain \fIn\fP bytes of memory, and then copies [first,last) into it\&. .PP Definition at line 1135 of file stl_vector\&.h\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::_M_range_check (size_type__n) const\fC [inline]\fP, \fC [protected]\fP, \fC [inherited]\fP" .PP Safety check used only from at()\&. .PP Definition at line 791 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::size()\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::assign (size_type__n, const value_type &__val)\fC [inline]\fP, \fC [inherited]\fP" .PP Assigns a given value to a vector\&. .PP \fBParameters:\fP .RS 4 \fI__n\fP Number of elements to be assigned\&. .br \fI__val\fP Value to be assigned\&. .RE .PP This function fills a vector with \fI__n\fP copies of the given value\&. Note that the assignment completely changes the vector and that the resulting vector's size is the same as the number of elements assigned\&. Old data may be lost\&. .PP Definition at line 479 of file stl_vector\&.h\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::assign (_InputIterator__first, _InputIterator__last)\fC [inline]\fP, \fC [inherited]\fP" .PP Assigns a range to a vector\&. .PP \fBParameters:\fP .RS 4 \fI__first\fP An input iterator\&. .br \fI__last\fP An input iterator\&. .RE .PP This function fills a vector with copies of the elements in the range [__first,__last)\&. .PP Note that the assignment completely changes the vector and that the resulting vector's size is the same as the number of elements assigned\&. Old data may be lost\&. .PP Definition at line 498 of file stl_vector\&.h\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::assign (initializer_list< value_type >__l)\fC [inline]\fP, \fC [inherited]\fP" .PP Assigns an initializer list to a vector\&. .PP \fBParameters:\fP .RS 4 \fI__l\fP An initializer_list\&. .RE .PP This function fills a vector with copies of the elements in the initializer list \fI__l\fP\&. .PP Note that the assignment completely changes the vector and that the resulting vector's size is the same as the number of elements assigned\&. Old data may be lost\&. .PP Definition at line 524 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::assign()\&. .SS "reference \fBstd::vector\fP< \fB_State\fP , _Alloc >::at (size_type__n)\fC [inline]\fP, \fC [inherited]\fP" .PP Provides access to the data contained in the vector\&. .PP \fBParameters:\fP .RS 4 \fI__n\fP The index of the element for which data should be accessed\&. .RE .PP \fBReturns:\fP .RS 4 Read/write reference to data\&. .RE .PP \fBExceptions:\fP .RS 4 \fIstd::out_of_range\fP If \fI__n\fP is an invalid index\&. .RE .PP This function provides for safer data access\&. The parameter is first checked that it is in the range of the vector\&. The function throws out_of_range if the check fails\&. .PP Definition at line 810 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::_M_range_check()\&. .SS "const_reference \fBstd::vector\fP< \fB_State\fP , _Alloc >::at (size_type__n) const\fC [inline]\fP, \fC [inherited]\fP" .PP Provides access to the data contained in the vector\&. .PP \fBParameters:\fP .RS 4 \fI__n\fP The index of the element for which data should be accessed\&. .RE .PP \fBReturns:\fP .RS 4 Read-only (constant) reference to data\&. .RE .PP \fBExceptions:\fP .RS 4 \fIstd::out_of_range\fP If \fI__n\fP is an invalid index\&. .RE .PP This function provides for safer data access\&. The parameter is first checked that it is in the range of the vector\&. The function throws out_of_range if the check fails\&. .PP Definition at line 828 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::_M_range_check()\&. .SS "reference \fBstd::vector\fP< \fB_State\fP , _Alloc >::back ()\fC [inline]\fP, \fC [inherited]\fP" Returns a read/write reference to the data at the last element of the vector\&. .PP Definition at line 855 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::end()\&. .SS "const_reference \fBstd::vector\fP< \fB_State\fP , _Alloc >::back () const\fC [inline]\fP, \fC [inherited]\fP" Returns a read-only (constant) reference to the data at the last element of the vector\&. .PP Definition at line 863 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::end()\&. .SS "iterator \fBstd::vector\fP< \fB_State\fP , _Alloc >::begin ()\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a read/write iterator that points to the first element in the vector\&. Iteration is done in ordinary element order\&. .PP Definition at line 538 of file stl_vector\&.h\&. .SS "const_iterator \fBstd::vector\fP< \fB_State\fP , _Alloc >::begin () const\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a read-only (constant) iterator that points to the first element in the vector\&. Iteration is done in ordinary element order\&. .PP Definition at line 547 of file stl_vector\&.h\&. .SS "size_type \fBstd::vector\fP< \fB_State\fP , _Alloc >::capacity () const\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns the total number of elements that the vector can hold before needing to allocate more memory\&. .PP Definition at line 725 of file stl_vector\&.h\&. .SS "const_iterator \fBstd::vector\fP< \fB_State\fP , _Alloc >::cbegin () const\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a read-only (constant) iterator that points to the first element in the vector\&. Iteration is done in ordinary element order\&. .PP Definition at line 611 of file stl_vector\&.h\&. .SS "const_iterator \fBstd::vector\fP< \fB_State\fP , _Alloc >::cend () const\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a read-only (constant) iterator that points one past the last element in the vector\&. Iteration is done in ordinary element order\&. .PP Definition at line 620 of file stl_vector\&.h\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::clear ()\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Erases all the elements\&. Note that this function only erases the elements, and that if the elements themselves are pointers, the pointed-to memory is not touched in any way\&. Managing the pointer is the user's responsibility\&. .PP Definition at line 1125 of file stl_vector\&.h\&. .SS "\fBconst_reverse_iterator\fP \fBstd::vector\fP< \fB_State\fP , _Alloc >::crbegin () const\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a read-only (constant) reverse iterator that points to the last element in the vector\&. Iteration is done in reverse element order\&. .PP Definition at line 629 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::end()\&. .SS "\fBconst_reverse_iterator\fP \fBstd::vector\fP< \fB_State\fP , _Alloc >::crend () const\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a read-only (constant) reverse iterator that points to one before the first element in the vector\&. Iteration is done in reverse element order\&. .PP Definition at line 638 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::begin()\&. .SS "\fB_State\fP * \fBstd::vector\fP< \fB_State\fP , _Alloc >::data ()\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a pointer such that [data(), data() + size()) is a valid range\&. For a non-empty vector, data() == &front()\&. .PP Definition at line 878 of file stl_vector\&.h\&. .PP References std::__addressof(), and std::vector< _Tp, _Alloc >::front()\&. .SS "iterator \fBstd::vector\fP< \fB_State\fP , _Alloc >::emplace (iterator__position, _Args &&\&.\&.\&.__args)\fC [inherited]\fP" .PP Inserts an object in vector before specified iterator\&. .PP \fBParameters:\fP .RS 4 \fI__position\fP An iterator into the vector\&. .br \fI__args\fP Arguments\&. .RE .PP \fBReturns:\fP .RS 4 An iterator that points to the inserted data\&. .RE .PP This function will insert an object of type T constructed with T(std::forward(args)\&.\&.\&.) before the specified location\&. Note that this kind of operation could be expensive for a vector and if it is frequently used the user should consider using std::list\&. .SS "bool \fBstd::vector\fP< \fB_State\fP , _Alloc >::empty () const\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns true if the vector is empty\&. (Thus begin() would equal end()\&.) .PP Definition at line 734 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::begin(), and std::vector< _Tp, _Alloc >::end()\&. .SS "iterator \fBstd::vector\fP< \fB_State\fP , _Alloc >::end ()\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a read/write iterator that points one past the last element in the vector\&. Iteration is done in ordinary element order\&. .PP Definition at line 556 of file stl_vector\&.h\&. .SS "const_iterator \fBstd::vector\fP< \fB_State\fP , _Alloc >::end () const\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a read-only (constant) iterator that points one past the last element in the vector\&. Iteration is done in ordinary element order\&. .PP Definition at line 565 of file stl_vector\&.h\&. .SS "iterator \fBstd::vector\fP< \fB_State\fP , _Alloc >::erase (iterator__position)\fC [inherited]\fP" .PP Remove element at given position\&. .PP \fBParameters:\fP .RS 4 \fI__position\fP Iterator pointing to element to be erased\&. .RE .PP \fBReturns:\fP .RS 4 An iterator pointing to the next element (or end())\&. .RE .PP This function will erase the element at the given position and thus shorten the vector by one\&. .PP Note This operation could be expensive and if it is frequently used the user should consider using std::list\&. The user is also cautioned that this function only erases the element, and that if the element is itself a pointer, the pointed-to memory is not touched in any way\&. Managing the pointer is the user's responsibility\&. .SS "iterator \fBstd::vector\fP< \fB_State\fP , _Alloc >::erase (iterator__first, iterator__last)\fC [inherited]\fP" .PP Remove a range of elements\&. .PP \fBParameters:\fP .RS 4 \fI__first\fP Iterator pointing to the first element to be erased\&. .br \fI__last\fP Iterator pointing to one past the last element to be erased\&. .RE .PP \fBReturns:\fP .RS 4 An iterator pointing to the element pointed to by \fI__last\fP prior to erasing (or end())\&. .RE .PP This function will erase the elements in the range [__first,__last) and shorten the vector accordingly\&. .PP Note This operation could be expensive and if it is frequently used the user should consider using std::list\&. The user is also cautioned that this function only erases the elements, and that if the elements themselves are pointers, the pointed-to memory is not touched in any way\&. Managing the pointer is the user's responsibility\&. .SS "reference \fBstd::vector\fP< \fB_State\fP , _Alloc >::front ()\fC [inline]\fP, \fC [inherited]\fP" Returns a read/write reference to the data at the first element of the vector\&. .PP Definition at line 839 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::begin()\&. .SS "const_reference \fBstd::vector\fP< \fB_State\fP , _Alloc >::front () const\fC [inline]\fP, \fC [inherited]\fP" Returns a read-only (constant) reference to the data at the first element of the vector\&. .PP Definition at line 847 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::begin()\&. .SS "iterator \fBstd::vector\fP< \fB_State\fP , _Alloc >::insert (iterator__position, const value_type &__x)\fC [inherited]\fP" .PP Inserts given value into vector before specified iterator\&. .PP \fBParameters:\fP .RS 4 \fI__position\fP An iterator into the vector\&. .br \fI__x\fP Data to be inserted\&. .RE .PP \fBReturns:\fP .RS 4 An iterator that points to the inserted data\&. .RE .PP This function will insert a copy of the given value before the specified location\&. Note that this kind of operation could be expensive for a vector and if it is frequently used the user should consider using std::list\&. .SS "iterator \fBstd::vector\fP< \fB_State\fP , _Alloc >::insert (iterator__position, value_type &&__x)\fC [inline]\fP, \fC [inherited]\fP" .PP Inserts given rvalue into vector before specified iterator\&. .PP \fBParameters:\fP .RS 4 \fI__position\fP An iterator into the vector\&. .br \fI__x\fP Data to be inserted\&. .RE .PP \fBReturns:\fP .RS 4 An iterator that points to the inserted data\&. .RE .PP This function will insert a copy of the given rvalue before the specified location\&. Note that this kind of operation could be expensive for a vector and if it is frequently used the user should consider using std::list\&. .PP Definition at line 988 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::emplace(), and std::move()\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::insert (iterator__position, initializer_list< value_type >__l)\fC [inline]\fP, \fC [inherited]\fP" .PP Inserts an initializer_list into the vector\&. .PP \fBParameters:\fP .RS 4 \fI__position\fP An iterator into the vector\&. .br \fI__l\fP An initializer_list\&. .RE .PP This function will insert copies of the data in the initializer_list \fIl\fP into the vector before the location specified by \fIposition\fP\&. .PP Note that this kind of operation could be expensive for a vector and if it is frequently used the user should consider using std::list\&. .PP Definition at line 1005 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::insert()\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::insert (iterator__position, size_type__n, const value_type &__x)\fC [inline]\fP, \fC [inherited]\fP" .PP Inserts a number of copies of given data into the vector\&. .PP \fBParameters:\fP .RS 4 \fI__position\fP An iterator into the vector\&. .br \fI__n\fP Number of elements to be inserted\&. .br \fI__x\fP Data to be inserted\&. .RE .PP This function will insert a specified number of copies of the given data before the location specified by \fIposition\fP\&. .PP Note that this kind of operation could be expensive for a vector and if it is frequently used the user should consider using std::list\&. .PP Definition at line 1023 of file stl_vector\&.h\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::insert (iterator__position, _InputIterator__first, _InputIterator__last)\fC [inline]\fP, \fC [inherited]\fP" .PP Inserts a range into the vector\&. .PP \fBParameters:\fP .RS 4 \fI__position\fP An iterator into the vector\&. .br \fI__first\fP An input iterator\&. .br \fI__last\fP An input iterator\&. .RE .PP This function will insert copies of the data in the range [__first,__last) into the vector before the location specified by \fIpos\fP\&. .PP Note that this kind of operation could be expensive for a vector and if it is frequently used the user should consider using std::list\&. .PP Definition at line 1044 of file stl_vector\&.h\&. .SS "size_type \fBstd::vector\fP< \fB_State\fP , _Alloc >::max_size () const\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns the size() of the largest possible vector\&. .PP Definition at line 650 of file stl_vector\&.h\&. .PP References std::allocator_traits< _Tp_alloc_type >::max_size()\&. .SS "reference \fBstd::vector\fP< \fB_State\fP , _Alloc >::operator[] (size_type__n)\fC [inline]\fP, \fC [inherited]\fP" .PP Subscript access to the data contained in the vector\&. .PP \fBParameters:\fP .RS 4 \fI__n\fP The index of the element for which data should be accessed\&. .RE .PP \fBReturns:\fP .RS 4 Read/write reference to data\&. .RE .PP This operator allows for easy, array-style, data access\&. Note that data access with this operator is unchecked and out_of_range lookups are not defined\&. (For checked lookups see at()\&.) .PP Definition at line 770 of file stl_vector\&.h\&. .SS "const_reference \fBstd::vector\fP< \fB_State\fP , _Alloc >::operator[] (size_type__n) const\fC [inline]\fP, \fC [inherited]\fP" .PP Subscript access to the data contained in the vector\&. .PP \fBParameters:\fP .RS 4 \fI__n\fP The index of the element for which data should be accessed\&. .RE .PP \fBReturns:\fP .RS 4 Read-only (constant) reference to data\&. .RE .PP This operator allows for easy, array-style, data access\&. Note that data access with this operator is unchecked and out_of_range lookups are not defined\&. (For checked lookups see at()\&.) .PP Definition at line 785 of file stl_vector\&.h\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::pop_back ()\fC [inline]\fP, \fC [inherited]\fP" .PP Removes last element\&. This is a typical stack operation\&. It shrinks the vector by one\&. .PP Note that no data is returned, and if the last element's data is needed, it should be retrieved before pop_back() is called\&. .PP Definition at line 937 of file stl_vector\&.h\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::push_back (const value_type &__x)\fC [inline]\fP, \fC [inherited]\fP" .PP Add data to the end of the vector\&. .PP \fBParameters:\fP .RS 4 \fI__x\fP Data to be added\&. .RE .PP This is a typical stack operation\&. The function creates an element at the end of the vector and assigns the given data to it\&. Due to the nature of a vector this operation can be done in constant time if the vector has preallocated space available\&. .PP Definition at line 901 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::end()\&. .SS "\fBreverse_iterator\fP \fBstd::vector\fP< \fB_State\fP , _Alloc >::rbegin ()\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a read/write reverse iterator that points to the last element in the vector\&. Iteration is done in reverse element order\&. .PP Definition at line 574 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::end()\&. .SS "\fBconst_reverse_iterator\fP \fBstd::vector\fP< \fB_State\fP , _Alloc >::rbegin () const\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a read-only (constant) reverse iterator that points to the last element in the vector\&. Iteration is done in reverse element order\&. .PP Definition at line 583 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::end()\&. .SS "\fBreverse_iterator\fP \fBstd::vector\fP< \fB_State\fP , _Alloc >::rend ()\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a read/write reverse iterator that points to one before the first element in the vector\&. Iteration is done in reverse element order\&. .PP Definition at line 592 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::begin()\&. .SS "\fBconst_reverse_iterator\fP \fBstd::vector\fP< \fB_State\fP , _Alloc >::rend () const\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns a read-only (constant) reverse iterator that points to one before the first element in the vector\&. Iteration is done in reverse element order\&. .PP Definition at line 601 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::begin()\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::reserve (size_type__n)\fC [inherited]\fP" .PP Attempt to preallocate enough memory for specified number of elements\&. .PP \fBParameters:\fP .RS 4 \fI__n\fP Number of elements required\&. .RE .PP \fBExceptions:\fP .RS 4 \fIstd::length_error\fP If \fIn\fP exceeds \fCmax_size()\fP\&. .RE .PP This function attempts to reserve enough memory for the vector to hold the specified number of elements\&. If the number requested is more than max_size(), length_error is thrown\&. .PP The advantage of this function is that if optimal code is a necessity and the user can determine the number of elements that will be required, the user can reserve the memory in advance, and thus prevent a possible reallocation of memory and copying of vector data\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::resize (size_type__new_size)\fC [inline]\fP, \fC [inherited]\fP" .PP Resizes the vector to the specified number of elements\&. .PP \fBParameters:\fP .RS 4 \fI__new_size\fP Number of elements the vector should contain\&. .RE .PP This function will resize the vector to the specified number of elements\&. If the number is smaller than the vector's current size the vector is truncated, otherwise default constructed elements are appended\&. .PP Definition at line 664 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::size()\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::resize (size_type__new_size, const value_type &__x)\fC [inline]\fP, \fC [inherited]\fP" .PP Resizes the vector to the specified number of elements\&. .PP \fBParameters:\fP .RS 4 \fI__new_size\fP Number of elements the vector should contain\&. .br \fI__x\fP Data with which new elements should be populated\&. .RE .PP This function will resize the vector to the specified number of elements\&. If the number is smaller than the vector's current size the vector is truncated, otherwise the vector is extended and new elements are populated with given data\&. .PP Definition at line 684 of file stl_vector\&.h\&. .PP References std::vector< _Tp, _Alloc >::end(), std::vector< _Tp, _Alloc >::insert(), and std::vector< _Tp, _Alloc >::size()\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::shrink_to_fit ()\fC [inline]\fP, \fC [inherited]\fP" A non-binding request to reduce capacity() to size()\&. .PP Definition at line 716 of file stl_vector\&.h\&. .SS "size_type \fBstd::vector\fP< \fB_State\fP , _Alloc >::size () const\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" Returns the number of elements in the vector\&. .PP Definition at line 645 of file stl_vector\&.h\&. .SS "void \fBstd::vector\fP< \fB_State\fP , _Alloc >::swap (\fBvector\fP< _State > &__x)\fC [inline]\fP, \fC [noexcept]\fP, \fC [inherited]\fP" .PP Swaps data with another vector\&. .PP \fBParameters:\fP .RS 4 \fI__x\fP A vector of the same element and allocator types\&. .RE .PP This exchanges the elements between two vectors in constant time\&. (Three pointers, so it should be quite fast\&.) Note that the global std::swap() function is specialized such that std::swap(v1,v2) will feed to this function\&. .PP Definition at line 1108 of file stl_vector\&.h\&. .SH "Author" .PP Generated automatically by Doxygen for libstdc++ from the source code\&.