Vcsn  2.2
Be Rational
queue.hh
Go to the documentation of this file.
1 #pragma once
2 
3 #include <queue>
4 
5 #include <boost/range/algorithm/find.hpp>
6 
7 namespace vcsn
8 {
9  namespace detail
10  {
12  template <typename Range>
13  std::queue<typename Range::value_type>
14  make_queue(const Range& range)
15  {
16  auto res = std::queue<typename Range::value_type>{};
17  for (auto s: range)
18  res.emplace(s);
19  return res;
20  }
21  }
22 
24  template <typename T, typename Container>
25  ATTRIBUTE_PURE
26  bool
27  has(const std::queue<T, Container>& s, const T& e)
28  {
29  return boost::find(s, e) != std::end(s);
30  }
31 }
Definition: a-star.hh:8
std::queue< typename Range::value_type > make_queue(const Range &range)
The content of cont as a queue.
Definition: queue.hh:14
ATTRIBUTE_PURE bool has(const boost::container::flat_set< Key, Compare, Allocator > &s, const Key &e)
Whether e is member of s.
Definition: setalpha.hh:25