add index_tuple summary page

This commit is contained in:
Bolero-MURAKAMI 2014-08-15 21:27:31 +09:00
parent 2d707944fb
commit e57368faee
473 changed files with 2597 additions and 1293 deletions

View file

@ -1,4 +1,5 @@
.. _sprout:
###############################################################################
Sprout C++ Libraries
###############################################################################
@ -11,6 +12,7 @@ Contents:
libs/index
.. _sprout-welcome:
*******************************************************************************
Welcome to the Sprout C++ Libraries
*******************************************************************************
@ -18,6 +20,7 @@ Welcome to the Sprout C++ Libraries
| C++11 constexpr based Containers, Algorithms, Random numbers, Parsing, Ray tracing, Synthesizer, and others.
.. _sprout-documentation:
*******************************************************************************
Library Documentation
*******************************************************************************
@ -25,6 +28,7 @@ Library Documentation
| The starting point for the documentation of individual libraries is the :doc:`Libraries page <./libs/index>`, which gives a brief description of each library and links to its documentation.
.. _sprout-project:
*******************************************************************************
Project page
*******************************************************************************
@ -34,6 +38,7 @@ Project page
* `Wiki (japanese) <http://www.boleros.x0.com/doc/sproutwiki/>`_
.. _sprout-install:
*******************************************************************************
Install
*******************************************************************************
@ -42,16 +47,18 @@ Install
| This library can be used in the header only.
.. _sprout-compilers:
*******************************************************************************
Supported Compilers
*******************************************************************************
Linux:
* GCC, C++11/14 mode: 4.7.0, 4.7.1, 4.7.2, 4.7.3, 4.8.0, 4.8.1, 4.8.2, 4.9.0
* Clang, C++11/14 mode: 3.2, 3.3, 3.4
* GCC, C++11/14 mode: 4.7.0, 4.7.1, 4.7.2, 4.7.3, 4.7.4, 4.8.0, 4.8.1, 4.8.2, 4.8.3, 4.9.0
* Clang, C++11/14 mode: 3.2, 3.3, 3.4, 3.4.1, 3.4.2
.. _sprout-author:
*******************************************************************************
Author
*******************************************************************************
@ -60,6 +67,7 @@ Author
| `Website <http://bolero-murakami.github.io/>`_ | `Twitter <https://twitter.com/bolero_murakami>`_ | `Facebook <http://www.facebook.com/genya.murakami>`_ | `Blog <http://boleros.hateblo.jp/>`_ | `Github <https://github.com/bolero-MURAKAMI>`_ | `SlideShare <http://www.slideshare.net/GenyaMurakami>`_
.. _sprout-copyrights:
*******************************************************************************
Copyrights
*******************************************************************************

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-adjacent_find:
###############################################################################
adjacent_find
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-all_of:
###############################################################################
all_of
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-all_of_equal:
###############################################################################
all_of_equal
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-any_of:
###############################################################################
any_of
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-any_of_equal:
###############################################################################
any_of_equal
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-binary_search:
###############################################################################
binary_search
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-clamp:
###############################################################################
clamp
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-count:
###############################################################################
count
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-count_if:
###############################################################################
count_if
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-equal:
###############################################################################
equal
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-equal_range:
###############################################################################
equal_range
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-find:
###############################################################################
find
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-find:
.. _sprout-algorithm-find_end:
###############################################################################
find_end
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-find:
.. _sprout-algorithm-find_first_of:
###############################################################################
find_first_of
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-find_if:
###############################################################################
find_if
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-find_if_not:
###############################################################################
find_if_not
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm:
###############################################################################
Sprout.Algorithm
###############################################################################
@ -50,110 +51,117 @@ Sprout.Algorithm
clamp
.. _sprout-algorithm-non_modifying:
*******************************************************************************
Non-modifying sequence operations
*******************************************************************************
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`all_of <./all_of>`
:doc:`all_of_equal <./all_of_equal>`
:doc:`any_of <./any_of>`
:doc:`any_of_equal <./any_of_equal>`
:doc:`none_of <./none_of>`
:doc:`none_of_equal <./none_of_equal>`
:doc:`one_of <./one_of>`
:doc:`one_of_equal <./one_of_equal>`
:doc:`find <./find>`
:doc:`find_if <./find_if>`
:doc:`find_if_not <./find_if_not>`
:doc:`find_end <./find_end>`
:doc:`find_first_of <./find_first_of>`
:doc:`adjacent_find <./adjacent_find>`
:doc:`count <./count>`
:doc:`count_if <./count_if>`
:doc:`mismatch <./mismatch>`
:doc:`equal <./equal>`
:doc:`is_permutation <./is_permutation>`
:doc:`search <./search>`
:doc:`search_n <./search_n>`
======================================== ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`all_of <./all_of>`, ""
:doc:`all_of_equal <./all_of_equal>`, ""
:doc:`any_of <./any_of>`, ""
:doc:`any_of_equal <./any_of_equal>`, ""
:doc:`none_of <./none_of>`, ""
:doc:`none_of_equal <./none_of_equal>`, ""
:doc:`one_of <./one_of>`, ""
:doc:`one_of_equal <./one_of_equal>`, ""
:doc:`find <./find>`, ""
:doc:`find_if <./find_if>`, ""
:doc:`find_if_not <./find_if_not>`, ""
:doc:`find_end <./find_end>`, ""
:doc:`find_first_of <./find_first_of>`, ""
:doc:`adjacent_find <./adjacent_find>`, ""
:doc:`count <./count>`, ""
:doc:`count_if <./count_if>`, ""
:doc:`mismatch <./mismatch>`, ""
:doc:`equal <./equal>`, ""
:doc:`is_permutation <./is_permutation>`, ""
:doc:`search <./search>`, ""
:doc:`search_n <./search_n>`, ""
.. _sprout-algorithm-non_modifying-sorting:
Sorting
========================================
================================================================================ ===============================================================================
function
================================================================================ ===============================================================================
:doc:`is_sorted <./is_sorted>`
:doc:`is_sorted_until <./is_sorted_until>`
:doc:`is_increasing <./is_increasing>`
:doc:`is_decreasing <./is_decreasing>`
:doc:`is_strictly_increasing <./is_strictly_increasing>`
:doc:`is_strictly_decreasing <./is_strictly_decreasing>`
================================================================================ ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`is_sorted <./is_sorted>`, ""
:doc:`is_sorted_until <./is_sorted_until>`, ""
:doc:`is_increasing <./is_increasing>`, ""
:doc:`is_decreasing <./is_decreasing>`, ""
:doc:`is_strictly_increasing <./is_strictly_increasing>`, ""
:doc:`is_strictly_decreasing <./is_strictly_decreasing>`, ""
.. _sprout-algorithm-non_modifying-binary:
Binary search
========================================
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`lower_bound <./lower_bound>`
:doc:`upper_bound <./upper_bound>`
:doc:`equal_range <./equal_range>`
:doc:`binary_search <./binary_search>`
======================================== ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`lower_bound <./lower_bound>`, ""
:doc:`upper_bound <./upper_bound>`, ""
:doc:`equal_range <./equal_range>`, ""
:doc:`binary_search <./binary_search>`, ""
.. _sprout-algorithm-non_modifying-heap:
Heap operations
========================================
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`is_heap <./is_heap>`
:doc:`is_heap_until <./is_heap_until>`
======================================== ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`is_heap <./is_heap>`, ""
:doc:`is_heap_until <./is_heap_until>`, ""
.. _sprout-algorithm-non_modifying-minmax:
Minimum and maximum
========================================
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`min <./min>`
:doc:`max <./max>`
:doc:`minmax <./minmax>`
:doc:`min_element <./min_element>`
:doc:`max_element <./max_element>`
:doc:`minmax_element <./minmax_element>`
======================================== ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`min <./min>`, ""
:doc:`max <./max>`, ""
:doc:`minmax <./minmax>`, ""
:doc:`min_element <./min_element>`, ""
:doc:`max_element <./max_element>`, ""
:doc:`minmax_element <./minmax_element>`, ""
.. _sprout-algorithm-non_modifying-lexicographical:
Lexicographical comparison
========================================
================================================================================ ===============================================================================
function
================================================================================ ===============================================================================
:doc:`lexicographical_compare <./lexicographical_compare>`
:doc:`tristate_lexicographical_compare <./tristate_lexicographical_compare>`
================================================================================ ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`lexicographical_compare <./lexicographical_compare>`, ""
:doc:`tristate_lexicographical_compare <./tristate_lexicographical_compare>`, ""
.. _sprout-algorithm-non_modifying-clamp:
Clamp algorithm
========================================
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`clamp <./clamp>`
======================================== ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`clamp <./clamp>`, ""
Header
========================================

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-is_decreasing:
###############################################################################
is_decreasing
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-is_heap:
###############################################################################
is_heap
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-is_heap_until:
###############################################################################
is_heap_until
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-is_increasing:
###############################################################################
is_increasing
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-is_permutation:
###############################################################################
is_permutation
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-is_sorted:
###############################################################################
is_sorted
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-is_sorted_until:
###############################################################################
is_sorted_until
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-is_strictly_decreasing:
###############################################################################
is_strictly_decreasing
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-is_strictly_increasing:
###############################################################################
is_strictly_increasing
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-lexicographical_compare:
###############################################################################
lexicographical_compare
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-lower_bound:
###############################################################################
lower_bound
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-max:
###############################################################################
max
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-max_element:
###############################################################################
max_element
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-min:
###############################################################################
min
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-min_element:
###############################################################################
min_element
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-minmax:
###############################################################################
minmax
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-minmax_element:
###############################################################################
minmax_element
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-mismatch:
###############################################################################
mismatch
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-none_of:
###############################################################################
none_of
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-none_of_equal:
###############################################################################
none_of_equal
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-one_of:
###############################################################################
one_of
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-one_of_equal:
###############################################################################
one_of_equal
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-search:
###############################################################################
search
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-search_n:
###############################################################################
search_n
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-tristate_lexicographical_compare:
###############################################################################
tristate_lexicographical_compare
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-algorithm-upper_bound:
###############################################################################
upper_bound
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-assign:
###############################################################################
assign
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-at:
###############################################################################
at
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-back:
###############################################################################
back
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-begin:
###############################################################################
begin
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-c_array:
###############################################################################
c_array
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-cbegin:
###############################################################################
cbegin
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-cend:
###############################################################################
cend
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-crbegin:
###############################################################################
crbegin
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-crend:
###############################################################################
crend
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-data:
###############################################################################
data
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-empty:
###############################################################################
empty
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-end:
###############################################################################
end
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-fill:
###############################################################################
fill
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-front:
###############################################################################
front
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-hash_value:
###############################################################################
hash_value
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array:
###############################################################################
array
###############################################################################
@ -42,24 +43,24 @@ Description
Member types
----------------------------------------
======================================== =============================================================================== =======================================
type definition note
======================================== =============================================================================== =======================================
reference T&
const_reference T const&
iterator **ConstexprRandomAccessIterator** convertible to const_iterator,
convertible to pointer
const_iterator **ConstexprRandomAccessIterator** convertible to const_pointer
size_type std::size_t
difference_type std::ptrdiff_t
value_type T
pointer T*
const_pointer T const*
reverse_iterator sprout::reverse_iterator<iterator>,
**ConstexprRandomAccessIterator**
const_reverse_iterator sprout::reverse_iterator<const_iterator>,
**ConstexprRandomAccessIterator**
======================================== =============================================================================== =======================================
.. csv-table::
:header: type, definition, note
:widths: 4, 4, 4
reference, T&, ""
const_reference, T const&, ""
iterator, **ConstexprRandomAccessIterator**, "| convertible to const_iterator
convertible to pointer"
const_iterator, **ConstexprRandomAccessIterator**, convertible to const_pointer
size_type, std::size_t, ""
difference_type, std::ptrdiff_t, ""
value_type, T, ""
pointer, T*, ""
const_pointer, T const*, ""
reverse_iterator, "| sprout::reverse_iterator<iterator>
**ConstexprRandomAccessIterator**", ""
const_reverse_iterator, "| sprout::reverse_iterator<const_iterator>
**ConstexprRandomAccessIterator**", ""
Member functions
----------------------------------------
@ -67,72 +68,72 @@ Member functions
(initializer)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`(initializer) <./initializer->`
======================================== ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`(initializer) <./initializer->`, ""
construct/copy/destroy
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`operator= <./operator-assign>`
======================================== ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`operator= <./operator-assign>`, ""
modifiers
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`fill <./fill>`
:doc:`assign <./assign>`
:doc:`swap <./swap>`
======================================== ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`fill <./fill>`, ""
:doc:`assign <./assign>`, ""
:doc:`swap <./swap>`, ""
iterators
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`begin <./begin>`
:doc:`end <./end>`
:doc:`rbegin <./rbegin>`
:doc:`rend <./rend>`
:doc:`cbegin <./cbegin>`
:doc:`cend <./cend>`
:doc:`crbegin <./crbegin>`
:doc:`crend <./crend>`
======================================== ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`begin <./begin>`, ""
:doc:`end <./end>`, ""
:doc:`rbegin <./rbegin>`, ""
:doc:`rend <./rend>`, ""
:doc:`cbegin <./cbegin>`, ""
:doc:`cend <./cend>`, ""
:doc:`crbegin <./crbegin>`, ""
:doc:`crend <./crend>`, ""
capacity
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`size <./size>`
:doc:`max_size <./max_size>`
:doc:`empty <./empty>`
======================================== ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`size <./size>`, ""
:doc:`max_size <./max_size>`, ""
:doc:`empty <./empty>`, ""
element access
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`operator[] <./operator-subscript>`
:doc:`at <./at>`
:doc:`front <./front>`
:doc:`back <./back>`
:doc:`data <./data>`
:doc:`c_array <./c_array>`
======================================== ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`operator[] <./operator-subscript>`, ""
:doc:`at <./at>`, ""
:doc:`front <./front>`, ""
:doc:`back <./back>`, ""
:doc:`data <./data>`, ""
:doc:`c_array <./c_array>`, ""
Header
========================================

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-initializer-:
###############################################################################
(initializer)
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-max_size:
###############################################################################
max_size
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-operator-assign:
###############################################################################
operator=
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-operator-equal_to:
###############################################################################
operator==
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-operator-greater:
###############################################################################
operator>
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-operator-greater_equal:
###############################################################################
operator>=
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-operator-less:
###############################################################################
operator<
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-operator-less_equal:
###############################################################################
operator<=
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-operator-not_equal_to:
###############################################################################
operator!=
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-operator-subscript:
###############################################################################
operator[]
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-rbegin:
###############################################################################
rbegin
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-rend:
###############################################################################
rend
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-size:
###############################################################################
size
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-std-hash:
###############################################################################
std::hash
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-std-tuple_element:
###############################################################################
std::tuple_element
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-std-tuple_size:
###############################################################################
std::tuple_size
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-swap-global:
###############################################################################
swap
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-swap:
###############################################################################
swap
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-array-tuple_get:
###############################################################################
tuple_get
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array:
###############################################################################
Sprout.Array
###############################################################################
@ -16,6 +17,7 @@ Sprout.Array
array/operator-greater_equal
to_array
make_array
make_array_without_narrowing
make_common_array
array/std-tuple_size
array/std-tuple_element
@ -29,11 +31,11 @@ Description
Classes
----------------------------------------
======================================== ===============================================================================
class
======================================== ===============================================================================
:doc:`array <./array/index>`
======================================== ===============================================================================
.. csv-table::
:header: class
:widths: 4, 8
:doc:`array <./array/index>`, ""
Non-member functions
----------------------------------------
@ -41,67 +43,68 @@ Non-member functions
specialized algorithms
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`swap <./array/swap-global>`
======================================== ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`swap <./array/swap-global>`, ""
comparisons
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
============================================================ ===============================================================================
function
============================================================ ===============================================================================
:doc:`operator== <./array/operator-equal_to>`
:doc:`operator!= <./array/operator-not_equal_to>`
:doc:`operator\< <./array/operator-less>`
:doc:`operator\> <./array/operator-greater>`
:doc:`operator\<= <./array/operator-less_equal>`
:doc:`operator\>= <./array/operator-greater_equal>`
============================================================ ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`operator== <./array/operator-equal_to>`, ""
:doc:`operator!= <./array/operator-not_equal_to>`, ""
:doc:`operator\< <./array/operator-less>`, ""
:doc:`operator\> <./array/operator-greater>`, ""
:doc:`operator\<= <./array/operator-less_equal>`, ""
:doc:`operator\>= <./array/operator-greater_equal>`, ""
array generators
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
============================================================ ===============================================================================
function
============================================================ ===============================================================================
:doc:`to_array <./to_array>`
:doc:`make_array <./make_array>`
:doc:`make_common_array <./make_common_array>`
============================================================ ===============================================================================
.. csv-table::
:header: function
:widths: 4, 8
:doc:`to_array <./to_array>`, ""
:doc:`make_array <./make_array>`, ""
:doc:`make_array_without_narrowing <./make_array_without_narrowing>`, ""
:doc:`make_common_array <./make_common_array>`, ""
Tuple interface
----------------------------------------
============================================================ ===============================================================================
matafunction
============================================================ ===============================================================================
:doc:`std::tuple_size <./array/std-tuple_size>`
:doc:`std::tuple_element <./array/std-tuple_element>`
============================================================ ===============================================================================
.. csv-table::
:header: matafunction
:widths: 4, 8
============================================================ ===============================================================================
function
============================================================ ===============================================================================
:doc:`tuple_get <./array/tuple_get>`
============================================================ ===============================================================================
:doc:`std::tuple_size <./array/std-tuple_size>`, ""
:doc:`std::tuple_element <./array/std-tuple_element>`, ""
.. csv-table::
:header: function
:widths: 4, 8
:doc:`tuple_get <./array/tuple_get>`, ""
Hash support
----------------------------------------
============================================================ ===============================================================================
class
============================================================ ===============================================================================
:doc:`std::hash <./array/std-hash>`
============================================================ ===============================================================================
.. csv-table::
:header: class
:widths: 4, 8
======================================== ===============================================================================
function
======================================== ===============================================================================
:doc:`hash_value <./array/hash_value>`
======================================== ===============================================================================
:doc:`std::hash <./array/std-hash>`, ""
.. csv-table::
:header: function
:widths: 4, 8
:doc:`hash_value <./array/hash_value>`, ""
Header
========================================

View file

@ -1,4 +1,5 @@
.. _sprout-array-make_array:
###############################################################################
make_array
###############################################################################
@ -10,7 +11,7 @@ Interface
template<typename T, typename... Types>
inline SPROUT_CONSTEXPR sprout::array<typename std::remove_cv<T>::type, sizeof...(Types)>
make_array(Types&&... args);
template</*implementation-defined*/, typename... Types>
inline SPROUT_CONSTEXPR sprout::array<typename sprout::common_decay<Types...>::type, sizeof...(Types)>
make_array(Types&&... args);
@ -25,6 +26,9 @@ Remarks
| A first version needs to be specified in the template parameters explicitly type T of the elements in the array.
| And, the type of the elements in the array is a decayed common type of all arguments in the second version.
|
| Narrowing conversion is **not** prohibited in this make_array function. (It behaves like a static_cast)
| If you want to prohibit narrowing conversion, use :doc:`make_array_without_narrowing <./make_array_without_narrowing>` function.
Examples
========================================

View file

@ -0,0 +1,51 @@
.. _sprout-array-make_array_without_narrowing:
###############################################################################
make_array_without_narrowing
###############################################################################
Interface
========================================
.. sourcecode:: c++
template<typename T, typename... Types>
inline SPROUT_CONSTEXPR sprout::array<typename std::remove_cv<T>::type, sizeof...(Types)>
make_array_without_narrowing(Types&&... args);
template</*implementation-defined*/, typename... Types>
inline SPROUT_CONSTEXPR sprout::array<typename sprout::common_decay<Types...>::type, sizeof...(Types)>
make_array_without_narrowing(Types&&... args);
Returns
========================================
| Returns an array object initialized with the argument all elements.
Remarks
========================================
| A first version needs to be specified in the template parameters explicitly type T of the elements in the array.
| And, the type of the elements in the array is a decayed common type of all arguments in the second version.
|
| Narrowing conversion is prohibited in this make_array_without_narrowing function.
Examples
========================================
.. sourcecode:: c++
#include <sprout/array.hpp>
SPROUT_STATIC_CONSTEXPR auto x = sprout::make_array_without_narrowing<int>(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
static_assert(x.size() == 10, "array x initialized with 10 elements.");
Complexity
========================================
| Recursive function invocations in *O(1)* (constant) depth.
Header
========================================
| ``sprout/array/make_array.hpp``
| Convenience header: ``sprout/array.hpp``

View file

@ -1,4 +1,5 @@
.. _sprout-array-make_common_array:
###############################################################################
make_common_array
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-array-to_array:
###############################################################################
to_array
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-libraries:
###############################################################################
Libraries
###############################################################################
@ -9,8 +10,10 @@ Libraries
array/index
algorithm/index
string/index
index_tuple/index
.. _sprout-listed_by_alphabetically:
*******************************************************************************
Libraries Listed Alphabetically
*******************************************************************************
@ -18,13 +21,16 @@ Libraries Listed Alphabetically
* :doc:`algorithm <./algorithm/index>` - Standard library like generic algorithms.
* :doc:`array <./array/index>` - Standard library compliant class template for storing fixed-size sequences of objects.
* :doc:`string <./string/index>` - Compile-time string of fixed-length buffer.
* :doc:`index_tuple <./index_tuple/index>` - Compile-time integer sequences and generators.
.. _sprout-listed_by_category:
*******************************************************************************
Libraries Listed by Category
*******************************************************************************
.. _sprout-listed_by_category-containers:
Containers and Data structures
=======================================
@ -36,6 +42,7 @@ Containers and Data structures
* :doc:`bitset <./bitset/index>`
.. _sprout-listed_by_category-algorithms:
Algorithms
=======================================
@ -46,6 +53,7 @@ Algorithms
* :doc:`range_adaptor <./range/adaptor/index>`
.. _sprout-listed_by_category-container_supports:
Container supports
=======================================
@ -55,18 +63,21 @@ Container supports
* :doc:`container <./container/index>`
.. _sprout-listed_by_category-function_objects:
Function Objects
=======================================
* :doc:`functional <./functional/index>`
.. _sprout-listed_by_category-iterators:
Iterators
=======================================
* :doc:`iterator <./iterator/index>`
.. _sprout-listed_by_category-mathematics:
Mathematics
=======================================
@ -76,6 +87,7 @@ Mathematics
* :doc:`rational <./rational/index>`
.. _sprout-listed_by_category-template_metaprogramming:
Template Metaprogramming
=======================================
@ -84,12 +96,14 @@ Template Metaprogramming
* :doc:`type <./type/index>`
.. _sprout-listed_by_category-preprocessor_metaprogramming:
Preprocessor Metaprogramming
=======================================
* :doc:`preprocessor <./preprocessor/index>`
.. _sprout-listed_by_category-domain_specific:
Domain specific
=======================================
@ -97,24 +111,28 @@ Domain specific
* :doc:`checksum <./checksum/index>`
.. _sprout-listed_by_category-parsing:
Parsing
=======================================
* :doc:`weed <./weed/index>`
.. _sprout-listed_by_category-ray_tracing:
Ray tracing
=======================================
* :doc:`darkroom <./darkroom/index>`
.. _sprout-listed_by_category-synthesizer:
Synthesizer
=======================================
* :doc:`compost <./compost/index>`
.. _sprout-listed_by_category-miscellaneous:
Miscellaneous
=======================================
@ -122,6 +140,7 @@ Miscellaneous
* :doc:`bit_operation <./bit_operation/index>`
.. _sprout-listed_by_category-c-compatible:
C-compatible
=======================================

View file

@ -0,0 +1,128 @@
.. _sprout-index_tuple:
###############################################################################
Sprout.IndexTuple
###############################################################################
.. toctree::
:hidden:
index_t
uindex_t
integer_sequence/index
index_tuple
uindex_tuple
index_sequence
make_integer_sequence
make_index_tuple
make_uindex_tuple
integer_pack
index_pack
uindex_pack
integer_range
index_range
uindex_range
integer_n
index_n
uindex_n
make_index_sequence
index_sequence_for
enable_make_indexes
literal-_indexes
literal-_uindexes
integer_sequence/std-tuple_size
integer_sequence/std-tuple_element
integer_sequence/tuple_get
Description
========================================
Index types
----------------------------------------
.. csv-table::
:header: type
:widths: 4, 8
:doc:`index_t <./index_t>`, ""
:doc:`uindex_t <./uindex_t>`, ""
Integer sequence class
----------------------------------------
.. csv-table::
:header: class
:widths: 4, 8
:doc:`integer_sequence <./integer_sequence/index>`, ""
integer_sequence aliases
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. csv-table::
:header: alias
:widths: 4, 8
:doc:`index_tuple <./index_tuple>`, ""
:doc:`uindex_tuple <./uindex_tuple>`, ""
:doc:`index_sequence <./index_sequence>`, ""
Generator metafunctions
----------------------------------------
.. csv-table::
:header: metafunction
:widths: 4, 8
:doc:`make_integer_sequence <./make_integer_sequence>`, ""
:doc:`make_index_tuple <./make_index_tuple/index>`, ""
:doc:`make_uindex_tuple <./make_uindex_tuple/index>`, ""
:doc:`integer_pack <./integer_pack>`, ""
:doc:`index_pack <./index_pack>`, ""
:doc:`uindex_pack <./uindex_pack>`, ""
:doc:`integer_range <./integer_range>`, ""
:doc:`index_range <./uindex_range>`, ""
:doc:`uindex_range <./uindex_range>`, ""
:doc:`integer_n <./integer_n>`, ""
:doc:`index_n <./uindex_range>`, ""
:doc:`uindex_n <./uindex_range>`, ""
:doc:`make_index_sequence <./make_index_sequence>`, ""
:doc:`index_sequence_for <./index_sequence_for>`, ""
Integer sequence utilities
----------------------------------------
.. csv-table::
:header: class
:widths: 4, 8
:doc:`enable_make_indexes <./enable_make_indexes>`, ""
.. csv-table::
:header: user-defined literal
:widths: 4, 8
:doc:`operator"" _indexes <./literal-_indexes>`, ""
:doc:`operator"" _uindexes <./literal-_uindexes>`, ""
Tuple interface
----------------------------------------
.. csv-table::
:header: matafunction
:widths: 4, 8
:doc:`std::tuple_size <./integer_sequence/std-tuple_size>`, ""
:doc:`std::tuple_element <./integer_sequence/std-tuple_element>`, ""
.. csv-table::
:header: function
:widths: 4, 8
:doc:`tuple_get <./integer_sequence/tuple_get>`, ""
Header
========================================
``sprout/index_tuple.hpp``

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-assign-iterator:
###############################################################################
assign
###############################################################################
@ -18,7 +19,7 @@ Requires
Effects
========================================
| Replaces the string controlled by *this with a string of length n whose elements are a copy of those pointed to by s.
| Replaces the string controlled by ``*this`` with a string of length n whose elements are a copy of those pointed to by s.
Returns
========================================

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-assign:
###############################################################################
assign
###############################################################################
@ -80,7 +81,7 @@ Requires
Effects
========================================
| Replaces the string controlled by *this with a string of length n whose elements are a copy of those pointed to by s.
| Replaces the string controlled by ``*this`` with a string of length n whose elements are a copy of those pointed to by s.
Returns
========================================

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-at:
###############################################################################
at
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-back:
###############################################################################
back
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-begin:
###############################################################################
begin
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-c_array:
###############################################################################
back
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-cbegin:
###############################################################################
cbegin
###############################################################################

View file

@ -1,13 +1,14 @@
.. _sprout-string-basic_string-cbegin:
.. _sprout-string-basic_string-cend:
###############################################################################
cbegin
cend
###############################################################################
Interface
========================================
.. sourcecode:: c++
SPROUT_CONSTEXPR const_iterator cbegin() const SPROUT_NOEXCEPT;
SPROUT_CONSTEXPR const_iterator cend() const SPROUT_NOEXCEPT;
Returns
========================================
@ -22,7 +23,7 @@ Examples
using namespace sprout;
SPROUT_STATIC_CONSTEXPR auto input = string<8>("homuhomu");
static_assert(*(input.cbegin() - 1) == 'u', "input last element is u.");
static_assert(*(input.cend() - 1) == 'u', "input last element is u.");
Complexity
========================================

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-clear:
###############################################################################
clear
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-compare-iterator:
###############################################################################
compare
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-compare:
###############################################################################
compare
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-constructor-:
###############################################################################
basic_string
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-crbegin:
###############################################################################
crbegin
###############################################################################

View file

@ -1,4 +1,5 @@
.. _sprout-string-basic_string-crend:
###############################################################################
crend
###############################################################################

Some files were not shown because too many files have changed in this diff Show more