mirror of
https://github.com/boostorg/mpl.git
synced 2026-08-09 23:21:29 +02:00
Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
658119b8b0 |
@@ -0,0 +1,28 @@
|
||||
#
|
||||
# Copyright Troy D. Straszheim
|
||||
#
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# See http://www.boost.org/LICENSE_1_0.txt
|
||||
#
|
||||
#----------------------------------------------------------------------------
|
||||
# This file was automatically generated from the original CMakeLists.txt file
|
||||
# Add a variable to hold the headers for the library
|
||||
set (lib_headers
|
||||
mpl
|
||||
)
|
||||
|
||||
# Add a library target to the build system
|
||||
boost_library_project(
|
||||
mpl
|
||||
# SRCDIRS
|
||||
TESTDIRS test
|
||||
HEADERS ${lib_headers}
|
||||
# DOCDIRS
|
||||
DESCRIPTION "A general-purpose, high-level C++ template metaprogramming framework of compile-time algorithms, sequences and metafunctions. It provides a conceptual foundation and an extensive set of powerful and coherent tools that make doing explict metaprogramming in C++ as easy and enjoyable as possible within the current language."
|
||||
MODULARIZED
|
||||
AUTHORS "Aleksey Gurtovoy <agurtovoy -at- meta-comm.com>"
|
||||
"David Abrahams <dave -at- boostpro.com>"
|
||||
# MAINTAINERS
|
||||
)
|
||||
|
||||
|
||||
@@ -6,10 +6,11 @@
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
//
|
||||
|
||||
// *Preprocessed* version of the main "template_arity.hpp" header
|
||||
// Preprocessed version of "boost/mpl/aux_/template_arity.hpp" header
|
||||
// -- DO NOT modify by hand!
|
||||
|
||||
namespace boost { namespace mpl { namespace aux {
|
||||
|
||||
template< int N > struct arity_tag
|
||||
{
|
||||
typedef char (&type)[N + 1];
|
||||
@@ -22,6 +23,7 @@ struct max_arity
|
||||
{
|
||||
BOOST_STATIC_CONSTANT(int, value =
|
||||
( C6 > 0 ? C6 : ( C5 > 0 ? C5 : ( C4 > 0 ? C4 : ( C3 > 0 ? C3 : ( C2 > 0 ? C2 : ( C1 > 0 ? C1 : -1 ) ) ) ) ) )
|
||||
|
||||
);
|
||||
};
|
||||
|
||||
@@ -81,7 +83,7 @@ template< typename F, int N >
|
||||
struct template_arity_impl
|
||||
{
|
||||
BOOST_STATIC_CONSTANT(int, value =
|
||||
sizeof(::boost::mpl::aux::arity_helper(type_wrapper<F>(), arity_tag<N>())) - 1
|
||||
sizeof(arity_helper(type_wrapper<F>(), arity_tag<N>())) - 1
|
||||
);
|
||||
};
|
||||
|
||||
@@ -90,7 +92,9 @@ struct template_arity
|
||||
{
|
||||
BOOST_STATIC_CONSTANT(int, value = (
|
||||
max_arity< template_arity_impl< F,1 >::value, template_arity_impl< F,2 >::value, template_arity_impl< F,3 >::value, template_arity_impl< F,4 >::value, template_arity_impl< F,5 >::value, template_arity_impl< F,6 >::value >::value
|
||||
|
||||
));
|
||||
|
||||
typedef mpl::int_<value> type;
|
||||
};
|
||||
|
||||
|
||||
@@ -98,7 +98,7 @@ template< typename F, BOOST_MPL_AUX_NTTP_DECL(int, N) >
|
||||
struct template_arity_impl
|
||||
{
|
||||
BOOST_STATIC_CONSTANT(int, value =
|
||||
sizeof(::boost::mpl::aux::arity_helper(type_wrapper<F>(),arity_tag<N>())) - 1
|
||||
sizeof(arity_helper(type_wrapper<F>(),arity_tag<N>())) - 1
|
||||
);
|
||||
};
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#ifndef BOOST_MPL_ZIP_VIEW_HPP_INCLUDED
|
||||
#define BOOST_MPL_ZIP_VIEW_HPP_INCLUDED
|
||||
|
||||
// Copyright Aleksey Gurtovoy 2000-2010
|
||||
// Copyright Aleksey Gurtovoy 2000-2002
|
||||
// Copyright David Abrahams 2000-2002
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
@@ -53,7 +53,6 @@ struct zip_view
|
||||
|
||||
public:
|
||||
typedef nested_begin_end_tag tag;
|
||||
typedef zip_view type;
|
||||
typedef zip_iterator<first_ones_> begin;
|
||||
typedef zip_iterator<last_ones_> end;
|
||||
};
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
boost_module(mpl DEPENDS preprocessor config detail)
|
||||
@@ -0,0 +1,97 @@
|
||||
#
|
||||
# Copyright Troy D. Straszheim
|
||||
#
|
||||
# Distributed under the Boost Software License, Version 1.0.
|
||||
# See http://www.boost.org/LICENSE_1_0.txt
|
||||
#
|
||||
boost_additional_test_dependencies(mpl BOOST_DEPENDS test bind)
|
||||
|
||||
boost_test_compile(largest_int aux_/largest_int.cpp)
|
||||
boost_test_compile(msvc_is_class aux_/msvc_is_class.cpp)
|
||||
boost_test_compile(template_arity aux_/template_arity.cpp)
|
||||
|
||||
boost_test_compile(advance)
|
||||
boost_test_compile(always)
|
||||
boost_test_compile(apply)
|
||||
boost_test_compile(apply_wrap)
|
||||
boost_test_compile(arithmetic)
|
||||
boost_test_compile(as_sequence)
|
||||
boost_test_compile(assert)
|
||||
boost_test_compile(at)
|
||||
boost_test_compile(back)
|
||||
boost_test_compile(bind)
|
||||
boost_test_compile(bitwise)
|
||||
boost_test_run(bool)
|
||||
boost_test_compile(comparison)
|
||||
boost_test_compile(contains)
|
||||
boost_test_compile(copy)
|
||||
boost_test_compile(copy_if)
|
||||
boost_test_compile(count)
|
||||
boost_test_compile(count_if)
|
||||
boost_test_compile(deque)
|
||||
boost_test_compile(distance)
|
||||
boost_test_compile(empty)
|
||||
boost_test_compile(equal)
|
||||
boost_test_compile(erase)
|
||||
boost_test_compile(erase_range)
|
||||
boost_test_compile(eval_if)
|
||||
boost_test_compile(filter_view)
|
||||
boost_test_compile(find)
|
||||
boost_test_compile(find_if)
|
||||
boost_test_compile(fold)
|
||||
boost_test_run(for_each)
|
||||
boost_test_compile(front)
|
||||
boost_test_compile(has_xxx)
|
||||
boost_test_compile(identity)
|
||||
boost_test_compile(if)
|
||||
boost_test_compile(index_of)
|
||||
boost_test_compile(inherit)
|
||||
boost_test_compile(insert)
|
||||
boost_test_compile(insert_range)
|
||||
boost_test_run(int)
|
||||
boost_test_run(integral_c)
|
||||
boost_test_compile(is_placeholder)
|
||||
boost_test_compile(is_sequence)
|
||||
boost_test_compile(iterator_tags)
|
||||
boost_test_compile(joint_view)
|
||||
boost_test_compile(lambda)
|
||||
boost_test_compile(lambda_args)
|
||||
boost_test_compile(list)
|
||||
boost_test_compile(list_c)
|
||||
boost_test_compile(logical)
|
||||
boost_test_compile(lower_bound)
|
||||
boost_test_compile(map)
|
||||
boost_test_compile(max_element)
|
||||
boost_test_compile(min_max)
|
||||
boost_test_compile(multiset)
|
||||
boost_test_compile(next)
|
||||
boost_test_compile(no_has_xxx)
|
||||
boost_test_compile(numeric_ops)
|
||||
boost_test_compile(pair_view)
|
||||
boost_test_compile(partition)
|
||||
boost_test_compile(pop_front)
|
||||
boost_test_compile(push_front)
|
||||
boost_test_compile(quote)
|
||||
boost_test_compile(range_c)
|
||||
boost_test_compile(remove)
|
||||
boost_test_compile(remove_if)
|
||||
boost_test_compile(replace)
|
||||
boost_test_compile(replace_if)
|
||||
boost_test_compile(reverse)
|
||||
boost_test_compile(same_as)
|
||||
boost_test_compile(set)
|
||||
boost_test_compile(set_c)
|
||||
boost_test_compile(single_view)
|
||||
boost_test_compile(size)
|
||||
boost_test_run(size_t)
|
||||
boost_test_compile(sizeof)
|
||||
boost_test_compile(sort)
|
||||
boost_test_compile(stable_partition)
|
||||
boost_test_compile(transform)
|
||||
boost_test_compile(transform_view)
|
||||
boost_test_compile(unique)
|
||||
boost_test_compile(unpack_args)
|
||||
boost_test_compile(upper_bound)
|
||||
boost_test_compile(vector)
|
||||
boost_test_compile(vector_c)
|
||||
boost_test_compile(zip_view)
|
||||
+1
-5
@@ -1,5 +1,5 @@
|
||||
|
||||
// Copyright Aleksey Gurtovoy 2002-2010
|
||||
// Copyright Aleksey Gurtovoy 2002-2004
|
||||
//
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
@@ -25,8 +25,6 @@
|
||||
|
||||
#include <boost/mpl/aux_/test.hpp>
|
||||
|
||||
#include <boost/type_traits/is_same.hpp>
|
||||
|
||||
|
||||
MPL_TEST_CASE()
|
||||
{
|
||||
@@ -40,6 +38,4 @@ MPL_TEST_CASE()
|
||||
, filter_view< range_c<int,10,30>, is_even<_> >
|
||||
, equal_to<_,_>
|
||||
> ));
|
||||
|
||||
MPL_ASSERT(( boost::is_same< zip_view<vector<> >, zip_view<vector<> >::type > ));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user