Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r76002 - in sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_: . seq_validate_ validate_
From: lorcaminiti_at_[hidden]
Date: 2011-12-16 17:37:41


Author: lcaminiti
Date: 2011-12-16 17:37:40 EST (Fri, 16 Dec 2011)
New Revision: 76002
URL: http://svn.boost.org/trac/boost/changeset/76002

Log:
Renaming to closure.
Added:
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/sign.hpp
      - copied, changed from r76000, /sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq.hpp
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/valid.hpp
      - copied, changed from r76000, /sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_valid.hpp
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/validate.hpp
      - copied, changed from r76000, /sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_validate.hpp
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/validate_/
      - copied from r76000, /sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_validate_/
Removed:
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq.hpp
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_valid.hpp
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_validate.hpp
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_validate_/
Text files modified:
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/any_bind_type.hpp | 94 +++++++++++++--------------
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/is_void.hpp | 47 +++++++------
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/sign.hpp | 47 ++++++-------
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/valid.hpp | 135 +++++++++++++++++++--------------------
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/validate.hpp | 12 ++-
   sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/validate_/defaults.hpp | 89 +++++++++++++-------------
   6 files changed, 207 insertions(+), 217 deletions(-)

Modified: sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/any_bind_type.hpp
==============================================================================
--- sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/any_bind_type.hpp (original)
+++ sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/any_bind_type.hpp 2011-12-16 17:37:40 EST (Fri, 16 Dec 2011)
@@ -4,83 +4,77 @@
 // License, Version 1.0 (see accompanying file LICENSE_1_0.txt or a
 // copy at http://www.boost.org/LICENSE_1_0.txt).
 
-#ifndef BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_TYPE_HPP_
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_TYPE_HPP_
+#ifndef BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_TYPE_HPP_
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_TYPE_HPP_
 
-#include "../../keyword/const_bind.hpp"
+#include <boost/closure/detail/preprocessor/keyword/const_bind.hpp>
 #include <boost/detail/preprocessor/keyword/this.hpp>
 #include <boost/preprocessor/cat.hpp>
 #include <boost/preprocessor/control/iif.hpp>
 #include <boost/preprocessor/facilities/empty.hpp>
+#include <boost/preprocessor/facilities/expand.hpp>
 #include <boost/preprocessor/tuple/eat.hpp>
+#include <boost/preprocessor/tuple/rem.hpp>
 // IS_UNARY is part of details because it does not work on BCC compiler.
 #include <boost/preprocessor/detail/is_unary.hpp>
 
 // PRIVATE //
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_TYPE_STRIP_PAREN_(\
- type) type
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITH_TYPE_( \
- tokens) \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITH_TYPE_(sign) \
     BOOST_PP_EXPAND( \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_TYPE_STRIP_PAREN_ \
- BOOST_LOCAL_AUX_PP_KEYWORD_CONST_BIND_REMOVE_FRONT(tokens)) \
+ BOOST_PP_TUPLE_REM(1) \
+ BOOST_CLOSURE_DETAIL_PP_KEYWORD_CONST_BIND_REMOVE_FRONT(sign) \
+ ) \
     BOOST_PP_EMPTY /* always trail EMPTY because bind type is optional */
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_TYPE_STRIP_( \
- type) /* must expand to nothing */
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITHOUT_TYPE_( \
- tokens) \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITHOUT_TYPE_(sign) \
     BOOST_PP_EXPAND( \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_TYPE_STRIP_ \
- BOOST_LOCAL_AUX_PP_KEYWORD_CONST_BIND_REMOVE_FRONT(tokens))
+ BOOST_PP_TUPLE_EAT(1) \
+ BOOST_CLOSURE_DETAIL_PP_KEYWORD_CONST_BIND_REMOVE_FRONT(sign) \
+ )
+
+#define this_BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_REMOVE_THIS \
+ /* must expand to nothing */
+
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_THIS_TYPE_(sign) \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITH_TYPE( \
+ /* can't use `THIS_REMOVE_BACK` because `sign` contains multiple */ \
+ /* tokens (and not just one token) so `IS_THIS_BACK` does not work */ \
+ /* (but we know `sign` ends with this if we here so we can */ \
+ /* manually force the removal using `CAT`) */ \
+ BOOST_PP_CAT(sign, _BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_REMOVE_THIS) \
+ ) \
+ /* do not append PP_EMPTY because ANY_BIND_WITH_TYPE macro above */ \
+ /* already appends it */
 
 // PUBLIC //
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_HAS_TYPE(tokens) \
- BOOST_PP_IS_UNARY(BOOST_LOCAL_AUX_PP_KEYWORD_CONST_BIND_REMOVE_FRONT( \
- tokens))
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITH_TYPE(tokens) \
- BOOST_PP_IIF(BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_HAS_TYPE( \
- tokens), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITH_TYPE_ \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_HAS_TYPE(sign) \
+ BOOST_PP_IS_UNARY(BOOST_CLOSURE_DETAIL_PP_KEYWORD_CONST_BIND_REMOVE_FRONT( \
+ sign))
+
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITH_TYPE(sign) \
+ BOOST_PP_IIF(BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_HAS_TYPE(sign),\
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITH_TYPE_ \
     , \
         BOOST_PP_EMPTY \
         BOOST_PP_TUPLE_EAT(1) \
- )(tokens)
+ )(sign)
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITHOUT_TYPE( \
- tokens) \
- BOOST_PP_IIF(BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_HAS_TYPE( \
- tokens), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITHOUT_TYPE_ \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITHOUT_TYPE(sign) \
+ BOOST_PP_IIF(BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_HAS_TYPE(sign),\
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITHOUT_TYPE_ \
     , \
- BOOST_LOCAL_AUX_PP_KEYWORD_CONST_BIND_REMOVE_FRONT \
- )(tokens)
-
-// Private macro (but needs public macros above).
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_THIS_TYPE_( \
- tokens) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITH_TYPE( \
- /* can't use `THIS_REMOVE_BACK` because `tokens` contains */ \
- /* multiple tokens (and not just one token) so `IS_THIS_BACK` */ \
- /* does not work -- but we know tokens ends with this if we */ \
- /* here so we can manually force the removal using `CAT` */ \
- BOOST_PP_CAT(tokens, _BOOST_DETAIL_PP_KEYWORD_THIS_REMOVE)) \
- /* do not append PP_EMPTY because ANY_BIND_WITH_TYPE macro above */ \
- /* already appends it */
+ BOOST_CLOSURE_DETAIL_PP_KEYWORD_CONST_BIND_REMOVE_FRONT \
+ )(sign)
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_THIS_TYPE(tokens) \
- BOOST_PP_IIF(BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_HAS_TYPE(\
- tokens), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_THIS_TYPE_ \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_THIS_TYPE(sign) \
+ BOOST_PP_IIF(BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_HAS_TYPE(sign),\
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_THIS_TYPE_ \
     , \
         BOOST_PP_EMPTY \
         BOOST_PP_TUPLE_EAT(1) \
- )(tokens)
+ )(sign)
 
 #endif // #include guard
 

Modified: sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/is_void.hpp
==============================================================================
--- sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/is_void.hpp (original)
+++ sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/is_void.hpp 2011-12-16 17:37:40 EST (Fri, 16 Dec 2011)
@@ -4,50 +4,51 @@
 // License, Version 1.0 (see accompanying file LICENSE_1_0.txt or a
 // copy at http://www.boost.org/LICENSE_1_0.txt).
 
-#ifndef BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_IS_VOID_HPP_
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_IS_VOID_HPP_
+#ifndef BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_IS_VOID_HPP_
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_IS_VOID_HPP_
 
-#include "../../../../config.hpp"
+#include <boost/closure/config.hpp>
 #include <boost/detail/preprocessor/keyword/void.hpp>
 #include <boost/preprocessor/detail/is_unary.hpp>
 #include <boost/preprocessor/control/iif.hpp>
 #include <boost/preprocessor/facilities/is_empty.hpp>
 #include <boost/preprocessor/facilities/empty.hpp>
-#include <boost/preprocessor/seq.hpp> // For `SEQ_HEAD`.
+#include <boost/preprocessor/seq/seq.hpp> // For `SEQ_HEAD`.
 
 // PRIVATE //
 
-#if defined(BOOST_LOCAL_CONFIG_COMPLIANT)
-# define BOOST_LOCAL_AUX_PP_SIGN_PARASE_PARAMS_IS_VOID_TOKEN_ALLOW_EMPTY_ 0
+#if defined(BOOST_CLOSURE_CONFIG_COMPLIANT)
+# define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_IS_VOID_TOKEN_ALLOW_EMPTY_ 0
 #else
-# define BOOST_LOCAL_AUX_PP_SIGN_PARASE_PARAMS_IS_VOID_TOKEN_ALLOW_EMPTY_ 1
+# define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_IS_VOID_TOKEN_ALLOW_EMPTY_ 1
 #endif
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_IS_VOID_TOKEN_(token) \
- BOOST_PP_IIF(BOOST_PP_IS_EMPTY(token), \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_IS_VOID_TOKEN_(sign) \
+ BOOST_PP_IIF(BOOST_PP_IS_EMPTY(sign), \
         /* handles empty params `()` as no params (C99 only) */ \
- BOOST_LOCAL_AUX_PP_SIGN_PARASE_PARAMS_IS_VOID_TOKEN_ALLOW_EMPTY_ \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_IS_VOID_TOKEN_ALLOW_EMPTY_ \
         BOOST_PP_EMPTY \
     , \
         BOOST_DETAIL_PP_KEYWORD_IS_VOID_FRONT \
- )(token)
+ )(sign)
 
-#define BOOST_LOCLAL_AUX_PP_SIGN_PARSE_PARAMS_IS_VOID_SEQ_(params_seq) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_IS_VOID_TOKEN_( \
- BOOST_PP_SEQ_HEAD(params_seq))
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_IS_VOID_SEQ_(sign) \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_IS_VOID_TOKEN_(BOOST_PP_SEQ_HEAD( \
+ sign))
 
 // PUBLIC //
 
-// Check is specified parenthesized params are empty (or void) list.
-// Expand to 1 iff params_seq is empty (C99 only), or `void` (supported also
-// for C++ but similar to unparenthesized paramter syntax for C99), or `(void)`
-// (parenthesized parameter syntax for C++).
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_IS_VOID(parenthesized_params) \
+// Check is specified parenthesized sign empty (or void) list.
+// Expand to 1 iff sign is empty (C99 only), or `void` (supported also
+// for C++ but similar to unparenthesized sign syntax for C99), or `(void)`
+// (parenthesized sign syntax for C++).
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_IS_VOID(sign) \
     BOOST_PP_IIF(BOOST_PP_IS_UNARY(parenthesized_params), \
- BOOST_LOCLAL_AUX_PP_SIGN_PARSE_PARAMS_IS_VOID_SEQ_ \
- , /* else, it's a sequence */ \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_IS_VOID_TOKEN_ \
- )(parenthesized_params)
+ /* it's a pp-seq */ \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_IS_VOID_SEQ_ \
+ , /* else, it's a token */ \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_IS_VOID_TOKEN_ \
+ )(sign)
 
 #endif // #include guard
 

Deleted: sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq.hpp
==============================================================================
--- sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq.hpp 2011-12-16 17:37:40 EST (Fri, 16 Dec 2011)
+++ (empty file)
@@ -1,43 +0,0 @@
-
-// Copyright (C) 2009-2011 Lorenzo Caminiti
-// Use, modification, and distribution is subject to the Boost Software
-// License, Version 1.0 (see accompanying file LICENSE_1_0.txt or a
-// copy at http://www.boost.org/LICENSE_1_0.txt).
-
-#ifndef BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_HPP_
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_HPP_
-
-#include "seq_validate.hpp"
-#include "seq_valid.hpp"
-#include "../parsed_params_/nil.hpp"
-#include "../parsed_params_/set_error.hpp"
-#include "../parsed_params_/validate.hpp"
-#include <boost/preprocessor/control/iif.hpp>
-#include <boost/preprocessor/facilities/is_empty.hpp>
-
-// PRIVATE //
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_YES_(params_seq, unused) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_VALIDATE( \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID(params_seq))
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_NO_(unused, error) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_SET_ERROR( \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_NIL, error)
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_( \
- params_seq, defaults_error) \
- BOOST_PP_IIF(BOOST_PP_IS_EMPTY(defaults_error (/* expand empty */)), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_YES_ \
- , \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_NO_ \
- )(params_seq, defaults_error)
-
-// PUBLIC //
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ(params_seq) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_(params_seq, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE(params_seq))
-
-#endif // #include guard
-

Deleted: sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_valid.hpp
==============================================================================
--- sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_valid.hpp 2011-12-16 17:37:40 EST (Fri, 16 Dec 2011)
+++ (empty file)
@@ -1,109 +0,0 @@
-
-// Copyright (C) 2009-2011 Lorenzo Caminiti
-// Use, modification, and distribution is subject to the Boost Software
-// License, Version 1.0 (see accompanying file LICENSE_1_0.txt or a
-// copy at http://www.boost.org/LICENSE_1_0.txt).
-
-#ifndef BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_HPP_
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_HPP_
-
-#include "any_bind_type.hpp"
-#include "../parsed_params_/nil.hpp"
-#include "../parsed_params_/append_unbind.hpp"
-#include "../parsed_params_/append_unbind_default.hpp"
-#include "../parsed_params_/append_const_bind.hpp"
-#include "../parsed_params_/append_const_bind_this_type.hpp"
-#include "../parsed_params_/append_bind.hpp"
-#include "../parsed_params_/append_bind_this_type.hpp"
-#include "../../keyword/const_bind.hpp"
-#include "../../keyword/bind.hpp"
-#include <boost/detail/preprocessor/keyword/default.hpp>
-#include <boost/detail/preprocessor/keyword/this.hpp>
-#include <boost/preprocessor/control/iif.hpp>
-
-// PRIVATE //
-
-// Unbound.
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_UNBIND_DEFAULT_( \
- params, elem) \
- /* elem is `default ...` where leading default is kept because default */ \
- /* value might not be alphanumeric (so it fails later CAT for checks); */ \
- /* leading default will be remove later when getting the default value */ \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_APPEND_UNBIND_DEFAULT(params, elem)
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_UNBIND_(params, elem) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_APPEND_UNBIND(params, elem)
-
-// Parse const binds.
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_CONST_BIND_THIS_( \
- params, elem) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_APPEND_CONST_BIND_THIS_TYPE(params, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_THIS_TYPE(elem))
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_CONST_BIND_VAR_( \
- params, elem) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_APPEND_CONST_BIND(params, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITHOUT_TYPE(elem), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITH_TYPE(elem))
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_CONST_BIND_( \
- params, elem) \
- /* check from back because non `this` bounds might have `&` in front */ \
- BOOST_PP_IIF(BOOST_DETAIL_PP_KEYWORD_IS_THIS_BACK( \
- /* remove all leading symbols `[const] bind [(type)] ...` */ \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITHOUT_TYPE(elem)), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_CONST_BIND_THIS_ \
- , \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_CONST_BIND_VAR_ \
- )(params, elem)
-
-// Parse binds.
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_BIND_THIS_( \
- params, elem) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_APPEND_BIND_THIS_TYPE(params, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_THIS_TYPE(elem))
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_BIND_VAR_( \
- params, elem) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_APPEND_BIND(params, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITHOUT_TYPE(elem), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITH_TYPE(elem))
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_BIND_(params, elem) \
- /* check from back because non `this` bounds might have `&` in front */ \
- BOOST_PP_IIF(BOOST_DETAIL_PP_KEYWORD_IS_THIS_BACK( \
- /* remove all leading symbols `[const] bind [(type)] ...` */ \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITHOUT_TYPE(elem)), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_BIND_THIS_ \
- , \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_BIND_VAR_ \
- )(params, elem)
-
-// Parse all elements.
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_(s, params, elem) \
- BOOST_PP_IIF(BOOST_LOCAL_AUX_PP_KEYWORD_IS_BIND_FRONT(elem), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_BIND_ \
- , BOOST_PP_IIF(BOOST_LOCAL_AUX_PP_KEYWORD_IS_CONST_BIND_FRONT(elem), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_CONST_BIND_ \
- , BOOST_PP_IIF(BOOST_DETAIL_PP_KEYWORD_IS_DEFAULT_FRONT(elem), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_UNBIND_DEFAULT_ \
- , \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_UNBIND_ \
- )))(params, elem)
-
-// PUBLIC //
-
-// Parse param seq after following precondition has been validated by caller.
-// Precondition: If seq contains a default param value `... (default ...) ...`,
-// the default value element is never 1st (it always has a previous elem) and
-// its previous element is a unbind param (no const-bind and no bind).
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID(params_seq) \
- BOOST_PP_SEQ_FOLD_LEFT(BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_NIL, params_seq)
-
-#endif // #include guard
-

Deleted: sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_validate.hpp
==============================================================================
--- sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_validate.hpp 2011-12-16 17:37:40 EST (Fri, 16 Dec 2011)
+++ (empty file)
@@ -1,17 +0,0 @@
-
-// Copyright (C) 2009-2011 Lorenzo Caminiti
-// Use, modification, and distribution is subject to the Boost Software
-// License, Version 1.0 (see accompanying file LICENSE_1_0.txt or a
-// copy at http://www.boost.org/LICENSE_1_0.txt).
-
-#ifndef BOOST_LOCAL_AUX_PP_PARSE_PARAMS_SEQ_VALIDATE_HPP_
-#define BOOST_LOCAL_AUX_PP_PARSE_PARAMS_SEQ_VALIDATE_HPP_
-
-#include "seq_validate_/defaults.hpp"
-
-// Validate params seq before starting to parse it.
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE(params_seq) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS(params_seq)
-
-#endif // #include guard
-

Copied: sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/sign.hpp (from r76000, /sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq.hpp)
==============================================================================
--- /sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq.hpp (original)
+++ sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/sign.hpp 2011-12-16 17:37:40 EST (Fri, 16 Dec 2011)
@@ -4,40 +4,39 @@
 // License, Version 1.0 (see accompanying file LICENSE_1_0.txt or a
 // copy at http://www.boost.org/LICENSE_1_0.txt).
 
-#ifndef BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_HPP_
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_HPP_
+#ifndef BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_HPP_
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_HPP_
 
-#include "seq_validate.hpp"
-#include "seq_valid.hpp"
-#include "../parsed_params_/nil.hpp"
-#include "../parsed_params_/set_error.hpp"
-#include "../parsed_params_/validate.hpp"
+#include <boost/closure/aux_/preprocessor/traits/decl_sign_/validate.hpp>
+#include <boost/closure/aux_/preprocessor/traits/decl_sign_/valid.hpp>
+#include <boost/closure/aux_/preprocessor/traits/decl_/nil.hpp>
+#include <boost/closure/aux_/preprocessor/traits/decl_/set_error.hpp>
+#include <boost/closure/aux_/preprocessor/traits/decl_/validate.hpp>
 #include <boost/preprocessor/control/iif.hpp>
 #include <boost/preprocessor/facilities/is_empty.hpp>
 
 // PRIVATE //
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_YES_(params_seq, unused) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_VALIDATE( \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID(params_seq))
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_NO_(unused, error) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_SET_ERROR( \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_NIL, error)
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_( \
- params_seq, defaults_error) \
- BOOST_PP_IIF(BOOST_PP_IS_EMPTY(defaults_error (/* expand empty */)), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_YES_ \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_YES_(sign, unused) \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_VALIDATE( \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID(sign))
+
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_NO_(unused, error) \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SET_ERROR( \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_NIL, error)
+
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_(sign, defaults_error) \
+ BOOST_PP_IIF(BOOST_PP_IS_EMPTY(defaults_error (/* expand EMPTY */)), \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_YES_ \
     , \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_NO_ \
- )(params_seq, defaults_error)
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_NO_ \
+ )(sign, defaults_error)
 
 // PUBLIC //
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ(params_seq) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_(params_seq, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE(params_seq))
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN(sign) \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_(sign, \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE(sign))
 
 #endif // #include guard
 

Copied: sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/valid.hpp (from r76000, /sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_valid.hpp)
==============================================================================
--- /sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_valid.hpp (original)
+++ sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/valid.hpp 2011-12-16 17:37:40 EST (Fri, 16 Dec 2011)
@@ -4,96 +4,91 @@
 // License, Version 1.0 (see accompanying file LICENSE_1_0.txt or a
 // copy at http://www.boost.org/LICENSE_1_0.txt).
 
-#ifndef BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_HPP_
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_HPP_
+#ifndef BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_HPP_
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_HPP_
 
-#include "any_bind_type.hpp"
-#include "../parsed_params_/nil.hpp"
-#include "../parsed_params_/append_unbind.hpp"
-#include "../parsed_params_/append_unbind_default.hpp"
-#include "../parsed_params_/append_const_bind.hpp"
-#include "../parsed_params_/append_const_bind_this_type.hpp"
-#include "../parsed_params_/append_bind.hpp"
-#include "../parsed_params_/append_bind_this_type.hpp"
-#include "../../keyword/const_bind.hpp"
-#include "../../keyword/bind.hpp"
+#include <boost/closure/aux_/preprocessor/traits/decl_sign_/any_bind_type.hpp>
+#include <boost/closure/aux_/preprocessor/traits/decl_/nil.hpp>
+#include <boost/closure/aux_/preprocessor/traits/dec_/append_unbind.hpp>
+#include <boost/closure/aux_/preprocessor/traits/dec_/append_unbind_default.hpp>
+#include <boost/closure/aux_/preprocessor/traits/dec_/append_const_bind.hpp>
+#include <boost/closure/aux_/preprocessor/traits/dec_/append_const_bind_this_type.hpp>
+#include <boost/closure/aux_/preprocessor/traits/dec_/append_bind.hpp>
+#include <boost/closure/aux_/preprocessor/traits/dec_/append_bind_this_type.hpp>
+#include <boost/closure/detail/keyword/const_bind.hpp>
+#include <boost/closure/detail/keyword/bind.hpp>
 #include <boost/detail/preprocessor/keyword/default.hpp>
 #include <boost/detail/preprocessor/keyword/this.hpp>
 #include <boost/preprocessor/control/iif.hpp>
 
 // PRIVATE //
 
-// Unbound.
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_UNBIND_DEFAULT_( \
- params, elem) \
- /* elem is `default ...` where leading default is kept because default */ \
- /* value might not be alphanumeric (so it fails later CAT for checks); */ \
- /* leading default will be remove later when getting the default value */ \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_APPEND_UNBIND_DEFAULT(params, elem)
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_UNBIND_(params, elem) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_APPEND_UNBIND(params, elem)
-
 // Parse const binds.
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_CONST_BIND_THIS_( \
- params, elem) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_APPEND_CONST_BIND_THIS_TYPE(params, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_THIS_TYPE(elem))
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_CONST_BIND_VAR_( \
- params, elem) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_APPEND_CONST_BIND(params, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITHOUT_TYPE(elem), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITH_TYPE(elem))
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_CONST_BIND_THIS_( \
+ decl_traits, sign) \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_APPEND_CONST_BIND_THIS_TYPE(decl_traits, \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_THIS_TYPE(sign))
+
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_CONST_BIND_VAR_( \
+ decl_traits, sign) \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_APPEND_CONST_BIND(decl_traits, \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITHOUT_TYPE(sign), \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITH_TYPE(sign))
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_CONST_BIND_( \
- params, elem) \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_CONST_BIND_( \
+ decl_traits, sign) \
     /* check from back because non `this` bounds might have `&` in front */ \
- BOOST_PP_IIF(BOOST_DETAIL_PP_KEYWORD_IS_THIS_BACK( \
+ BOOST_PP_IIF(BOOST_CLOSURE_DETAIL_PP_KEYWORD_IS_THIS_BACK( \
             /* remove all leading symbols `[const] bind [(type)] ...` */ \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITHOUT_TYPE(elem)), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_CONST_BIND_THIS_ \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITHOUT_TYPE(sign)),\
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_CONST_BIND_THIS_ \
     , \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_CONST_BIND_VAR_ \
- )(params, elem)
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_CONST_BIND_VAR_ \
+ )(decl_traits, sign)
 
 // Parse binds.
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_BIND_THIS_( \
- params, elem) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_APPEND_BIND_THIS_TYPE(params, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_THIS_TYPE(elem))
-
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_BIND_VAR_( \
- params, elem) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_APPEND_BIND(params, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITHOUT_TYPE(elem), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITH_TYPE(elem))
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_BIND_(params, elem) \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_BIND_THIS_( \
+ decl_traits, sign) \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_APPEND_BIND_THIS_TYPE(decl_traits, \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_THIS_TYPE(sign))
+
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_BIND_VAR_( \
+ decl_traits, sign) \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_APPEND_BIND(decl_traits, \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITHOUT_TYPE( \
+ sign), \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITH_TYPE(sign))
+
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_BIND_(decl_traits, sign) \
     /* check from back because non `this` bounds might have `&` in front */ \
- BOOST_PP_IIF(BOOST_DETAIL_PP_KEYWORD_IS_THIS_BACK( \
+ BOOST_PP_IIF(BOOST_CLOSURE_DETAIL_PP_KEYWORD_IS_THIS_BACK( \
             /* remove all leading symbols `[const] bind [(type)] ...` */ \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_ANY_BIND_WITHOUT_TYPE(elem)), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_BIND_THIS_ \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_ANY_BIND_WITHOUT_TYPE( \
+ sign)), \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_BIND_THIS_ \
     , \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_BIND_VAR_ \
- )(params, elem)
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_BIND_VAR_ \
+ )(decl_traits, sign)
 
 // Parse all elements.
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_(s, params, elem) \
- BOOST_PP_IIF(BOOST_LOCAL_AUX_PP_KEYWORD_IS_BIND_FRONT(elem), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_BIND_ \
- , BOOST_PP_IIF(BOOST_LOCAL_AUX_PP_KEYWORD_IS_CONST_BIND_FRONT(elem), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_CONST_BIND_ \
- , BOOST_PP_IIF(BOOST_DETAIL_PP_KEYWORD_IS_DEFAULT_FRONT(elem), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_UNBIND_DEFAULT_ \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_(s, decl_traits, sign) \
+ BOOST_PP_IIF(BOOST_CLOSURE_DETAIL_PP_KEYWORD_IS_BIND_FRONT(sign), \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_BIND_ \
+ , BOOST_PP_IIF(BOOST_CLOSURE_DETAIL_PP_KEYWORD_IS_CONST_BIND_FRONT(sign), \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_CONST_BIND_ \
+ , BOOST_PP_IIF(BOOST_CLOSURE_DETAIL_PP_KEYWORD_IS_DEFAULT_FRONT(sign), \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_UNBIND_DEFAULT_ \
+ /* elem is `default ...` where leading default is kept because */ \
+ /* default value might not be alphanumeric (so it fails later CAT */ \
+ /* for checks), leading default will be removed later when getting */ \
+ /* the default value */ \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_APPEND_UNBIND_DEFAULT \
     , \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_UNBIND_ \
- )))(params, elem)
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_APPEND_UNBIND \
+ )))(decl_traits, sign)
 
 // PUBLIC //
 
@@ -101,9 +96,9 @@
 // Precondition: If seq contains a default param value `... (default ...) ...`,
 // the default value element is never 1st (it always has a previous elem) and
 // its previous element is a unbind param (no const-bind and no bind).
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID(params_seq) \
- BOOST_PP_SEQ_FOLD_LEFT(BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALID_, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSED_PARAMS_NIL, params_seq)
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID(sign) \
+ BOOST_PP_SEQ_FOLD_LEFT(BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALID_, \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_NIL, sign)
 
 #endif // #include guard
 

Copied: sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/validate.hpp (from r76000, /sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_validate.hpp)
==============================================================================
--- /sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_validate.hpp (original)
+++ sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/validate.hpp 2011-12-16 17:37:40 EST (Fri, 16 Dec 2011)
@@ -4,14 +4,16 @@
 // License, Version 1.0 (see accompanying file LICENSE_1_0.txt or a
 // copy at http://www.boost.org/LICENSE_1_0.txt).
 
-#ifndef BOOST_LOCAL_AUX_PP_PARSE_PARAMS_SEQ_VALIDATE_HPP_
-#define BOOST_LOCAL_AUX_PP_PARSE_PARAMS_SEQ_VALIDATE_HPP_
+#ifndef BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_HPP_
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_HPP_
 
-#include "seq_validate_/defaults.hpp"
+#include <boost/closure/aux_/preprocessor/traits/decl_sign_/validate/defaults.hpp>
+
+// PUBLIC //
 
 // Validate params seq before starting to parse it.
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE(params_seq) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS(params_seq)
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE(sign) \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS(sign)
 
 #endif // #include guard
 

Modified: sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/validate_/defaults.hpp
==============================================================================
--- /sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/seq_validate_/defaults.hpp (original)
+++ sandbox/closure/boost/closure/aux_/preprocessor/traits/decl_sign_/validate_/defaults.hpp 2011-12-16 17:37:40 EST (Fri, 16 Dec 2011)
@@ -4,11 +4,11 @@
 // License, Version 1.0 (see accompanying file LICENSE_1_0.txt or a
 // copy at http://www.boost.org/LICENSE_1_0.txt).
 
-#ifndef BOOST_LOCAL_AUX_PP_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_HPP_
-#define BOOST_LOCAL_AUX_PP_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_HPP_
+#ifndef BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_HPP_
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_HPP_
 
-#include "../../../keyword/const_bind.hpp"
-#include "../../../keyword/bind.hpp"
+#include <boost/closure/detail/preprocessor/keyword/const_bind.hpp>
+#include <boost/closure/detail/preprocessor/keyword/bind.hpp>
 #include <boost/detail/preprocessor/keyword/default.hpp>
 #include <boost/preprocessor/tuple/elem.hpp>
 #include <boost/preprocessor/control/while.hpp>
@@ -30,24 +30,24 @@
 
 // PRIVATE //
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_IS_UNBIND_( \
- elem) \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_IS_UNBIND_( \
+ sign) \
     /* PP_OR/PP_BITOR (instead of IIF) don't expand on MSVC */ \
- BOOST_PP_IIF(BOOST_DETAIL_PP_KEYWORD_IS_DEFAULT_FRONT(elem), \
+ BOOST_PP_IIF(BOOST_CLOSURE_DETAIL_PP_KEYWORD_IS_DEFAULT_FRONT(sign), \
         0 \
- , BOOST_PP_IIF(BOOST_LOCAL_AUX_PP_KEYWORD_IS_CONST_BIND_FRONT(elem), \
+ , BOOST_PP_IIF(BOOST_CLOSURE_DETAIL_PP_KEYWORD_IS_CONST_BIND_FRONT(sign), \
         0 \
- , BOOST_PP_IIF(BOOST_LOCAL_AUX_PP_KEYWORD_IS_BIND_FRONT(elem), \
+ , BOOST_PP_IIF(BOOST_CLOSURE_DETAIL_PP_KEYWORD_IS_BIND_FRONT(sign), \
         0 \
     , \
         1 \
     )))
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_PREV_( \
- params_seq, index, error) \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_PREV_( \
+ sign, index, error) \
     BOOST_PP_IIF( \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_IS_UNBIND_( \
- BOOST_PP_SEQ_ELEM(BOOST_PP_DEC(index), params_seq)), \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_IS_UNBIND_(\
+ BOOST_PP_SEQ_ELEM(BOOST_PP_DEC(index), sign)), \
         error /* no err, fwd existing one if any */ \
     , \
         BOOST_PP_CAT(BOOST_PP_CAT(ERROR_default_value_at_element_, \
@@ -55,67 +55,66 @@
         BOOST_PP_EMPTY /* because error might not be present */ \
     )
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_INDEX_( \
- params_seq, index, error) \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_INDEX_( \
+ sign, index, error) \
     BOOST_PP_IF(index, /* can't use IIF because index can be any number */ \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_PREV_ \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_PREV_ \
     , \
         ERROR_default_value_cannot_be_specified_as_the_first_element \
         BOOST_PP_EMPTY /* because error might not be present */ \
         BOOST_PP_TUPLE_EAT(3) \
- )(params_seq, index, error)
+ )(sign, index, error)
 
 // While's operation.
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_OP_DATA_( \
- params_seq, index, error) \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_OP_DATA_( \
+ sign, index, error) \
     ( \
- params_seq \
+ sign \
     , \
         BOOST_PP_INC(index) \
     , \
- BOOST_PP_IIF(BOOST_DETAIL_PP_KEYWORD_IS_DEFAULT_FRONT( \
- BOOST_PP_SEQ_ELEM(index, params_seq)), \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_INDEX_ \
+ BOOST_PP_IIF(BOOST_CLOSURE_DETAIL_PP_KEYWORD_IS_DEFAULT_FRONT( \
+ BOOST_PP_SEQ_ELEM(index, sign)), \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_INDEX_ \
         , \
             error BOOST_PP_TUPLE_EAT(3) /* no err, fwd existing one if any */\
- )(params_seq, index, error) \
+ )(sign, index, error) \
     )
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_OP_(d, \
- params_index_error) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_OP_DATA_( \
- BOOST_PP_TUPLE_ELEM(3, 0, params_index_error), \
- BOOST_PP_TUPLE_ELEM(3, 1, params_index_error), \
- BOOST_PP_TUPLE_ELEM(3, 2, params_index_error))
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_OP_(d, \
+ sign_index_error) \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_OP_DATA_( \
+ BOOST_PP_TUPLE_ELEM(3, 0, sign_index_error), \
+ BOOST_PP_TUPLE_ELEM(3, 1, sign_index_error), \
+ BOOST_PP_TUPLE_ELEM(3, 2, sign_index_error))
 
-// While's predicate.
+// While predicate.
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_PRED_DATA_( \
- params_seq, index, error) \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_PRED_DATA_( \
+ sign, index, error) \
     BOOST_PP_BITAND( \
           BOOST_PP_IS_EMPTY(error (/* expand empty */) ) \
- , BOOST_PP_LESS(index, BOOST_PP_SEQ_SIZE(params_seq)) \
+ , BOOST_PP_LESS(index, BOOST_PP_SEQ_SIZE(sign)) \
     )
 
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_PRED_(d, \
- params_index_error) \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_PRED_DATA_( \
- BOOST_PP_TUPLE_ELEM(3, 0, params_index_error), \
- BOOST_PP_TUPLE_ELEM(3, 1, params_index_error), \
- BOOST_PP_TUPLE_ELEM(3, 2, params_index_error))
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_PRED_(d, \
+ sign_index_error) \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_PRED_DATA_( \
+ BOOST_PP_TUPLE_ELEM(3, 0, sign_index_error), \
+ BOOST_PP_TUPLE_ELEM(3, 1, sign_index_error), \
+ BOOST_PP_TUPLE_ELEM(3, 2, sign_index_error))
 
 // PUBLIC //
 
 // Validate parameter sequence's default values: `default ...` cannot be 1st
 // element and it must follow an unbind param.
 // Expand to `EMPTY` if no error, or `ERROR_message EMPTY` if error.
-#define BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS( \
- params_seq) \
+#define BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS(sign) \
     BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_WHILE( \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_PRED_, \
- BOOST_LOCAL_AUX_PP_SIGN_PARSE_PARAMS_SEQ_VALIDATE_DEFAULTS_OP_, \
- (params_seq, 0, BOOST_PP_EMPTY)))
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_PRED_, \
+ BOOST_CLOSURE_AUX_PP_DECL_TRAITS_SIGN_VALIDATE_DEFAULTS_OP_, \
+ (sign, 0, BOOST_PP_EMPTY)))
 
 #endif // #include guard
 


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