]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/parameter/test/tutorial.cpp
import new upstream nautilus stable release 14.2.8
[ceph.git] / ceph / src / boost / libs / parameter / test / tutorial.cpp
CommitLineData
92f5a8d4
TL
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)
7c673cae 5
92f5a8d4 6#include <boost/parameter/name.hpp>
7c673cae 7
92f5a8d4 8namespace graphs {
7c673cae 9
92f5a8d4
TL
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
7c673cae
FG
31
32int main()
33{
92f5a8d4 34 using namespace graphs;
7c673cae 35
92f5a8d4
TL
36 core::depth_first_search((
37 _graph = 'G', _visitor = 2, _root_vertex = 3.5
38 , _index_map = "hello, world", _color_map = false
39 ));
40 return boost::report_errors();
7c673cae 41}