/Src/Dependencies/Boost/boost/fusion/mpl/detail/clear.hpp

http://hadesmem.googlecode.com/ · C++ Header · 46 lines · 31 code · 9 blank · 6 comment · 0 complexity · 826aff6c61b79075ed22c69236c7e7a9 MD5 · raw file

  1. /*=============================================================================
  2. Copyright (c) 2001-2006 Joel de Guzman
  3. Distributed under the Boost Software License, Version 1.0. (See accompanying
  4. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  5. ==============================================================================*/
  6. #if !defined(FUSION_CLEAR_10022005_1442)
  7. #define FUSION_CLEAR_10022005_1442
  8. #include <boost/fusion/container/vector/vector_fwd.hpp>
  9. #include <boost/fusion/container/list/list_fwd.hpp>
  10. #include <boost/fusion/container/map/map_fwd.hpp>
  11. #include <boost/fusion/container/set/set_fwd.hpp>
  12. #include <boost/fusion/container/deque/deque_fwd.hpp>
  13. namespace boost { namespace fusion
  14. {
  15. struct cons_tag;
  16. struct map_tag;
  17. struct set_tag;
  18. struct vector_tag;
  19. struct deque_tag;
  20. namespace detail
  21. {
  22. template <typename Tag>
  23. struct clear;
  24. template <>
  25. struct clear<cons_tag> : mpl::identity<list<> > {};
  26. template <>
  27. struct clear<map_tag> : mpl::identity<map<> > {};
  28. template <>
  29. struct clear<set_tag> : mpl::identity<set<> > {};
  30. template <>
  31. struct clear<vector_tag> : mpl::identity<vector<> > {};
  32. template <>
  33. struct clear<deque_tag> : mpl::identity<deque<> > {};
  34. }
  35. }}
  36. #endif