1 // (C) Copyright Gennadiy Rozental 2005-2008. 2 // Use, modification, and distribution are subject to the 3 // Boost Software License, Version 1.0. (See accompanying file 4 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 6 // See http://www.boost.org/libs/test for the library home page. 7 // 8 // File : $RCSfile$ 9 // 10 // Version : $Revision: 49312 $ 11 // 12 // Description : specific value handlers 13 // *************************************************************************** 14 15 #ifndef BOOST_RT_CLA_VALUE_HANDLER_HPP_062604GER 16 #define BOOST_RT_CLA_VALUE_HANDLER_HPP_062604GER 17 18 // Boost.Runtime.Parameter 19 #include <boost/test/utils/runtime/config.hpp> 20 21 #include <boost/test/utils/runtime/cla/fwd.hpp> 22 23 namespace boost { 24 25 namespace BOOST_RT_PARAM_NAMESPACE { 26 27 namespace cla { 28 29 namespace rt_cla_detail { 30 31 // ************************************************************************** // 32 // ************** runtime::cla::assigner ************** // 33 // ************************************************************************** // 34 35 template<typename T> 36 class assigner { 37 public: 38 // Constructor assigner(T & loc)39 explicit assigner( T& loc ) : m_target( loc ) {} 40 41 // value handler implementation operator ()(parameter const &,T & t)42 void operator()( parameter const&, T& t ) { m_target = t; } 43 44 private: 45 // Data members 46 T& m_target; 47 }; 48 49 } // namespace rt_cla_detail 50 51 } // namespace cla 52 53 } // namespace BOOST_RT_PARAM_NAMESPACE 54 55 } // namespace boost 56 57 #endif // BOOST_RT_CLA_VALUE_HANDLER_HPP_062604GER 58