1// Copyright David Abrahams 2005.
2// Distributed under the Boost Software License, Version 1.0.
3// (See accompanying file LICENSE_1_0.txt or copy at
4// http://www.boost.org/LICENSE_1_0.txt)
5
6#include <boost/parameter/name.hpp>
7
8namespace graphs {
9
10 BOOST_PARAMETER_NAME(graph) // Note: no semicolon
11 BOOST_PARAMETER_NAME(visitor)
12 BOOST_PARAMETER_NAME(root_vertex)
13 BOOST_PARAMETER_NAME(index_map)
14 BOOST_PARAMETER_NAME(color_map)
15} // namespace graphs
16
17#include <boost/core/lightweight_test.hpp>
18
19namespace graphs { namespace core {
20
21 template <typename ArgumentPack>
22 void depth_first_search(ArgumentPack const& args)
23 {
24 BOOST_TEST_EQ(false, args[_color_map]);
25 BOOST_TEST_EQ('G', args[_graph]);
26 BOOST_TEST_CSTR_EQ("hello, world", args[_index_map]);
27 BOOST_TEST_EQ(3.5, args[_root_vertex]);
28 BOOST_TEST_EQ(2, args[_visitor]);
29 }
30}} // namespace graphs::core
31
32int main()
33{
34 using namespace graphs;
35
36 core::depth_first_search(args: (
37 _graph = 'G', _visitor = 2, _root_vertex = 3.5
38 , _index_map = "hello, world", _color_map = false
39 ));
40 return boost::report_errors();
41}
42

source code of boost/libs/parameter/test/tutorial.cpp