mirror of
https://github.com/boostorg/preprocessor.git
synced 2025-07-15 13:36:33 +02:00
Preprocessor library is now C friendly.
[SVN r12552]
This commit is contained in:
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ARITHMETIC_HPP
|
||||
#define BOOST_PREPROCESSOR_ARITHMETIC_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/arithmetic.hpp">Click here to see the header.</a>
|
||||
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ARITHMETIC_ADD_HPP
|
||||
#define BOOST_PREPROCESSOR_ARITHMETIC_ADD_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/arithmetic/add.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -22,8 +23,8 @@
|
||||
#include <boost/preprocessor/tuple/elem.hpp>
|
||||
#include <boost/preprocessor/while.hpp>
|
||||
|
||||
//! Expands to the sum of X and Y.
|
||||
/*!
|
||||
/** Expands to the sum of X and Y.
|
||||
|
||||
For example, BOOST_PP_ADD(4,3) expands to 7 (a single token).
|
||||
*/
|
||||
#define BOOST_PP_ADD(X,Y) BOOST_PP_ADD_D(0,X,Y)
|
||||
@ -39,6 +40,6 @@ For example, BOOST_PP_ADD(4,3) expands to 7 (a single token).
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_ADD().
|
||||
/** Obsolete. Use BOOST_PP_ADD(). */
|
||||
#define BOOST_PREPROCESSOR_ADD(X,Y) BOOST_PP_ADD(X,Y)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ARITHMETIC_DIV_HPP
|
||||
#define BOOST_PREPROCESSOR_ARITHMETIC_DIV_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/arithmetic/div.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/comparison/less_equal.hpp>
|
||||
#include <boost/preprocessor/inc.hpp>
|
||||
|
||||
//! Expands to the quotient of X and Y.
|
||||
/*!
|
||||
/** Expands to the quotient of X and Y.
|
||||
|
||||
For example, BOOST_PP_DIV(4,3) expands to 1 (a single token).
|
||||
*/
|
||||
#define BOOST_PP_DIV(X,Y) BOOST_PP_DIV_D(0,X,Y)
|
||||
@ -37,6 +38,6 @@ For example, BOOST_PP_DIV(4,3) expands to 1 (a single token).
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_DIV().
|
||||
/** Obsolete. Use BOOST_PP_DIV(). */
|
||||
#define BOOST_PREPROCESSOR_DIV(X,Y) BOOST_PP_DIV(X,Y)
|
||||
#endif
|
||||
|
@ -1,26 +1,27 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ARITHMETIC_MOD_HPP
|
||||
#define BOOST_PREPROCESSOR_ARITHMETIC_MOD_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/arithmetic/mod.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/comparison/less_equal.hpp>
|
||||
|
||||
//! Expands to the remainder of X and Y.
|
||||
/*!
|
||||
/** Expands to the remainder of X and Y.
|
||||
|
||||
For example, BOOST_PP_MOD(4,3) expands to 1 (a single token).
|
||||
*/
|
||||
#define BOOST_PP_MOD(X,Y) BOOST_PP_MOD_D(0,X,Y)
|
||||
@ -31,6 +32,6 @@ For example, BOOST_PP_MOD(4,3) expands to 1 (a single token).
|
||||
#define BOOST_PP_MOD_F(D,P) (BOOST_PP_SUB_D(D,BOOST_PP_TUPLE2_ELEM0 P,BOOST_PP_TUPLE2_ELEM1 P),BOOST_PP_TUPLE2_ELEM1 P)
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_MOD().
|
||||
/** Obsolete. Use BOOST_PP_MOD(). */
|
||||
#define BOOST_PREPROCESSOR_MOD(X,Y) BOOST_PP_MOD(X,Y)
|
||||
#endif
|
||||
|
@ -1,26 +1,27 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ARITHMETIC_MUL_HPP
|
||||
#define BOOST_PREPROCESSOR_ARITHMETIC_MUL_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/arithmetic/mul.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/arithmetic/add.hpp>
|
||||
|
||||
//! Expands to the product of X and Y.
|
||||
/*!
|
||||
/** Expands to the product of X and Y.
|
||||
|
||||
For example, BOOST_PP_MUL(4,3) expands to 12 (a single token).
|
||||
*/
|
||||
#define BOOST_PP_MUL(X,Y) BOOST_PP_MUL_D(0,X,Y)
|
||||
@ -36,6 +37,6 @@ For example, BOOST_PP_MUL(4,3) expands to 12 (a single token).
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_MUL().
|
||||
/** Obsolete. Use BOOST_PP_MUL(). */
|
||||
#define BOOST_PREPROCESSOR_MUL(X,Y) BOOST_PP_MUL(X,Y)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ARITHMETIC_SUB_HPP
|
||||
#define BOOST_PREPROCESSOR_ARITHMETIC_SUB_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/arithmetic/sub.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -21,8 +22,8 @@
|
||||
#include <boost/preprocessor/tuple/elem.hpp>
|
||||
#include <boost/preprocessor/while.hpp>
|
||||
|
||||
//! Expands to the difference of X and Y.
|
||||
/*!
|
||||
/** Expands to the difference of X and Y.
|
||||
|
||||
For example, BOOST_PP_SUB(4,3) expands to 1 (a single token).
|
||||
*/
|
||||
#define BOOST_PP_SUB(X,Y) BOOST_PP_SUB_D(0,X,Y)
|
||||
@ -38,6 +39,6 @@ For example, BOOST_PP_SUB(4,3) expands to 1 (a single token).
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_SUB(X,Y).
|
||||
/** Obsolete. Use BOOST_PP_SUB(X,Y). */
|
||||
#define BOOST_PREPROCESSOR_SUB(X,Y) BOOST_PP_SUB(X,Y)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ASSERT_MSG_HPP
|
||||
#define BOOST_PREPROCESSOR_ASSERT_MSG_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/assert_msg.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,9 +21,9 @@
|
||||
#include <boost/preprocessor/empty.hpp>
|
||||
#include <boost/preprocessor/if.hpp>
|
||||
|
||||
//! Expands to nothing if C != 0 and to MSG if C == 0.
|
||||
/** Expands to nothing if C != 0 and to MSG if C == 0. */
|
||||
#define BOOST_PP_ASSERT_MSG(C,MSG) BOOST_PP_IF(C,BOOST_PP_EMPTY,MSG BOOST_PP_EMPTY)()
|
||||
|
||||
//! Obsolete. Use BOOST_PP_ASSERT_MSG().
|
||||
/** Obsolete. Use BOOST_PP_ASSERT_MSG(). */
|
||||
#define BOOST_PREPROCESSOR_ASSERT_MSG(C,MSG) BOOST_PP_ASSERT_MSG(C,MSG)
|
||||
#endif
|
||||
|
@ -1,24 +1,25 @@
|
||||
#ifndef BOOST_PREPROCESSOR_CAT_HPP
|
||||
#define BOOST_PREPROCESSOR_CAT_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/cat.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Delays the catenation of X and Y.
|
||||
/*!
|
||||
/** Delays the catenation of X and Y.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
@ -69,6 +70,6 @@ the above would expand to:
|
||||
#define BOOST_PP_DO_CAT(X,Y) X##Y
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_CAT().
|
||||
/** Obsolete. Use BOOST_PP_CAT(). */
|
||||
#define BOOST_PREPROCESSOR_CAT(X,Y) BOOST_PP_CAT(X,Y)
|
||||
#endif
|
||||
|
@ -1,28 +1,29 @@
|
||||
#ifndef BOOST_PREPROCESSOR_COMMA_HPP
|
||||
#define BOOST_PREPROCESSOR_COMMA_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/comma.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Expands to a comma. Can be used with BOOST_PP_IF().
|
||||
/*!
|
||||
/** Expands to a comma. Can be used with BOOST_PP_IF().
|
||||
|
||||
See BOOST_PP_COMMA_IF().
|
||||
*/
|
||||
#define BOOST_PP_COMMA() ,
|
||||
|
||||
//! Obsolete. Use BOOST_PP_COMMA().
|
||||
/** Obsolete. Use BOOST_PP_COMMA(). */
|
||||
#define BOOST_PREPROCESSOR_COMMA() ,
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_COMMA_IF_HPP
|
||||
#define BOOST_PREPROCESSOR_COMMA_IF_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/comma_if.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -21,9 +22,10 @@
|
||||
#include <boost/preprocessor/empty.hpp>
|
||||
#include <boost/preprocessor/if.hpp>
|
||||
|
||||
//! Expands to a comma if C != 0 and nothing if C == 0.
|
||||
/** Expands to a comma if C != 0 and nothing if C == 0. */
|
||||
|
||||
#define BOOST_PP_COMMA_IF(C) BOOST_PP_IF(C,BOOST_PP_COMMA,BOOST_PP_EMPTY)()
|
||||
|
||||
//! Obsolete. Use BOOST_PP_COMMA_IF().
|
||||
/** Obsolete. Use BOOST_PP_COMMA_IF(). */
|
||||
#define BOOST_PREPROCESSOR_COMMA_IF(C) BOOST_PP_COMMA_IF(C)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_COMPARISON_HPP
|
||||
#define BOOST_PREPROCESSOR_COMPARISON_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/comparison.hpp">Click here to see the header.</a>
|
||||
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_COMPARISON_EQUAL_HPP
|
||||
#define BOOST_PREPROCESSOR_COMPARISON_EQUAL_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/comparison/equal.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,13 +21,13 @@
|
||||
#include <boost/preprocessor/comparison/not_equal.hpp>
|
||||
#include <boost/preprocessor/logical/not.hpp>
|
||||
|
||||
//! Expands to 1 if X==Y and 0 otherwise.
|
||||
/** Expands to 1 if X==Y and 0 otherwise. */
|
||||
#define BOOST_PP_EQUAL(X,Y) BOOST_PP_EQUAL_D(0,X,Y)
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
#define BOOST_PP_EQUAL_D(D,X,Y) BOOST_PP_NOT(BOOST_PP_NOT_EQUAL_D(D,X,Y))
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_EQUAL().
|
||||
/** Obsolete. Use BOOST_PP_EQUAL(). */
|
||||
#define BOOST_PREPROCESSOR_EQUAL(X,Y) BOOST_PP_EQUAL(X,Y)
|
||||
#endif
|
||||
|
@ -1,31 +1,32 @@
|
||||
#ifndef BOOST_PREPROCESSOR_COMPARISON_GREATER_HPP
|
||||
#define BOOST_PREPROCESSOR_COMPARISON_GREATER_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/comparison/greater.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/comparison/less.hpp>
|
||||
|
||||
//! Expands to 1 if X>Y and 0 otherwise.
|
||||
/** Expands to 1 if X>Y and 0 otherwise. */
|
||||
#define BOOST_PP_GREATER(X,Y) BOOST_PP_GREATER_D(0,X,Y)
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
#define BOOST_PP_GREATER_D(D,X,Y) BOOST_PP_LESS_D(D,Y,X)
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_GREATER().
|
||||
/** Obsolete. Use BOOST_PP_GREATER(). */
|
||||
#define BOOST_PREPROCESSOR_GREATER(X,Y) BOOST_PP_GREATER(X,Y)
|
||||
#endif
|
||||
|
@ -1,31 +1,32 @@
|
||||
#ifndef BOOST_PREPROCESSOR_COMPARISON_GREATER_EQUAL_HPP
|
||||
#define BOOST_PREPROCESSOR_COMPARISON_GREATER_EQUAL_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/comparison/greater_equal.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/comparison/less_equal.hpp>
|
||||
|
||||
//! Expands to 1 if X>=Y and 0 otherwise.
|
||||
/** Expands to 1 if X>=Y and 0 otherwise. */
|
||||
#define BOOST_PP_GREATER_EQUAL(X,Y) BOOST_PP_GREATER_EQUAL_D(0,X,Y)
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
#define BOOST_PP_GREATER_EQUAL_D(D,X,Y) BOOST_PP_LESS_EQUAL_D(D,Y,X)
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_GREATER_EQUAL().
|
||||
/** Obsolete. Use BOOST_PP_GREATER_EQUAL(). */
|
||||
#define BOOST_PREPROCESSOR_GREATER_EQUAL(X,Y) BOOST_PP_GREATER_EQUAL(X,Y)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_COMPARISON_LESS_HPP
|
||||
#define BOOST_PREPROCESSOR_COMPARISON_LESS_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/comparison/less.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -21,13 +22,13 @@
|
||||
#include <boost/preprocessor/comparison/not_equal.hpp>
|
||||
#include <boost/preprocessor/logical/and.hpp>
|
||||
|
||||
//! Expands to 1 if X<Y and 0 otherwise.
|
||||
/** Expands to 1 if X<Y and 0 otherwise. */
|
||||
#define BOOST_PP_LESS(X,Y) BOOST_PP_LESS_D(0,X,Y)
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
#define BOOST_PP_LESS_D(D,X,Y) BOOST_PP_AND(BOOST_PP_NOT_EQUAL_D(D,X,Y),BOOST_PP_LESS_EQUAL_D(D,X,Y))
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_LESS().
|
||||
/** Obsolete. Use BOOST_PP_LESS(). */
|
||||
#define BOOST_PREPROCESSOR_LESS(X,Y) BOOST_PP_LESS(X,Y)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_COMPARISON_LESS_EQUAL_HPP
|
||||
#define BOOST_PREPROCESSOR_COMPARISON_LESS_EQUAL_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/comparison/less_equal.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,13 +21,13 @@
|
||||
#include <boost/preprocessor/arithmetic/sub.hpp>
|
||||
#include <boost/preprocessor/logical/not.hpp>
|
||||
|
||||
//! Expands to 1 if X<=Y and 0 otherwise.
|
||||
/** Expands to 1 if X<=Y and 0 otherwise. */
|
||||
#define BOOST_PP_LESS_EQUAL(X,Y) BOOST_PP_LESS_EQUAL_D(0,X,Y)
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
#define BOOST_PP_LESS_EQUAL_D(D,X,Y) BOOST_PP_NOT(BOOST_PP_SUB_D(D,X,Y))
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_LESS_EQUAL().
|
||||
/** Obsolete. Use BOOST_PP_LESS_EQUAL(). */
|
||||
#define BOOST_PREPROCESSOR_LESS_EQUAL(X,Y) BOOST_PP_LESS_EQUAL(X,Y)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_COMPARISON_NOT_EQUAL_HPP
|
||||
#define BOOST_PREPROCESSOR_COMPARISON_NOT_EQUAL_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/comparison/not_equal.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -21,13 +22,13 @@
|
||||
#include <boost/preprocessor/arithmetic/sub.hpp>
|
||||
#include <boost/preprocessor/logical/bool.hpp>
|
||||
|
||||
//! Expands to 1 if X!=Y and 0 otherwise.
|
||||
/** Expands to 1 if X!=Y and 0 otherwise. */
|
||||
#define BOOST_PP_NOT_EQUAL(X,Y) BOOST_PP_NOT_EQUAL_D(0,X,Y)
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
#define BOOST_PP_NOT_EQUAL_D(D,X,Y) BOOST_PP_BOOL(BOOST_PP_ADD_D(D,BOOST_PP_SUB_D(D,X,Y),BOOST_PP_SUB_D(D,Y,X)))
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_NOT_EQUAL().
|
||||
/** Obsolete. Use BOOST_PP_NOT_EQUAL(). */
|
||||
#define BOOST_PREPROCESSOR_NOT_EQUAL(X,Y) BOOST_PP_NOT_EQUAL(X,Y)
|
||||
#endif
|
||||
|
@ -1,24 +1,25 @@
|
||||
#ifndef BOOST_PREPROCESSOR_DEC_HPP
|
||||
#define BOOST_PREPROCESSOR_DEC_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/dec.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Decrements X expanding to a single token.
|
||||
/*!
|
||||
/** Decrements X expanding to a single token.
|
||||
|
||||
For example, BOOST_PP_DEC(3) expands to 2 (a single token).
|
||||
|
||||
BOOST_PP_DEC() uses saturation arithmetic. Decrementing 0 yeilds a 0.
|
||||
@ -161,6 +162,6 @@ supported.
|
||||
#define BOOST_PP_DEC128 127
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_DEC().
|
||||
/** Obsolete. Use BOOST_PP_DEC(). */
|
||||
#define BOOST_PREPROCESSOR_DEC(X) BOOST_PP_DEC(X)
|
||||
#endif
|
||||
|
@ -1,24 +1,25 @@
|
||||
#ifndef BOOST_PREPROCESSOR_EMPTY_HPP
|
||||
#define BOOST_PREPROCESSOR_EMPTY_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/empty.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Expands to nothing. Used with BOOST_PP_IF() and as an unused parameter.
|
||||
/*!
|
||||
/** Expands to nothing. Used with BOOST_PP_IF() and as an unused parameter.
|
||||
|
||||
Example usage as the implementation of BOOST_PP_COMMA_IF(C):
|
||||
|
||||
<PRE>\verbatim
|
||||
@ -71,6 +72,6 @@ implementing the subscripting operators of a random access container.
|
||||
*/
|
||||
#define BOOST_PP_EMPTY()
|
||||
|
||||
//! Obsolete. Use BOOST_PP_EMPTY().
|
||||
/** Obsolete. Use BOOST_PP_EMPTY(). */
|
||||
#define BOOST_PREPROCESSOR_EMPTY()
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ENUM_HPP
|
||||
#define BOOST_PREPROCESSOR_ENUM_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/enum.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -21,8 +22,8 @@
|
||||
#include <boost/preprocessor/repeat.hpp>
|
||||
#include <boost/preprocessor/tuple.hpp>
|
||||
|
||||
//! Generates a comma separated list.
|
||||
/*!
|
||||
/** Generates a comma separated list.
|
||||
|
||||
In other words, expands to the sequence:
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ENUM_PARAMS_HPP
|
||||
#define BOOST_PREPROCESSOR_ENUM_PARAMS_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/enum_params.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/cat.hpp>
|
||||
#include <boost/preprocessor/enum.hpp>
|
||||
|
||||
//! Generates a comma separated list of parameters.
|
||||
/*!
|
||||
/** Generates a comma separated list of parameters.
|
||||
|
||||
In other words, expands to the sequence:
|
||||
|
||||
<PRE>\verbatim
|
||||
@ -36,6 +37,6 @@ NOTE: The implementation uses BOOST_PP_REPEAT().
|
||||
#define BOOST_PP_ENUM_PARAMS_F(I,P) BOOST_PP_CAT(P,I)
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_ENUM_PARAMS().
|
||||
/** Obsolete. Use BOOST_PP_ENUM_PARAMS(). */
|
||||
#define BOOST_PREPROCESSOR_ENUM_PARAMS(N,P) BOOST_PP_ENUM_PARAMS(N,P)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ENUM_PARAMS_WITH_A_DEFAULT_HPP
|
||||
#define BOOST_PREPROCESSOR_ENUM_PARAMS_WITH_A_DEFAULT_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/enum_params_with_a_default.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/cat.hpp>
|
||||
#include <boost/preprocessor/enum.hpp>
|
||||
|
||||
//! Generates a comma separated list of parameters with a default.
|
||||
/*!
|
||||
/** Generates a comma separated list of parameters with a default.
|
||||
|
||||
In other words, expands to the sequence:
|
||||
|
||||
<PRE>\verbatim
|
||||
@ -40,6 +41,6 @@ NOTE: The implementation uses BOOST_PP_REPEAT().
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT().
|
||||
/** Obsolete. Use BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(). */
|
||||
#define BOOST_PREPROCESSOR_ENUM_PARAMS_WITH_A_DEFAULT(N,P,D) BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(N,P,D)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ENUM_PARAMS_WITH_DEFAULTS_HPP
|
||||
#define BOOST_PREPROCESSOR_ENUM_PARAMS_WITH_DEFAULTS_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/enum_params_with_defaults.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/cat.hpp>
|
||||
#include <boost/preprocessor/enum.hpp>
|
||||
|
||||
//! Generates a comma separated list of parameters with defaults.
|
||||
/*!
|
||||
/** Generates a comma separated list of parameters with defaults.
|
||||
|
||||
In other words, expands to the sequence:
|
||||
|
||||
<PRE>\verbatim
|
||||
@ -40,6 +41,6 @@ NOTE: The implementation uses BOOST_PP_REPEAT().
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_ENUM_PARAMS_WITH_DEFAULTS().
|
||||
/** Obsolete. Use BOOST_PP_ENUM_PARAMS_WITH_DEFAULTS(). */
|
||||
#define BOOST_PREPROCESSOR_ENUM_PARAMS_WITH_DEFAULTS(N,P,D) BOOST_PP_ENUM_PARAMS_WITH_DEFAULTS(N,P,D)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ENUM_SHIFTED_HPP
|
||||
#define BOOST_PREPROCESSOR_ENUM_SHIFTED_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/enum_shifted.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -21,8 +22,8 @@
|
||||
#include <boost/preprocessor/dec.hpp>
|
||||
#include <boost/preprocessor/inc.hpp>
|
||||
|
||||
//! Generates a comma separated shifted list.
|
||||
/*!
|
||||
/** Generates a comma separated shifted list.
|
||||
|
||||
In other words, expands to the sequence:
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_ENUM_SHIFTED_PARAMS_HPP
|
||||
#define BOOST_PREPROCESSOR_ENUM_SHIFTED_PARAMS_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/enum_shifted_params.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/cat.hpp>
|
||||
#include <boost/preprocessor/enum_shifted.hpp>
|
||||
|
||||
//! Generates a comma separated list of shifted actual parameters.
|
||||
/*!
|
||||
/** Generates a comma separated list of shifted actual parameters.
|
||||
|
||||
In other words, expands to the sequence:
|
||||
|
||||
<PRE>\verbatim
|
||||
@ -40,6 +41,6 @@ lists are common in template metaprograms.
|
||||
#define BOOST_PP_ENUM_SHIFTED_PARAMS_F(I,P) BOOST_PP_CAT(P,I)
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_ENUM_SHIFTED_PARAMS().
|
||||
/** Obsolete. Use BOOST_PP_ENUM_SHIFTED_PARAMS(). */
|
||||
#define BOOST_PREPROCESSOR_ENUM_SHIFTED_PARAMS(N,P) BOOST_PP_ENUM_SHIFTED_PARAMS(N,P)
|
||||
#endif
|
||||
|
@ -1,24 +1,25 @@
|
||||
#ifndef BOOST_PREPROCESSOR_EXPAND_HPP
|
||||
#define BOOST_PREPROCESSOR_EXPAND_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/expand.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/identity.hpp>
|
||||
|
||||
//! Essentially macro expands the parameter X twice.
|
||||
/** Essentially macro expands the parameter X twice. */
|
||||
#define BOOST_PP_EXPAND(X) X
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_FOR_HPP
|
||||
#define BOOST_PREPROCESSOR_FOR_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/for.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/if.hpp>
|
||||
#include <boost/preprocessor/tuple/eat.hpp>
|
||||
|
||||
//! Repeats I(R,X) and iterates F(R,X) while C(R,X) is true.
|
||||
/*!
|
||||
/** Repeats I(R,X) and iterates F(R,X) while C(R,X) is true.
|
||||
|
||||
In other words, expands to the sequence:
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,26 +1,27 @@
|
||||
#ifndef BOOST_PREPROCESSOR_IDENTITY_HPP
|
||||
#define BOOST_PREPROCESSOR_IDENTITY_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/identity.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/empty.hpp>
|
||||
|
||||
//! Expands to X once invoked.
|
||||
/*!
|
||||
/** Expands to X once invoked.
|
||||
|
||||
Designed to be used with BOOST_PP_IF(), when one of the clauses need to be invoked.
|
||||
|
||||
For example,
|
||||
@ -40,6 +41,6 @@ NOTE: If BOOST_PP_IDENTITY() is not invoked, the expansion will not be usable.
|
||||
*/
|
||||
#define BOOST_PP_IDENTITY(X) X BOOST_PP_EMPTY
|
||||
|
||||
//! Obsolete. Use BOOST_PP_IDENTITY().
|
||||
/** Obsolete. Use BOOST_PP_IDENTITY(). */
|
||||
#define BOOST_PREPROCESSOR_IDENTITY(X) BOOST_PP_IDENTITY(X)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_IF_HPP
|
||||
#define BOOST_PREPROCESSOR_IF_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/if.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,7 @@
|
||||
#include <boost/preprocessor/logical/bool.hpp>
|
||||
#include <boost/preprocessor/tuple/elem.hpp>
|
||||
|
||||
//! Expands to T if C != 0 and E if C == 0.
|
||||
/*!
|
||||
/** Expands to T if C != 0 and E if C == 0.
|
||||
BOOST_PP_IF() enables convenient generation of lists using
|
||||
BOOST_PP_REPEAT().
|
||||
*/
|
||||
@ -32,6 +32,6 @@ BOOST_PP_REPEAT().
|
||||
#define BOOST_PP_IF_BOOL_DELAY(C) BOOST_PP_TUPLE2_ELEM##C
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_IF().
|
||||
/** Obsolete. Use BOOST_PP_IF(). */
|
||||
#define BOOST_PREPROCESSOR_IF(C,T,E) BOOST_PP_IF(C,T,E)
|
||||
#endif
|
||||
|
@ -1,24 +1,25 @@
|
||||
#ifndef BOOST_PREPROCESSOR_INC_HPP
|
||||
#define BOOST_PREPROCESSOR_INC_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/inc.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Increments X expanding to a single token.
|
||||
/*!
|
||||
/** Increments X expanding to a single token.
|
||||
|
||||
For example, BOOST_PP_INC(3) expands to 4 (a single token).
|
||||
|
||||
BOOST_PP_INC() uses saturation arithmetic. Incrementing a
|
||||
@ -162,6 +163,6 @@ supported.
|
||||
#define BOOST_PP_INC128 128
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_INC().
|
||||
/** Obsolete. Use BOOST_PP_INC(). */
|
||||
#define BOOST_PREPROCESSOR_INC(X) BOOST_PP_INC(X)
|
||||
#endif
|
||||
|
@ -1,31 +1,32 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIMITS_HPP
|
||||
#define BOOST_PREPROCESSOR_LIMITS_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/limits.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Expands to the number of dimensions of repeat supported by the library.
|
||||
/*!
|
||||
/** Expands to the number of dimensions of repeat supported by the library.
|
||||
|
||||
The repeat macros are named BOOST_PP_REPEAT(), BOOST_PP_REPEAT_2ND(),
|
||||
BOOST_PP_REPEAT_3RD(), ...
|
||||
*/
|
||||
#define BOOST_PP_LIMIT_DIM 3
|
||||
|
||||
//! Expands to the maximum straight numeric literal supported by the library.
|
||||
/*!
|
||||
/** Expands to the maximum straight numeric literal supported by the library.
|
||||
|
||||
This is also the limit of the repetition primitives (BOOST_PP_ENUM family and
|
||||
BOOST_PP_REPEAT family).
|
||||
|
||||
@ -38,15 +39,15 @@ due to compiler limitations.
|
||||
*/
|
||||
#define BOOST_PP_LIMIT_MAG 128
|
||||
|
||||
//! Expands to the maximum tuple length supported by the library.
|
||||
/** Expands to the maximum tuple length supported by the library. */
|
||||
#define BOOST_PP_LIMIT_TUPLE 16
|
||||
|
||||
//! Obsolete. Use BOOST_PP_LIMIT_DIM.
|
||||
/** Obsolete. Use BOOST_PP_LIMIT_DIM. */
|
||||
#define BOOST_PREPROCESSOR_LIMIT_DIM BOOST_PP_LIMIT_DIM
|
||||
|
||||
//! Obsolete. Use BOOST_PP_LIMIT_MAG.
|
||||
/** Obsolete. Use BOOST_PP_LIMIT_MAG. */
|
||||
#define BOOST_PREPROCESSOR_LIMIT_MAG BOOST_PP_LIMIT_MAG
|
||||
|
||||
//! Obsolete. Use BOOST_PP_LIMIT_TUPLE.
|
||||
/** Obsolete. Use BOOST_PP_LIMIT_TUPLE. */
|
||||
#define BOOST_PREPROCESSOR_LIMIT_TUPLE BOOST_PP_LIMIT_TUPLE
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list.hpp">Click here to see the header.</a>
|
||||
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_ADT_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_ADT_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/adt.hpp">Click here to see the header.</a>
|
||||
|
||||
@ -26,8 +27,8 @@ code that depends on the internal representation details.
|
||||
#include <boost/preprocessor/tuple/elem.hpp>
|
||||
#include <boost/preprocessor/logical/not.hpp>
|
||||
|
||||
//! List constructor.
|
||||
/*!
|
||||
/** List constructor.
|
||||
|
||||
Lists are build using list constructors BOOST_PP_LIST_NIL and
|
||||
BOOST_PP_LIST_CONS(). For example,
|
||||
|
||||
@ -50,14 +51,14 @@ Both of the above lists contain 5 elements: 1, 2, 3, 4 and 5.
|
||||
*/
|
||||
#define BOOST_PP_LIST_CONS(H,T) (H,T,1)
|
||||
|
||||
//! List nil constructor.
|
||||
/*!
|
||||
/** List nil constructor.
|
||||
|
||||
See BOOST_PP_LIST_CONS().
|
||||
*/
|
||||
#define BOOST_PP_LIST_NIL (_,_,0)
|
||||
|
||||
//! Expands to 1 if the list is not nil and 0 otherwise.
|
||||
/*!
|
||||
/** Expands to 1 if the list is not nil and 0 otherwise.
|
||||
|
||||
See BOOST_PP_LIST_IS_NIL().
|
||||
*/
|
||||
#if !defined(BOOST_NO_COMPILER_CONFIG) && defined(__MWERKS__) && __MWERKS__ <= 0x2406
|
||||
@ -66,8 +67,8 @@ See BOOST_PP_LIST_IS_NIL().
|
||||
# define BOOST_PP_LIST_IS_CONS(L) BOOST_PP_TUPLE3_ELEM2 L
|
||||
#endif
|
||||
|
||||
//! Expands to 1 if the list is nil and 0 otherwise.
|
||||
/*!
|
||||
/** Expands to 1 if the list is nil and 0 otherwise.
|
||||
|
||||
See BOOST_PP_LIST_IS_CONS().
|
||||
*/
|
||||
#if !defined(BOOST_NO_COMPILER_CONFIG) && defined(__MWERKS__) && __MWERKS__ <= 0x2406
|
||||
@ -76,8 +77,8 @@ See BOOST_PP_LIST_IS_CONS().
|
||||
# define BOOST_PP_LIST_IS_NIL(L) BOOST_PP_NOT(BOOST_PP_TUPLE3_ELEM2 L)
|
||||
#endif
|
||||
|
||||
//! Expands to the first element of the list. The list must not be nil.
|
||||
/*!
|
||||
/** Expands to the first element of the list. The list must not be nil.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
@ -94,8 +95,8 @@ See BOOST_PP_LIST_REST().
|
||||
# define BOOST_PP_LIST_FIRST(L) BOOST_PP_TUPLE3_ELEM0 L
|
||||
#endif
|
||||
|
||||
//! Expands to a list of all but the first element of the list. The list must not be nil.
|
||||
/*!
|
||||
/** Expands to a list of all but the first element of the list. The list must not be nil.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,26 +1,27 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_APPEND_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_APPEND_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/append.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/list/fold_right.hpp>
|
||||
|
||||
//! Catenates two lists together.
|
||||
/*!
|
||||
/** Catenates two lists together.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,26 +1,27 @@
|
||||
#ifndef BOOST_PFIRST_NPROCESSOR_LIST_AT_HPP
|
||||
#define BOOST_PFIRST_NPROCESSOR_LIST_AT_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this softwaFIRST_N is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this softwaFIRST_N is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/at.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/list/rest_n.hpp>
|
||||
|
||||
//! Expands to the I:th element of the list L. The first element is at index 0.
|
||||
/*!
|
||||
/** Expands to the I:th element of the list L. The first element is at index 0.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_CAT_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_CAT_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/cat.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/cat.hpp>
|
||||
#include <boost/preprocessor/list/fold_left.hpp>
|
||||
|
||||
//! Catenates all elements of the list.
|
||||
/*!
|
||||
/** Catenates all elements of the list.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_ENUM_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_ENUM_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/enum.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/comma_if.hpp>
|
||||
#include <boost/preprocessor/list/for_each.hpp>
|
||||
|
||||
//! Converts the list to a comma separated list.
|
||||
/*!
|
||||
/** Converts the list to a comma separated list.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,26 +1,27 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_FILTER_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_FILTER_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/filter.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/list/fold_right.hpp>
|
||||
|
||||
//! Expands to a list containing all the elements X of the list for which F(D,P,X) is true.
|
||||
/*!
|
||||
/** Expands to a list containing all the elements X of the list for which F(D,P,X) is true.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_FIRST_N_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_FIRST_N_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/first_n.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -21,8 +22,8 @@
|
||||
#include <boost/preprocessor/list/adt.hpp>
|
||||
#include <boost/preprocessor/while.hpp>
|
||||
|
||||
//! Expands to a list of the first N elements of the list.
|
||||
/*!
|
||||
/** Expands to a list of the first N elements of the list.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_FOLD_LEFT_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_FOLD_LEFT_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/fold_left.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/list/adt.hpp>
|
||||
#include <boost/preprocessor/while.hpp>
|
||||
|
||||
//! Iterates F(D,P,X) for each element X of the list L (from the left or the start of the list).
|
||||
/*!
|
||||
/** Iterates F(D,P,X) for each element X of the list L (from the left or the start of the list).
|
||||
|
||||
In other words,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,26 +1,27 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_FOLD_RIGHT_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_FOLD_RIGHT_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/fold_right.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/list/reverse.hpp>
|
||||
|
||||
//! Iterates F(D,X,P) for each element X of the list L (from the right or the end of the list).
|
||||
/*!
|
||||
/** Iterates F(D,X,P) for each element X of the list L (from the right or the end of the list).
|
||||
|
||||
In other words,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_FOR_EACH_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_FOR_EACH_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/for_each.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/list/adt.hpp>
|
||||
#include <boost/preprocessor/for.hpp>
|
||||
|
||||
//! Repeats F(R,P,BOOST_PP_LIST_AT(L,I)) for each I = [0,BOOST_PP_LIST_SIZE(L)[.
|
||||
/*!
|
||||
/** Repeats F(R,P,BOOST_PP_LIST_AT(L,I)) for each I = [0,BOOST_PP_LIST_SIZE(L)[.
|
||||
|
||||
In other words, expands to the sequence:
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_REST_N_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_REST_N_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/rest_n.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -21,8 +22,8 @@
|
||||
#include <boost/preprocessor/list/adt.hpp>
|
||||
#include <boost/preprocessor/while.hpp>
|
||||
|
||||
//! Expands to a list of all but the first N elements of the list.
|
||||
/*!
|
||||
/** Expands to a list of all but the first N elements of the list.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,26 +1,27 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_REVERSE_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_REVERSE_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/reverse.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/list/fold_left.hpp>
|
||||
|
||||
//! List reversal.
|
||||
/*!
|
||||
/** List reversal.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_SIZE_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_SIZE_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/size.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/list/fold_left.hpp>
|
||||
#include <boost/preprocessor/inc.hpp>
|
||||
|
||||
//! Expands to the number of elements in the list.
|
||||
/*!
|
||||
/** Expands to the number of elements in the list.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_TO_TUPLE_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_TO_TUPLE_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/to_tuple.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/comma_if.hpp>
|
||||
#include <boost/preprocessor/list/enum.hpp>
|
||||
|
||||
//! Converts the list to a tuple.
|
||||
/*!
|
||||
/** Converts the list to a tuple.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,26 +1,27 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LIST_TRANSFORM_HPP
|
||||
#define BOOST_PREPROCESSOR_LIST_TRANSFORM_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/list/transform.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/list/fold_right.hpp>
|
||||
|
||||
//! Applies the macro F(D,P,X) to each element X of the list producing a new list.
|
||||
/*!
|
||||
/** Applies the macro F(D,P,X) to each element X of the list producing a new list.
|
||||
|
||||
In other words, BOOST_PP_LIST_TRANSFORM(F,P,L) expands to same as:
|
||||
|
||||
<PRE>\verbatim
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LOGICAL_HPP
|
||||
#define BOOST_PREPROCESSOR_LOGICAL_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/logical.hpp">Click here to see the header.</a>
|
||||
|
||||
|
@ -1,30 +1,31 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LOGICAL_AND_HPP
|
||||
#define BOOST_PREPROCESSOR_LOGICAL_AND_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/logical/and.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/logical/not.hpp>
|
||||
|
||||
//! Expands to the logical AND of the operands.
|
||||
/*!
|
||||
/** Expands to the logical AND of the operands.
|
||||
|
||||
For example, BOOST_PP_AND(0,5) expands to 0 (a single token).
|
||||
*/
|
||||
#define BOOST_PP_AND(X,Y) BOOST_PP_NOR(BOOST_PP_NOT(X),BOOST_PP_NOT(Y))
|
||||
|
||||
//! Obsolete. Use BOOST_PP_AND().
|
||||
/** Obsolete. Use BOOST_PP_AND(). */
|
||||
#define BOOST_PREPROCESSOR_AND(X,Y) BOOST_PP_AND(X,Y)
|
||||
#endif
|
||||
|
@ -1,28 +1,30 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LOGICAL_BOOL_HPP
|
||||
#define BOOST_PREPROCESSOR_LOGICAL_BOOL_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/logical/bool.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Expands to 0 if X == 0 and 1 if X != 0.
|
||||
/** Expands to 0 if X == 0 and 1 if X != 0. */
|
||||
#define BOOST_PP_BOOL(X) BOOST_PP_BOOL_DELAY(X)
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
// BOOL can be implemented in O(1) tokens using saturated ADD & SUB.
|
||||
// Unfortunately, it would result in significantly slower preprocessing.
|
||||
/* BOOL can be implemented in O(1) tokens using saturated ADD & SUB.
|
||||
* Unfortunately, it would result in significantly slower preprocessing.
|
||||
*/
|
||||
#define BOOST_PP_BOOL_DELAY(X) BOOST_PP_BOOL##X
|
||||
#define BOOST_PP_BOOL0 0
|
||||
#define BOOST_PP_BOOL1 1
|
||||
@ -155,6 +157,6 @@
|
||||
#define BOOST_PP_BOOL128 1
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_BOOL().
|
||||
/** Obsolete. Use BOOST_PP_BOOL(). */
|
||||
#define BOOST_PREPROCESSOR_BOOL(X) BOOST_PP_BOOL(X)
|
||||
#endif
|
||||
|
@ -1,26 +1,27 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LOGICAL_NOR_HPP
|
||||
#define BOOST_PREPROCESSOR_LOGICAL_NOR_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/logical/nor.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/logical/bool.hpp>
|
||||
|
||||
//! Expands to the logical NEITHER OR of the operands.
|
||||
/*!
|
||||
/** Expands to the logical NEITHER OR of the operands.
|
||||
|
||||
For example, BOOST_PP_NOR(0,5) expands to 0 (a single token).
|
||||
*/
|
||||
#define BOOST_PP_NOR(X,Y) BOOST_PP_NOR_BOOL(BOOST_PP_BOOL(X),BOOST_PP_BOOL(Y))
|
||||
@ -34,6 +35,6 @@ For example, BOOST_PP_NOR(0,5) expands to 0 (a single token).
|
||||
#define BOOST_PP_NOR_BOOL11 0
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_NOR().
|
||||
/** Obsolete. Use BOOST_PP_NOR(). */
|
||||
#define BOOST_PREPROCESSOR_NOR(X,Y) BOOST_PP_NOR(X,Y)
|
||||
#endif
|
||||
|
@ -1,30 +1,31 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LOGICAL_NOT_HPP
|
||||
#define BOOST_PREPROCESSOR_LOGICAL_NOT_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/logical/not.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/logical/nor.hpp>
|
||||
|
||||
//! Expands to the logical NOT of the operand.
|
||||
/*!
|
||||
/** Expands to the logical NOT of the operand.
|
||||
|
||||
For example, BOOST_PP_NOT(0) expands to 1 (a single token).
|
||||
*/
|
||||
#define BOOST_PP_NOT(X) BOOST_PP_NOR(X,X)
|
||||
|
||||
//! Obsolete. Use BOOST_PP_NOT().
|
||||
/** Obsolete. Use BOOST_PP_NOT(). */
|
||||
#define BOOST_PREPROCESSOR_NOT(X) BOOST_PP_NOT(X)
|
||||
#endif
|
||||
|
@ -1,30 +1,31 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LOGICAL_OR_HPP
|
||||
#define BOOST_PREPROCESSOR_LOGICAL_OR_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/logical/or.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/logical/not.hpp>
|
||||
|
||||
//! Expands to the logical OR of the operands.
|
||||
/*!
|
||||
/** Expands to the logical OR of the operands.
|
||||
|
||||
For example, BOOST_PP_OR(0,2) expands to 1 (a single token).
|
||||
*/
|
||||
#define BOOST_PP_OR(X,Y) BOOST_PP_NOT(BOOST_PP_NOR(X,Y))
|
||||
|
||||
//! Obsolete. Use BOOST_PP_OR().
|
||||
/** Obsolete. Use BOOST_PP_OR(). */
|
||||
#define BOOST_PREPROCESSOR_OR(X,Y) BOOST_PP_OR(X,Y)
|
||||
#endif
|
||||
|
@ -1,30 +1,31 @@
|
||||
#ifndef BOOST_PREPROCESSOR_LOGICAL_XOR_HPP
|
||||
#define BOOST_PREPROCESSOR_LOGICAL_XOR_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/logical/xor.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/logical/and.hpp>
|
||||
|
||||
//! Expands to the logical EXCLUSIVE OR of the operands.
|
||||
/*!
|
||||
/** Expands to the logical EXCLUSIVE OR of the operands.
|
||||
|
||||
For example, BOOST_PP_XOR(1,2) expands to 0 (a single token).
|
||||
*/
|
||||
#define BOOST_PP_XOR(X,Y) BOOST_PP_NOR(BOOST_PP_NOR(X,Y),BOOST_PP_AND(X,Y))
|
||||
|
||||
//! Obsolete. Use BOOST_PP_XOR().
|
||||
/** Obsolete. Use BOOST_PP_XOR(). */
|
||||
#define BOOST_PREPROCESSOR_XOR(X,Y) BOOST_PP_XOR(X,Y)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_MAX_HPP
|
||||
#define BOOST_PREPROCESSOR_MAX_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/max.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/comparison/less_equal.hpp>
|
||||
#include <boost/preprocessor/if.hpp>
|
||||
|
||||
//! Expands to the maximum of X and Y.
|
||||
/*!
|
||||
/** Expands to the maximum of X and Y.
|
||||
|
||||
For example, BOOST_PP_MAX(5,7) expands to 7 (a single token).
|
||||
*/
|
||||
#define BOOST_PP_MAX(X,Y) BOOST_PP_MAX_D(0,X,Y)
|
||||
@ -30,6 +31,6 @@ For example, BOOST_PP_MAX(5,7) expands to 7 (a single token).
|
||||
#define BOOST_PP_MAX_D(D,X,Y) BOOST_PP_IF(BOOST_PP_LESS_EQUAL_D(D,X,Y),Y,X)
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_MAX().
|
||||
/** Obsolete. Use BOOST_PP_MAX(). */
|
||||
#define BOOST_PREPROCESSOR_MAX(X,Y) BOOST_PP_MAX(X,Y)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_MIN_HPP
|
||||
#define BOOST_PREPROCESSOR_MIN_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/min.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/comparison/less_equal.hpp>
|
||||
#include <boost/preprocessor/if.hpp>
|
||||
|
||||
//! Expands to the minimum of X and Y.
|
||||
/*!
|
||||
/** Expands to the minimum of X and Y.
|
||||
|
||||
For example, BOOST_PP_MIN(5,7) expands to 5 (a single token).
|
||||
*/
|
||||
#define BOOST_PP_MIN(X,Y) BOOST_PP_MIN_D(0,X,Y)
|
||||
@ -30,6 +31,6 @@ For example, BOOST_PP_MIN(5,7) expands to 5 (a single token).
|
||||
#define BOOST_PP_MIN_D(D,X,Y) BOOST_PP_IF(BOOST_PP_LESS_EQUAL_D(D,Y,X),Y,X)
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_MIN().
|
||||
/** Obsolete. Use BOOST_PP_MIN(). */
|
||||
#define BOOST_PREPROCESSOR_MIN(X,Y) BOOST_PP_MIN(X,Y)
|
||||
#endif
|
||||
|
@ -1,24 +1,25 @@
|
||||
#ifndef BOOST_PREPROCESSOR_REPEAT_HPP
|
||||
#define BOOST_PREPROCESSOR_REPEAT_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/repeat.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Repeats the macro M(I,P) for I = 0 to N-1.
|
||||
/*!
|
||||
/** Repeats the macro M(I,P) for I = 0 to N-1.
|
||||
|
||||
In other words, expands to the sequence:
|
||||
|
||||
<PRE>\verbatim
|
||||
@ -33,7 +34,7 @@ See BOOST_PP_LIMIT_MAG.
|
||||
BOOST_PP_REPEAT_3RD() macros. For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
// A generalized macro for generating 2D arrays
|
||||
* A generalized macro for generating 2D arrays
|
||||
#define ARRAY_2D(W,H,M,P)\
|
||||
BOOST_PP_REPEAT_2ND\
|
||||
( H\
|
||||
@ -60,7 +61,7 @@ BOOST_PP_REPEAT_3RD() macros. For example,
|
||||
)\
|
||||
)
|
||||
|
||||
// Here we use the above macro to generate something
|
||||
* Here we use the above macro to generate something
|
||||
#define ELEM(X,Y,W,H,E) BOOST_PP_COMMA_IF(BOOST_PP_OR(X,Y)) E##_##X##_##Y
|
||||
|
||||
ARRAY_2D(3,4,ELEM,elem)
|
||||
@ -216,6 +217,6 @@ See BOOST_PP_FOR().
|
||||
#define BOOST_PP_REPEAT128(M,P) BOOST_PP_REPEAT127(M,P) M(127,P)
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_REPEAT().
|
||||
/** Obsolete. Use BOOST_PP_REPEAT(). */
|
||||
#define BOOST_PREPROCESSOR_REPEAT(N,M,P) BOOST_PP_REPEAT(N,M,P)
|
||||
#endif
|
||||
|
@ -1,23 +1,24 @@
|
||||
#ifndef BOOST_PREPROCESSOR_REPEAT_2ND_HPP
|
||||
#define BOOST_PREPROCESSOR_REPEAT_2ND_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/repeat_2nd.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Same as BOOST_PP_REPEAT(), but implemented independently.
|
||||
/** Same as BOOST_PP_REPEAT(), but implemented independently. */
|
||||
#define BOOST_PP_REPEAT_2ND(N,M,P) BOOST_PP_REPEAT_2ND_DELAY(N,M,P)
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
@ -153,6 +154,6 @@
|
||||
#define BOOST_PP_REPEAT_2ND128(M,P) BOOST_PP_REPEAT_2ND127(M,P) M(127,P)
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_REPEAT_2ND().
|
||||
/** Obsolete. Use BOOST_PP_REPEAT_2ND(). */
|
||||
#define BOOST_PREPROCESSOR_REPEAT_2ND(N,M,P) BOOST_PP_REPEAT_2ND(N,M,P)
|
||||
#endif
|
||||
|
@ -1,23 +1,24 @@
|
||||
#ifndef BOOST_PREPROCESSOR_REPEAT_3RD_HPP
|
||||
#define BOOST_PREPROCESSOR_REPEAT_3RD_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/repeat_3rd.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Same as BOOST_PP_REPEAT(), but implemented independently.
|
||||
/** Same as BOOST_PP_REPEAT(), but implemented independently. */
|
||||
#define BOOST_PP_REPEAT_3RD(N,M,P) BOOST_PP_REPEAT_3RD_DELAY(N,M,P)
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
@ -153,6 +154,6 @@
|
||||
#define BOOST_PP_REPEAT_3RD128(M,P) BOOST_PP_REPEAT_3RD127(M,P) M(127,P)
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_REPEAT_3RD().
|
||||
/** Obsolete. Use BOOST_PP_REPEAT_3RD(). */
|
||||
#define BOOST_PREPROCESSOR_REPEAT_3RD(N,M,P) BOOST_PP_REPEAT_3RD(N,M,P)
|
||||
#endif
|
||||
|
@ -1,24 +1,25 @@
|
||||
#ifndef BOOST_PREPROCESSOR_STRINGIZE_HPP
|
||||
#define BOOST_PREPROCESSOR_STRINGIZE_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/stringize.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Delays the stringization of X.
|
||||
/*!
|
||||
/** Delays the stringization of X.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
@ -51,6 +52,6 @@ expand to:
|
||||
#define BOOST_PP_DO_STRINGIZE(X) #X
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_STRINGIZE().
|
||||
/** Obsolete. Use BOOST_PP_STRINGIZE(). */
|
||||
#define BOOST_PREPROCESSOR_STRINGIZE(E) BOOST_PP_STRINGIZE(E)
|
||||
#endif
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_TUPLE_HPP
|
||||
#define BOOST_PREPROCESSOR_TUPLE_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/tuple.hpp">Click here to see the header.</a>
|
||||
|
||||
|
@ -1,24 +1,25 @@
|
||||
#ifndef BOOST_PREPROCESSOR_TUPLE_EAT_HPP
|
||||
#define BOOST_PREPROCESSOR_TUPLE_EAT_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/tuple/eat.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Expands to a macro that eats a tuple of the specified length.
|
||||
/*!
|
||||
/** Expands to a macro that eats a tuple of the specified length.
|
||||
|
||||
BOOST_PP_TUPLE_EAT() is designed to be used with BOOST_PP_IF() like
|
||||
BOOST_PP_EMPTY().
|
||||
|
||||
|
@ -1,24 +1,25 @@
|
||||
#ifndef BOOST_PREPROCESSOR_TUPLE_ELEM_HPP
|
||||
#define BOOST_PREPROCESSOR_TUPLE_ELEM_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/tuple/elem.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
//! Expands to the I:th element of an N-tuple.
|
||||
/*!
|
||||
/** Expands to the I:th element of an N-tuple.
|
||||
|
||||
For example,
|
||||
|
||||
<PRE>\verbatim
|
||||
@ -43,21 +44,23 @@ See BOOST_PP_LIMIT_TUPLE.
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
#if !defined(BOOST_NO_COMPILER_CONFIG) && defined(__MWERKS__) && __MWERKS__ <= 0x2406
|
||||
// This is a workaround for a CodeWarrior PP bug. Strictly speaking
|
||||
// this workaround invokes undefined behavior, but it works as desired.
|
||||
/* This is a workaround for a CodeWarrior PP bug. Strictly speaking
|
||||
* this workaround invokes undefined behavior, but it works as desired.
|
||||
*/
|
||||
# define BOOST_PP_TUPLE_ELEM_DELAY(N,I,T) BOOST_PP_TUPLE##N##_ELEM##I##T
|
||||
#elif !defined(BOOST_NO_COMPILER_CONFIG) && defined(_MSC_VER)
|
||||
# include <boost/preprocessor/expand.hpp>
|
||||
// This is a workaround for a MSVC++ PP bug. It should not be necessary
|
||||
// to use BOOST_PP_EXPAND(). Works on standard conforming compilers, too.
|
||||
/* This is a workaround for a MSVC++ PP bug. It should not be necessary
|
||||
* to use BOOST_PP_EXPAND(). Works on standard conforming compilers, too.
|
||||
*/
|
||||
# define BOOST_PP_TUPLE_ELEM_DELAY(N,I,T) BOOST_PP_EXPAND(BOOST_PP_TUPLE##N##_ELEM##I T)
|
||||
#else
|
||||
# define BOOST_PP_TUPLE_ELEM_DELAY(N,I,T) BOOST_PP_TUPLE##N##_ELEM##I T
|
||||
#endif
|
||||
|
||||
// NOTE: TUPLE_ELEM can be implemented in O(N*N) space and O(N) time instead
|
||||
// of O(N*N*N) space and O(1) time. The current trade-off seems better.
|
||||
|
||||
/* NOTE: TUPLE_ELEM can be implemented in O(N*N) space and O(N) time instead
|
||||
* of O(N*N*N) space and O(1) time. The current trade-off seems better.
|
||||
*/
|
||||
#define BOOST_PP_TUPLE1_ELEM0(A) A
|
||||
|
||||
#define BOOST_PP_TUPLE2_ELEM0(A,B) A
|
||||
@ -211,6 +214,6 @@ See BOOST_PP_LIMIT_TUPLE.
|
||||
#define BOOST_PP_TUPLE16_ELEM15(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P) P
|
||||
#endif
|
||||
|
||||
//! Obsolete. Use BOOST_PP_TUPLE_ELEM().
|
||||
/** Obsolete. Use BOOST_PP_TUPLE_ELEM(). */
|
||||
#define BOOST_PREPROCESSOR_TUPLE_ELEM(N,I,T) BOOST_PP_TUPLE_ELEM(N,I,T)
|
||||
#endif
|
||||
|
@ -1,26 +1,27 @@
|
||||
#ifndef BOOST_PREPROCESSOR_TUPLE_TO_LIST_HPP
|
||||
#define BOOST_PREPROCESSOR_TUPLE_TO_LIST_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/tuple/to_list.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
|
||||
#include <boost/preprocessor/list/adt.hpp>
|
||||
|
||||
//! Converts a tuple to a list.
|
||||
/*!
|
||||
/** Converts a tuple to a list.
|
||||
|
||||
See BOOST_PP_LIST_CONS() for an example.
|
||||
|
||||
See BOOST_PP_LIMIT_TUPLE.
|
||||
|
@ -1,18 +1,19 @@
|
||||
#ifndef BOOST_PREPROCESSOR_WHILE_HPP
|
||||
#define BOOST_PREPROCESSOR_WHILE_HPP
|
||||
|
||||
// Copyright (C) 2001
|
||||
// Housemarque Oy
|
||||
// http://www.housemarque.com
|
||||
//
|
||||
// Permission to copy, use, modify, sell and distribute this software is
|
||||
// granted provided this copyright notice appears in all copies. This
|
||||
// software is provided "as is" without express or implied warranty, and
|
||||
// with no claim as to its suitability for any purpose.
|
||||
/* Copyright (C) 2001
|
||||
* Housemarque Oy
|
||||
* http://www.housemarque.com
|
||||
*
|
||||
* Permission to copy, use, modify, sell and distribute this software is
|
||||
* granted provided this copyright notice appears in all copies. This
|
||||
* software is provided "as is" without express or implied warranty, and
|
||||
* with no claim as to its suitability for any purpose.
|
||||
*
|
||||
* See http://www.boost.org for most recent version.
|
||||
*/
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
/*! \file
|
||||
/** \file
|
||||
|
||||
<a href="../../../../boost/preprocessor/while.hpp">Click here to see the header.</a>
|
||||
*/
|
||||
@ -20,8 +21,8 @@
|
||||
#include <boost/preprocessor/if.hpp>
|
||||
#include <boost/preprocessor/tuple/eat.hpp>
|
||||
|
||||
//! Iterates F(D,X) while C(D,X) is true.
|
||||
/*!
|
||||
/** Iterates F(D,X) while C(D,X) is true.
|
||||
|
||||
<H3>Legend</H3>
|
||||
|
||||
<B>X</B> is the current state of iteration. The state is usually a tuple.
|
||||
|
Reference in New Issue
Block a user