blob: 009060383ce4af23b61e4e170f31f99d2ef7ef3c [file] [log] [blame]
Jeff Thompsonef2d5a42013-08-22 19:09:24 -07001// (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
Jeff Thompson3d613fd2013-10-15 15:39:04 -070015#ifndef NDNBOOST_RT_CLA_VALUE_HANDLER_HPP_062604GER
16#define NDNBOOST_RT_CLA_VALUE_HANDLER_HPP_062604GER
Jeff Thompsonef2d5a42013-08-22 19:09:24 -070017
18// Boost.Runtime.Parameter
19#include <ndnboost/test/utils/runtime/config.hpp>
20
21#include <ndnboost/test/utils/runtime/cla/fwd.hpp>
22
23namespace ndnboost {
24
Jeff Thompson3d613fd2013-10-15 15:39:04 -070025namespace NDNBOOST_RT_PARAM_NAMESPACE {
Jeff Thompsonef2d5a42013-08-22 19:09:24 -070026
27namespace cla {
28
29namespace rt_cla_detail {
30
31// ************************************************************************** //
32// ************** runtime::cla::assigner ************** //
33// ************************************************************************** //
34
35template<typename T>
36class assigner {
37public:
38 // Constructor
39 explicit assigner( T& loc ) : m_target( loc ) {}
40
41 // value handler implementation
42 void operator()( parameter const&, T& t ) { m_target = t; }
43
44private:
45 // Data members
46 T& m_target;
47};
48
49} // namespace rt_cla_detail
50
51} // namespace cla
52
Jeff Thompson3d613fd2013-10-15 15:39:04 -070053} // namespace NDNBOOST_RT_PARAM_NAMESPACE
Jeff Thompsonef2d5a42013-08-22 19:09:24 -070054
55} // namespace ndnboost
56
Jeff Thompson3d613fd2013-10-15 15:39:04 -070057#endif // NDNBOOST_RT_CLA_VALUE_HANDLER_HPP_062604GER