]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/libs/msm/include/boost/msm/mpl_graph/search_colors.hpp
bump version to 12.2.2-pve1
[ceph.git] / ceph / src / boost / libs / msm / include / boost / msm / mpl_graph / search_colors.hpp
CommitLineData
7c673cae
FG
1// Copyright 2008-2010 Gordon Woodhull
2// Distributed under the Boost Software License, Version 1.0.
3// (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
4
5#ifndef BOOST_MSM_MPL_GRAPH_SEARCH_COLORS_HPP_INCLUDED
6#define BOOST_MSM_MPL_GRAPH_SEARCH_COLORS_HPP_INCLUDED
7
8namespace boost {
9namespace msm {
10namespace mpl_graph {
11
12namespace search_colors {
13 struct White {};
14 struct Gray {};
15 struct Black {};
16}
17
18struct create_search_color_map : mpl::map<> {};
19
20struct search_color_map_ops {
21 template<typename Node, typename Color, typename State>
22 struct set_color :
23 mpl::insert<State, mpl::pair<Node, Color> >
24 {};
25 template<typename Node, typename State>
26 struct get_color :
27 mpl::if_<mpl::has_key<State, Node>,
28 mpl::at<State, Node>,
29 search_colors::White>
30 {};
31};
32
33
34} // namespace mpl_graph
35} // namespace msm
36} // namespace boost
37
38
39#endif // BOOST_MSM_MPL_GRAPH_SEARCH_COLORS_HPP_INCLUDED