|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r66703 - in sandbox/statistics/support/boost/assign/v2/put/modifier: . ext
From: erwann.rogard_at_[hidden]
Date: 2010-11-23 10:08:44
Author: e_r
Date: 2010-11-23 10:08:40 EST (Tue, 23 Nov 2010)
New Revision: 66703
URL: http://svn.boost.org/trac/boost/changeset/66703
Log:
boost/assign/v2/put/modifier/ext adding files
Added:
sandbox/statistics/support/boost/assign/v2/put/modifier/ext/incr_lookup.hpp
- copied unchanged from r66701, /sandbox/statistics/support/boost/assign/v2/put/modifier/incr_lookup.hpp
sandbox/statistics/support/boost/assign/v2/put/modifier/ext/repeat.hpp
- copied unchanged from r66701, /sandbox/statistics/support/boost/assign/v2/put/modifier/repeat.hpp
Removed:
sandbox/statistics/support/boost/assign/v2/put/modifier/incr_lookup.hpp
sandbox/statistics/support/boost/assign/v2/put/modifier/repeat.hpp
Deleted: sandbox/statistics/support/boost/assign/v2/put/modifier/incr_lookup.hpp
==============================================================================
--- sandbox/statistics/support/boost/assign/v2/put/modifier/incr_lookup.hpp 2010-11-23 10:08:40 EST (Tue, 23 Nov 2010)
+++ (empty file)
@@ -1,119 +0,0 @@
-//////////////////////////////////////////////////////////////////////////////
-// Boost.Assign v2 //
-// //
-// Copyright (C) 2003-2004 Thorsten Ottosen //
-// Copyright (C) 2010 Erwann Rogard //
-// Use, modification and distribution are subject to the //
-// Boost Software License, Version 1.0. (See accompanying file //
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) //
-//////////////////////////////////////////////////////////////////////////////
-#ifndef BOOST_ASSIGN_V2_PUT_MODIFIER_INCR_LOOKUP_ER_2010_HPP
-#define BOOST_ASSIGN_V2_PUT_MODIFIER_INCR_LOOKUP_ER_2010_HPP
-#include <boost/mpl/apply.hpp>
-#include <boost/type_traits/is_base_of.hpp>
-#include <boost/utility/enable_if.hpp>
-#include <boost/accumulators/framework/accumulator_base.hpp>
-#include <boost/assign/v2/put/modifier/def.hpp>
-#include <boost/assign/v2/detail/type_traits/value.hpp>
-#include <boost/assign/v2/detail/functor/identity.hpp>
-#include <boost/assign/v2/detail/pp/forward.hpp>
-#include <boost/assign/v2/put/generic/new_fun.hpp>
-#include <boost/assign/v2/put/generic/new_modifier.hpp>
-#include <boost/assign/v2/put/generic/result_of_modulo.hpp>
-#include <boost/assign/v2/put/generic/base.hpp>
-
-namespace boost{
-namespace assign{
-namespace v2{
-namespace modifier_tag{ struct incr_lookup{}; }
-namespace put_aux{
-
- template<>
- struct modifier<v2::modifier_tag::incr_lookup>
- {
- typedef std::size_t size_type;
- modifier():n( 0 ){}
- modifier(size_type const& m):n( m ){};
-
- template<typename V,typename T>
- void impl(V& v, BOOST_ASSIGN_V2_forward_param(T, t) )const{
- v[ BOOST_ASSIGN_V2_forward_arg(T, t) ] += this->n;
- }
-
- private:
- size_type n;
- };
-
- struct param_incr_lookup
- {
-
- typedef std::size_t size_type;
-
- param_incr_lookup() : n( 1 ){}
- param_incr_lookup(std::size_t m) : n( m ){}
-
- param_incr_lookup
- operator=(size_type const& m)const{
- typedef param_incr_lookup result_;
- return result_( m );
- }
-
- size_type const& pop()const{ return this->n; }
-
- private:
-
- size_type n;
- };
-
-}// put_aux
-namespace result_of_modulo{
-
- template<typename T>
- struct incr_lookup
- {
- typedef result_of_modulo::new_fun_modifier<T> meta_;
- typedef functor_aux::identity fun_;
- typedef v2::modifier_tag::incr_lookup tag_;
- typedef typename boost::mpl::apply2<
- meta_,
- fun_,
- tag_
- >::type type;
-
- typedef put_aux::modifier<tag_> new_modifier_;
-
- typedef put_aux::param_incr_lookup param_;
- static type call(const T& t, param_ const& p)
- {
- return type( t.unwrap(), _identity, param.pop() );
- }
-
- };
-
-}// result_of_modulo
-namespace put_aux{
-
- template<typename T>
- typename boost::lazy_enable_if<
- boost::is_base_of<put_aux::put_base, T>,
- result_of_modulo::incr_lookup<T>
- >::type
- operator%(
- T const& t,
- put_aux::param_incr_lookup const& kwd
- )
- {
- typedef result_of_modulo::incr_lookup<T> caller_;
- return caller_::call( t, kwd );
- }
-
-}// put_aux
-namespace{
- put_aux::param_incr_lookup const _incr_lookup
- = put_aux::param_incr_lookup();
-}
-}// v2
-}// assign
-}// boost
-
-#endif
Deleted: sandbox/statistics/support/boost/assign/v2/put/modifier/repeat.hpp
==============================================================================
--- sandbox/statistics/support/boost/assign/v2/put/modifier/repeat.hpp 2010-11-23 10:08:40 EST (Tue, 23 Nov 2010)
+++ (empty file)
@@ -1,155 +0,0 @@
-//////////////////////////////////////////////////////////////////////////////
-// Boost.Assign v2 //
-// //
-// Copyright (C) 2003-2004 Thorsten Ottosen //
-// Copyright (C) 2010 Erwann Rogard //
-// Use, modification and distribution are subject to the //
-// Boost Software License, Version 1.0. (See accompanying file //
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) //
-//////////////////////////////////////////////////////////////////////////////
-#ifndef BOOST_ASSIGN_V2_PUT_MODIFIER_REPEAT_ER_2010_HPP
-#define BOOST_ASSIGN_V2_PUT_MODIFIER_REPEAT_ER_2010_HPP
-#include <boost/type_traits/is_base_of.hpp>
-#include <boost/utility/enable_if.hpp>
-#include <boost/accumulators/framework/accumulator_base.hpp>
-#include <boost/assign/v2/put/modifier/def.hpp>
-#include <boost/assign/v2/put/generic/base.hpp>
-#include <boost/assign/v2/put/generic/new_modifier.hpp>
-//#include <boost/assign/v2/ref/wrapper/copy.hpp>
-#include <boost/assign/v2/detail/pp/forward.hpp>
-
-namespace boost{
-namespace assign{
-namespace v2{
-namespace modifier_tag{
- template<typename Tag> struct repeat{};
-}// modifier_tag
-namespace put_aux{
-
- template<typename Tag>
- class modifier<v2::modifier_tag::repeat<Tag> >
- /*: v2::ref::wrapper<
- v2::ref::assign_tag::copy,
- std::size_t const
- >*/
- {
- typedef modifier<Tag> inner_;
- /*typedef v2::ref::wrapper<
- v2::ref::assign_tag::copy,
- std::size_t const
- > super_t;*/
-
- public:
-
- typedef std::size_t size_type;
-
- modifier() : n( 1 ){}
- // explicit modifier( size_type const& n ):super_t( n ){};
- explicit modifier( size_type const& n_ ) : n( n ){};
-
- template<typename V, typename T>
- void impl(V& v, BOOST_ASSIGN_V2_forward_param(T, t) )const
- {
-
- size_type m = this->n; //static_cast<super_t const&>(*this).unwrap();
- while(m--) this->inner.impl(
- v,
- BOOST_ASSIGN_V2_forward_arg(T, t)
- );
- }
-
- size_type const& size()const{ return this->n; }
-
- protected:
- inner_ inner;
- size_type n;
- };
-
- class param_repeat
- /*: v2::ref::wrapper<
- v2::ref::assign_tag::copy,
- std::size_t const
- >*/
- {
-
- /*typedef v2::ref::wrapper<
- v2::ref::assign_tag::copy,
- std::size_t const
- > super_t;*/
-
- public:
-
- typedef std::size_t size_type;
-
- param_repeat(){}
- /*param_repeat( size_type const& n) : super_t( n ){}*/
- param_repeat( size_type const& n_) : n( n_ ){}
-
- param_repeat operator=( size_type const& n_)const
- {
- param_repeat result( n_ );
- return result;
- }
-
- /*
- size_type const& unwrap()const
- {
- return static_cast<super_t const&>(*this).unwrap();
- }
- */
-
- size_type const& pop()const{ return this->n; }
-
- protected:
- size_type n;
-
- };
-
-}// put_aux
-namespace result_of_modulo{
-
- template<typename T>
- struct repeat
- {
- typedef typename T::modifier_tag old_tag_;
- typedef v2::modifier_tag::repeat<old_tag_> new_tag_;
- typedef put_aux::modifier<new_tag_> modifier_;
- typedef typename boost::mpl::apply1<
- result_of_modulo::new_modifier<T>,
- new_tag_
- >::type type;
-
- typedef put_aux::param_repeat param_;
- static type call(const T& t, param_ const& p)
- {
- return type( t.unwrap(), t.fun, p.pop() );
- }
-
- };
-
-}// result_of_modulo
-namespace put_aux{
-
- template<typename T>
- typename boost::lazy_enable_if<
- boost::is_base_of<put_aux::put_base, T>,
- result_of_modulo::repeat<T>
- >::type
- operator%(
- T const& t,
- put_aux::param_repeat const& h
- )
- {
- typedef result_of_modulo::repeat<T> caller_;
- return caller_::call( t, h );
- }
-
-}// put_aux
-namespace{
- put_aux::param_repeat const _repeat = put_aux::param_repeat();
-}
-}// v2
-}// assign
-}// boost
-
-#endif
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk