vmd/doc/vmd_reentrant.qbk
2015-08-25 17:48:35 -04:00

67 lines
1.4 KiB
Plaintext

[/
(C) Copyright Edward Diener 2011-2015
Distributed under the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt).
]
[section:vmd_reentrant Boost PP re-entrant versions]
Nearly all macros in VMD have equivalent reentrant versions which are
meant to be used in a BOOST_PP_WHILE loop. These are versions which have
an underscore D suffix, take the next available BOOST_PP_WHILE iteration
as their first parameter, and then have the exact same functionality as
their unsuffixed equivalents. They can be used in BOOST_PP_WHILE loops
to provide slightly quicker preprocessing but, as the documentation for
BOOST_PP_WHILE and BOOST_PP_WHILE_##d explain, they do not have to be used.
These macros are:
Arrays
* BOOST_VMD_IS_ARRAY_D
* BOOST_VMD_IS_EMPTY_ARRAY_D
* BOOST_VMD_ASSERT_IS_ARRAY_D
Identifiers
* BOOST_VMD_IS_IDENTIFIER_D
* BOOST_VMD_ASSERT_IS_IDENTIFIER_D
Lists
* BOOST_VMD_IS_LIST_D
* BOOST_VMD_IS_EMPTY_LIST_D
* BOOST_VMD_ASSERT_IS_LIST_D
Sequences
* BOOST_VMD_ELEM_D
* BOOST_VMD_ENUM_D
* BOOST_VMD_EQUAL_D
* BOOST_VMD_GET_TYPE_D
* BOOST_VMD_IS_MULTI_D
* BOOST_VMD_IS_UNARY_D
* BOOST_VMD_NOT_EQUAL_D
* BOOST_VMD_SIZE_D
* BOOST_VMD_TO_ARRAY_D
* BOOST_VMD_TO_LIST_D
* BOOST_VMD_TO_SEQ_D
* BOOST_VMD_TO_TUPLE_D
Seqs
* BOOST_VMD_IS_SEQ_D
* BOOST_VMD_ASSERT_IS_SEQ_D
Types
* BOOST_VMD_IS_TYPE_D
* BOOST_VMD_ASSERT_IS_TYPE_D
Other
* BOOST_VMD_IS_PARENS_EMPTY_D
[endsect]