2
0
mirror of https://github.com/boostorg/lambda.git synced 2026-01-21 04:52:25 +00:00

Compare commits

..

50 Commits

Author SHA1 Message Date
Edward Diener
4c4387a277 Merge branch 'develop' 2015-07-19 00:12:41 -04:00
Edward Diener
0f44d72275 Remove unnecessary header. 2015-05-18 19:55:22 -04:00
Edward Diener
723485bfa7 Merge branch 'develop' of https://github.com/boostorg/lambda into develop 2015-05-18 19:05:23 -04:00
Edward Diener
f85d2f0025 Merge pull request #9 from eldiener/develop
Changes for type_traits Version2
2015-05-18 19:04:38 -04:00
Edward Diener
45c391b380 Merge branch 'develop' of https://github.com/boostorg/lambda into develop 2015-05-18 19:03:04 -04:00
Edward Diener
69482a3b49 Merge pull request #6 from alexhenrie/develop
Correct spelling of "suppress"
2015-05-18 18:46:55 -04:00
Edward Diener
0afac59bc1 Merge pull request #4 from jzmaddock/patch-5
Update operator_return_type_traits.hpp
2015-05-18 18:43:23 -04:00
Edward Diener
5a6ae7f79d Merge pull request #3 from jzmaddock/patch-4
Update return_type_traits.hpp
2015-05-18 18:42:17 -04:00
Edward Diener
9a581dafb7 Added 'void const' specialization to fix problem with clang 2015-05-06 16:23:39 -04:00
Edward Diener
5e574813a2 Simplifed using direct operators rather than mpl constructs. 2015-04-27 03:00:19 -04:00
Edward Diener
11a6698eec Remove ice_xxx.hpp header and change functionality to use mpl. 2015-03-31 03:32:50 -04:00
Edward Diener
5ba2e0aa6a This file needs to include the type_traits headers it actually uses - problem exposed by ongoing type traits rewrite. 2015-03-05 11:02:49 -05:00
Edward Diener
59e1516609 This header should include the type_traits headers it needs and not depend on implicit inclusion which will go away in the current type_traits rewrite. 2015-03-05 11:02:19 -05:00
Alex Henrie
fba5d5e822 Correct spelling of "suppress" 2015-02-07 01:57:05 -07:00
jzmaddock
635d0fb6ce Update operator_return_type_traits.hpp
This file needs to include the type_traits headers it actually uses - problem exposed by ongoing type traits rewrite.
2015-01-21 17:03:07 +00:00
jzmaddock
ba8e62af76 Update return_type_traits.hpp
This header should include the type_traits hedaers it needs and not depend on implicit inclusion which will go away in the current type_traits rewrite.
2015-01-21 17:00:41 +00:00
Noel Belcourt
545b6af540 Merge pull request #1 from jzmaddock/patch-2
Update Jamfile.v2

Thanks John.
2014-11-02 15:44:45 -07:00
Noel Belcourt
ce6b030b06 Merge pull request #2 from danieljames/metadata
Create metadata file.
2014-09-01 20:33:39 -06:00
Daniel James
ecf547cbef Add metadata file. 2014-08-18 15:55:52 +01:00
jzmaddock
aef7c9fe51 Update Jamfile.v2
There can be only one project named boost/doc - and we already have that under doc/
This fixes the PDF doc build.
2014-08-13 18:29:22 +01:00
Daniel James
677be04dd7 Create merge base for git. 2014-06-01 19:21:47 +01:00
Daniel James
7d1d0d4fdd Remove file accidentally recreated by git conversion.
Some old files deleted in the CVS days were accidentally restored, this
appears to be one of them. You can see it wasn't in subversion at:

http://svn.boost.org/svn/boost/trunk/libs/lambda/
2014-06-01 19:20:51 +01:00
Stephen Kelly
7d21ea7cbb Lambda: Remove obsolete GCC version checks.
[SVN r86072]
2013-09-30 16:00:14 +00:00
Stephen Kelly
0d069c2c0c Remove use of obsolete BOOST_NO_TEMPLATED_STREAMS macro.
It was only defined for no-longer-supported-gcc.

[SVN r86062]
2013-09-30 15:56:52 +00:00
Steven Watanabe
25d6c0e3b1 Merge lambda from the trunk.
[SVN r83442]
2013-03-15 18:07:37 +00:00
Marshall Clow
55cd962166 Merge comment typo fixes to release; Fixes #7714
[SVN r82236]
2012-12-28 16:54:24 +00:00
Steven Watanabe
3caa685662 Merge [67640] from the trunk.
[SVN r70065]
2011-03-17 16:29:28 +00:00
Daniel Walker
2c14c3a13b merged changeset 63726 from trunk
[SVN r63907]
2010-07-12 01:36:38 +00:00
Steven Watanabe
0d0f71272e Merge lambda from the trunk
[SVN r63555]
2010-07-03 19:05:15 +00:00
Daniel James
08b3f6336c Merge documentation fixes.
* Use `doc/src/*.css` instead of `doc/html/*.css`.
* Remove wiki and people directories.
* Some documentation fixes.
* Left out `minimal.css` changes and boostbook changes because of clashes.


[SVN r63347]
2010-06-26 12:30:09 +00:00
Troy D. Straszheim
e368877636 rm cmake from the release branch before it goes out broken. Policy dictates that you never commit to release, you commit to trunk and merge to release.
[SVN r56941]
2009-10-17 01:10:45 +00:00
Troy D. Straszheim
22bc52b7c4 Add basic copyright/license to keep cmake out of the inspection report
[SVN r55095]
2009-07-22 21:51:01 +00:00
Steven Watanabe
8a943f6510 Merge [43113], [45097], [53261], [53343], [53648], [53649], and [53651] from the trunk
[SVN r53875]
2009-06-13 21:18:10 +00:00
Steven Watanabe
d69f83d074 Merge [53061] and [53233] from the trunk
[SVN r53266]
2009-05-26 00:59:17 +00:00
Steven Watanabe
7648a7adf1 Merge [51448] from the trunk.
[SVN r51617]
2009-03-05 03:52:26 +00:00
John Maddock
48e6f45d92 Merge PDF build changes from Trunk.
[SVN r51417]
2009-02-23 18:39:32 +00:00
Steven Watanabe
927a04351e Merge [50516] and [50999] from the trunk. These are the fixes for #781 and #2446 respectively
[SVN r51368]
2009-02-21 18:10:20 +00:00
Troy D. Straszheim
b5b41af8f4 merge of cmake build files from trunk per beman
[SVN r50756]
2009-01-24 18:57:20 +00:00
Marshall Clow
1f6ca994e6 Merged revisions 50413 via svnmerge from
https://svn.boost.org/svn/boost/trunk

........
  r50413 | marshall | 2008-12-30 10:27:43 -0800 (Tue, 30 Dec 2008) | 1 line
  
  Typo: fixes bug #2583
........


[SVN r50602]
2009-01-15 03:46:14 +00:00
Beman Dawes
4a254c4161 With his kind permission, change Jaakko "Järvi" to "Jarvi"
[SVN r46809]
2008-06-28 13:57:20 +00:00
Beman Dawes
e67976c740 Full merge from trunk at revision 41356 of entire boost-root tree.
[SVN r41370]
2007-11-25 18:38:02 +00:00
Beman Dawes
a0cd34c938 Full merge from trunk at revision 41356 of entire boost-root tree.
[SVN r41369]
2007-11-25 18:07:19 +00:00
Beman Dawes
672c8e10d4 Starting point for releases
[SVN r39706]
2007-10-05 14:25:06 +00:00
nobody
87dd3997e7 This commit was manufactured by cvs2svn to create tag
'Version_1_34_1'.

[SVN r38286]
2007-07-24 19:28:14 +00:00
Daniel James
b112fb9254 Fix a link.
[SVN r36651]
2007-01-07 22:42:25 +00:00
Jaakko Järvi
13ec0c5bbc fixed omission
[SVN r36201]
2006-11-29 19:28:48 +00:00
Jaakko Järvi
29ab5a2814 fixed bug 1444052
[SVN r36200]
2006-11-29 19:21:46 +00:00
Beman Dawes
a0cfe43611 Merged copyright and license addition
[SVN r35907]
2006-11-07 19:27:00 +00:00
Rene Rivera
fe858cf734 Remove obsolete Boost.Build v1 files.
[SVN r35880]
2006-11-06 17:10:46 +00:00
nobody
b3120233dc This commit was manufactured by cvs2svn to create branch 'RC_1_34_0'.
[SVN r33417]
2006-03-21 02:26:31 +00:00
11 changed files with 36 additions and 84 deletions

View File

@@ -1,4 +1,4 @@
project boost/doc ;
project lambda/doc ;
import boostbook : boostbook ;
# Are these really the correct images??

0
doc/detail/lambda_doc.xml Normal file → Executable file
View File

View File

@@ -22,13 +22,6 @@
# define BOOST_REF_TO_FUNC_CONFLICTS_WITH_REF_TO_T
# define BOOST_LAMBDA_INCORRECT_BIND_OVERLOADING
# endif
# if (__GNUC__ == 2 && __GNUC_MINOR__ <= 97)
# define BOOST_NO_TEMPLATED_STREAMS
# define BOOST_LAMBDA_INCORRECT_BIND_OVERLOADING
# endif
# if (__GNUC__ == 2 && __GNUC_MINOR__ <= 95)
# define BOOST_LAMBDA_FAILS_IN_TEMPLATE_KEYWORD_AFTER_SCOPE_OPER
# endif
# endif // __GNUC__

View File

@@ -282,6 +282,11 @@ struct const_copy_argument<void> {
typedef void type;
};
template<>
struct const_copy_argument<void const> {
typedef void type;
};
// Does the same as const_copy_argument, but passes references through as such
template<class T>

View File

@@ -12,7 +12,13 @@
#define BOOST_LAMBDA_OPERATOR_RETURN_TYPE_TRAITS_HPP
#include "boost/lambda/detail/is_instance_of.hpp"
#include "boost/type_traits/same_traits.hpp"
#include "boost/type_traits/is_same.hpp"
#include "boost/type_traits/is_pointer.hpp"
#include "boost/type_traits/is_float.hpp"
#include "boost/type_traits/is_convertible.hpp"
#include "boost/type_traits/remove_pointer.hpp"
#include "boost/type_traits/remove_const.hpp"
#include "boost/type_traits/remove_reference.hpp"
#include "boost/indirect_reference.hpp"
#include "boost/detail/container_fwd.hpp"
@@ -536,36 +542,6 @@ struct return_type_2<bitwise_action<Act>, A, B>
namespace detail {
#ifdef BOOST_NO_TEMPLATED_STREAMS
template<class A, class B>
struct leftshift_type {
typedef typename detail::IF<
boost::is_convertible<
typename boost::remove_reference<A>::type*,
std::ostream*
>::value,
std::ostream&,
typename detail::remove_reference_and_cv<A>::type
>::RET type;
};
template<class A, class B>
struct rightshift_type {
typedef typename detail::IF<
boost::is_convertible<
typename boost::remove_reference<A>::type*,
std::istream*
>::value,
std::istream&,
typename detail::remove_reference_and_cv<A>::type
>::RET type;
};
#else
template <class T> struct get_ostream_type {
typedef std::basic_ostream<typename T::char_type,
@@ -602,7 +578,6 @@ public:
};
#endif
} // end detail

View File

@@ -161,23 +161,6 @@ namespace detail {
// Note that the overloading is const vs. non-const first argument
#ifdef BOOST_NO_TEMPLATED_STREAMS
template<class T> struct convert_ostream_to_ref_others_to_c_plain_by_default {
typedef typename detail::IF<
boost::is_convertible<T*, std::ostream*>::value,
T&,
typename const_copy_argument <T>::type
>::RET type;
};
template<class T> struct convert_istream_to_ref_others_to_c_plain_by_default {
typedef typename detail::IF<
boost::is_convertible<T*, std::istream*>::value,
T&,
typename const_copy_argument <T>::type
>::RET type;
};
#else
template<class T> struct convert_ostream_to_ref_others_to_c_plain_by_default {
typedef typename detail::IF<
@@ -198,7 +181,6 @@ template<class T> struct convert_istream_to_ref_others_to_c_plain_by_default {
typename const_copy_argument <T>::type
>::RET type;
};
#endif
} // detail

View File

@@ -19,10 +19,6 @@
namespace boost {
namespace lambda {
using ::boost::type_traits::ice_and;
using ::boost::type_traits::ice_or;
using ::boost::type_traits::ice_not;
// Much of the type deduction code for standard arithmetic types
// from Gary Powell
@@ -77,8 +73,7 @@ template <class Act, class A> struct return_type_1_prot {
public:
typedef typename
detail::IF<
// is_protectable<Act>::value && is_lambda_functor<A>::value,
ice_and<is_protectable<Act>::value, is_lambda_functor<A>::value>::value,
is_protectable<Act>::value && is_lambda_functor<A>::value,
lambda_functor<
lambda_functor_base<
Act,
@@ -112,9 +107,7 @@ namespace detail {
// add const to rvalues, so that all rvalues are stored as const in
// the args tuple
typedef typename detail::IF_type<
// boost::is_reference<T>::value && !boost::is_const<non_ref_T>::value,
ice_and<boost::is_reference<T>::value,
ice_not<boost::is_const<non_ref_T>::value>::value>::value,
boost::is_reference<T>::value && !boost::is_const<non_ref_T>::value,
detail::identity_mapping<T>,
const_copy_argument<non_ref_T> // handles funtion and array
>::type type; // types correctly
@@ -148,11 +141,8 @@ template <class Act, class A, class B> struct return_type_2_prot {
typedef typename
detail::IF<
// is_protectable<Act>::value &&
// (is_lambda_functor<A>::value || is_lambda_functor<B>::value),
ice_and<is_protectable<Act>::value,
ice_or<is_lambda_functor<A>::value,
is_lambda_functor<B>::value>::value>::value,
is_protectable<Act>::value &&
(is_lambda_functor<A>::value || is_lambda_functor<B>::value),
lambda_functor<
lambda_functor_base<
Act,
@@ -187,11 +177,8 @@ struct return_type_2_comma
typedef typename
detail::IF<
// is_protectable<other_action<comma_action> >::value && // it is protectable
// (is_lambda_functor<A>::value || is_lambda_functor<B>::value),
ice_and<is_protectable<other_action<comma_action> >::value, // it is protectable
ice_or<is_lambda_functor<A>::value,
is_lambda_functor<B>::value>::value>::value,
is_protectable<other_action<comma_action> >::value && // it is protectable
(is_lambda_functor<A>::value || is_lambda_functor<B>::value),
lambda_functor<
lambda_functor_base<
other_action<comma_action>,

View File

@@ -10,8 +10,8 @@
// ------------------------------------------------------------
#ifndef BOOST_LAMBDA_SUPRESS_UNUSED_HPP
#define BOOST_LAMBDA_SUPRESS_UNUSED_HPP
#ifndef BOOST_LAMBDA_SUPPRESS_UNUSED_HPP
#define BOOST_LAMBDA_SUPPRESS_UNUSED_HPP
namespace boost {
namespace lambda {

View File

@@ -24,11 +24,6 @@
#include "boost/lambda/detail/operators.hpp"
#ifndef BOOST_LAMBDA_FAILS_IN_TEMPLATE_KEYWORD_AFTER_SCOPE_OPER
// sorry, member ptr does not work with gcc2.95
#include "boost/lambda/detail/member_ptr.hpp"
#endif
#endif

15
meta/libraries.json Normal file
View File

@@ -0,0 +1,15 @@
{
"key": "lambda",
"name": "Lambda",
"authors": [
"Jaakko Järvi",
"Gary Powell"
],
"description": "Define small unnamed function objects at the actual call site, and more.",
"category": [
"Function-objects"
],
"maintainers": [
"Jaakko Jarvi <jarvi -at- cs.tamu.edu>"
]
}

0
test/Makefile Normal file → Executable file
View File