Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r73515 - in sandbox/variadic_macro_data: boost/variadic_macro_data boost/variadic_macro_data/detail libs/variadic_macro_data/test
From: eldiener_at_[hidden]
Date: 2011-08-03 15:24:30


Author: eldiener
Date: 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
New Revision: 73515
URL: http://svn.boost.org/trac/boost/changeset/73515

Log:
Separated remove_parens.
Added:
   sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_native.hpp (contents, props changed)
   sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_remove_parens.hpp (contents, props changed)
   sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_remove_parens_native.hpp (contents, props changed)
   sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_remove_parens_pplib.hpp (contents, props changed)
   sandbox/variadic_macro_data/boost/variadic_macro_data/vmd_remove_parens.hpp (contents, props changed)
   sandbox/variadic_macro_data/boost/variadic_macro_data/vmd_remove_parens_common.hpp (contents, props changed)
Text files modified:
   sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail.hpp | 4 ++++
   sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_main_native.hpp | 10 +---------
   sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_main_pplib.hpp | 7 -------
   sandbox/variadic_macro_data/boost/variadic_macro_data/vmd.hpp | 1 +
   sandbox/variadic_macro_data/boost/variadic_macro_data/vmd_main_common.hpp | 22 ----------------------
   sandbox/variadic_macro_data/libs/variadic_macro_data/test/test_remove_parens.cpp | 2 +-
   6 files changed, 7 insertions(+), 39 deletions(-)

Modified: sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail.hpp
==============================================================================
--- sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail.hpp (original)
+++ sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail.hpp 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
@@ -5,6 +5,10 @@
 
 #if BOOST_VMD_VARIADICS
 
+#if !BOOST_VMD_PPLIB
+#include "vmd_detail_native.hpp"
+#endif /* BOOST_VMD_PPLIB */
+
 #include "vmd_detail_common.hpp"
 
 #endif /* BOOST_VMD_VARIADICS */

Modified: sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_main_native.hpp
==============================================================================
--- sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_main_native.hpp (original)
+++ sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_main_native.hpp 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
@@ -11,6 +11,7 @@
 #include <boost/preprocessor/tuple/to_list.hpp>
 #include <boost/preprocessor/tuple/to_seq.hpp>
 #include <boost/preprocessor/tuple/rem.hpp>
+#include "vmd_detail_native.hpp"
 
 #if BOOST_VMD_MSVC
 #include <boost/preprocessor/arithmetic/dec.hpp>
@@ -121,12 +122,6 @@
 #define VMD_DETAIL_DATA_TO_PP_TUPLE(...) \
   ( __VA_ARGS__ ) \
 /**/
-#define VMD_DETAIL_REMOVE_TUPLE_PARENS(...) \
- __VA_ARGS__ \
-/**/
-#define VMD_DETAIL_PP_TUPLE_TO_DATA(tuple) \
- VMD_DETAIL_REMOVE_TUPLE_PARENS tuple \
-/**/
 #if BOOST_VMD_MSVC
 #define VMD_DETAIL_DATA_SIZE(...) \
   VMD_DETAIL_VD_CAT(VMD_DETAIL_APPLY(VMD_DETAIL_ARG_N, (__VA_ARGS__, VMD_DETAIL_RSEQ_N())),BOOST_PP_EMPTY()) \
@@ -174,9 +169,6 @@
 #define VMD_DETAIL_PP_TUPLE_REVERSE(size,tuple) \
   BOOST_PP_TUPLE_REVERSE(size,tuple) \
 /**/
-#define VMD_DETAIL_REMOVE_PARENS(x) \
- BOOST_PP_IDENTITY(VMD_DETAIL_PP_TUPLE_TO_DATA(x)) \
-/**/
 
 #endif // BOOST_VMD_VARIADICS
 #endif // VMD_DETAIL_MAIN_NATIVE_HPP

Modified: sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_main_pplib.hpp
==============================================================================
--- sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_main_pplib.hpp (original)
+++ sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_main_pplib.hpp 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
@@ -5,9 +5,6 @@
 
 #if BOOST_VMD_VARIADICS
 
-#include <boost/preprocessor/facilities/identity.hpp>
-#include <boost/preprocessor/tuple/enum.hpp>
-
 #if BOOST_VMD_MSVC
 
 #include <boost/preprocessor/arithmetic/dec.hpp>
@@ -30,9 +27,5 @@
 
 #endif /* BOOST_VMD_MSVC */
 
-#define VMD_DETAIL_REMOVE_PARENS(x) \
- BOOST_PP_IDENTITY(BOOST_PP_TUPLE_ENUM(x)) \
-/**/
-
 #endif // BOOST_VMD_VARIADICS
 #endif // VMD_DETAIL_MAIN_PPLIB_HPP

Added: sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_native.hpp
==============================================================================
--- (empty file)
+++ sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_native.hpp 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
@@ -0,0 +1,16 @@
+#if !defined(VMD_DETAIL_NATIVE_HPP)
+#define VMD_DETAIL_NATIVE_HPP
+
+#include "vmd_detail_setup.hpp"
+
+#if BOOST_VMD_VARIADICS
+
+#define VMD_DETAIL_REMOVE_TUPLE_PARENS(...) \
+ __VA_ARGS__ \
+/**/
+#define VMD_DETAIL_PP_TUPLE_TO_DATA(tuple) \
+ VMD_DETAIL_REMOVE_TUPLE_PARENS tuple \
+/**/
+
+#endif // BOOST_VMD_VARIADICS
+#endif // VMD_DETAIL_NATIVE_HPP

Added: sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_remove_parens.hpp
==============================================================================
--- (empty file)
+++ sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_remove_parens.hpp 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
@@ -0,0 +1,15 @@
+#if !defined(VMD_DETAIL_REMOVE_PARENS_HPP)
+#define VMD_DETAIL_REMOVE_PARENS_HPP
+
+#include "vmd_detail_setup.hpp"
+
+#if BOOST_VMD_VARIADICS
+
+#if BOOST_VMD_PPLIB
+#include "vmd_detail_remove_parens_pplib.hpp"
+#else
+#include "vmd_detail_remove_parens_native.hpp"
+#endif /* BOOST_VMD_PPLIB */
+
+#endif /* BOOST_VMD_VARIADICS */
+#endif /* VMD_DETAIL_REMOVE_PARENS_HPP */

Added: sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_remove_parens_native.hpp
==============================================================================
--- (empty file)
+++ sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_remove_parens_native.hpp 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
@@ -0,0 +1,16 @@
+#if !defined(VMD_DETAIL_REMOVE_PARENS_NATIVE_HPP)
+#define VMD_DETAIL_REMOVE_PARENS_NATIVE_HPP
+
+#include "vmd_detail_setup.hpp"
+
+#if BOOST_VMD_VARIADICS
+
+#include <boost/preprocessor/facilities/identity.hpp>
+#include "vmd_detail_native.hpp"
+
+#define VMD_DETAIL_REMOVE_PARENS(x) \
+ BOOST_PP_IDENTITY(VMD_DETAIL_PP_TUPLE_TO_DATA(x)) \
+/**/
+
+#endif // BOOST_VMD_VARIADICS
+#endif // VMD_DETAIL_REMOVE_PARENS_NATIVE_HPP

Added: sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_remove_parens_pplib.hpp
==============================================================================
--- (empty file)
+++ sandbox/variadic_macro_data/boost/variadic_macro_data/detail/vmd_detail_remove_parens_pplib.hpp 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
@@ -0,0 +1,16 @@
+#if !defined(VMD_DETAIL_REMOVE_PARENS_PPLIB_HPP)
+#define VMD_DETAIL_REMOVE_PARENS_PPLIB_HPP
+
+#include "vmd_detail_setup.hpp"
+
+#if BOOST_VMD_VARIADICS
+
+#include <boost/preprocessor/facilities/identity.hpp>
+#include <boost/preprocessor/tuple/enum.hpp>
+
+#define VMD_DETAIL_REMOVE_PARENS(x) \
+ BOOST_PP_IDENTITY(BOOST_PP_TUPLE_ENUM(x)) \
+/**/
+
+#endif // BOOST_VMD_VARIADICS
+#endif // VMD_DETAIL_REMOVE_PARENS_PPLIB_HPP

Modified: sandbox/variadic_macro_data/boost/variadic_macro_data/vmd.hpp
==============================================================================
--- sandbox/variadic_macro_data/boost/variadic_macro_data/vmd.hpp (original)
+++ sandbox/variadic_macro_data/boost/variadic_macro_data/vmd.hpp 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
@@ -7,6 +7,7 @@
 
 #include "vmd_main.hpp"
 #include "vmd_is_tuple_begin.hpp"
+#include "vmd_remove_parens.hpp"
 
 #endif /* BOOST_VMD_VARIADICS */
 #endif /* VARIADIC_MACRO_DATA_HPP */

Modified: sandbox/variadic_macro_data/boost/variadic_macro_data/vmd_main_common.hpp
==============================================================================
--- sandbox/variadic_macro_data/boost/variadic_macro_data/vmd_main_common.hpp (original)
+++ sandbox/variadic_macro_data/boost/variadic_macro_data/vmd_main_common.hpp 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
@@ -19,28 +19,6 @@
 /** \file
 */
 
-/// Removes the set of parens from the start of a parameter if it has any.
-/**
-
- param = a macro parameter.
-
- returns = the parameter with the beginning set of parens removed.
- If the parameter has no beginning set of parameters, the
- parameter is returned as is. If there are further sets of
- parens after the beginning set of parameters, they are not
- removed.
-
-*/
-# define BOOST_VMD_REMOVE_PARENS(param) \
- BOOST_PP_IIF \
- ( \
- BOOST_VMD_IS_TUPLE_BEGIN(param), \
- VMD_DETAIL_REMOVE_PARENS, \
- BOOST_PP_IDENTITY \
- ) \
- (param)() \
-/**/
-
 #if !BOOST_VMD_MSVC
 
 #define BOOST_VMD_IS_EMPTY(...) \

Added: sandbox/variadic_macro_data/boost/variadic_macro_data/vmd_remove_parens.hpp
==============================================================================
--- (empty file)
+++ sandbox/variadic_macro_data/boost/variadic_macro_data/vmd_remove_parens.hpp 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
@@ -0,0 +1,11 @@
+#if !defined(VMD_REMOVE_PARENS_HPP)
+#define VMD_REMOVE_PARENS_HPP
+
+#include "detail/vmd_detail_setup.hpp"
+
+#if BOOST_VMD_VARIADICS
+
+#include "vmd_remove_parens_common.hpp"
+
+#endif /* BOOST_VMD_VARIADICS */
+#endif /* VMD_REMOVE_PARENS_HPP */

Added: sandbox/variadic_macro_data/boost/variadic_macro_data/vmd_remove_parens_common.hpp
==============================================================================
--- (empty file)
+++ sandbox/variadic_macro_data/boost/variadic_macro_data/vmd_remove_parens_common.hpp 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
@@ -0,0 +1,47 @@
+#if !defined(VMD_REMOVE_PARENS_COMMON_HPP)
+#define VMD_REMOVE_PARENS_COMMON_HPP
+
+#include "detail/vmd_detail_setup.hpp"
+
+#if BOOST_VMD_VARIADICS
+
+#include <boost/preprocessor/control/iif.hpp>
+#include <boost/preprocessor/facilities/identity.hpp>
+
+#include "vmd_is_tuple_begin.hpp"
+#include "detail/vmd_detail_remove_parens.hpp"
+
+/*
+
+ The succeeding comments in this file are in doxygen format.
+
+*/
+
+/** \file
+*/
+
+/// Removes the set of parens from the start of a parameter if it has any.
+/**
+
+ param = a macro parameter.
+
+ returns = the parameter with the beginning set of parens removed.
+ If the parameter has no beginning set of parameters, the
+ parameter is returned as is. If there are further sets of
+ parens after the beginning set of parameters, they are not
+ removed.
+
+*/
+# define BOOST_VMD_REMOVE_PARENS(param) \
+ BOOST_PP_IIF \
+ ( \
+ BOOST_VMD_IS_TUPLE_BEGIN(param), \
+ VMD_DETAIL_REMOVE_PARENS, \
+ BOOST_PP_IDENTITY \
+ ) \
+ (param)() \
+/**/
+
+#endif /* BOOST_VMD_VARIADICS */
+
+#endif /* VMD_REMOVE_PARENS_COMMON_HPP */

Modified: sandbox/variadic_macro_data/libs/variadic_macro_data/test/test_remove_parens.cpp
==============================================================================
--- sandbox/variadic_macro_data/libs/variadic_macro_data/test/test_remove_parens.cpp (original)
+++ sandbox/variadic_macro_data/libs/variadic_macro_data/test/test_remove_parens.cpp 2011-08-03 15:24:28 EDT (Wed, 03 Aug 2011)
@@ -1,4 +1,4 @@
-#include <boost/variadic_macro_data/vmd_main.hpp>
+#include <boost/variadic_macro_data/vmd_remove_parens.hpp>
 #include <boost/detail/lightweight_test.hpp>
 
 int main()


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk