extension.hpp 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. /*=============================================================================
  2. Copyright (c) 2001-2007 Joel de Guzman
  3. Copyright (c) 2005-2006 Dan Marsden
  4. Copyright (c) 2009-2010 Christopher Schmidt
  5. Distributed under the Boost Software License, Version 1.0. (See accompanying
  6. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  7. ==============================================================================*/
  8. #ifndef BOOST_FUSION_ADAPTED_STRUCT_DETAIL_EXTENSION_HPP
  9. #define BOOST_FUSION_ADAPTED_STRUCT_DETAIL_EXTENSION_HPP
  10. #include <boost/fusion/support/category_of.hpp>
  11. namespace boost { namespace fusion
  12. {
  13. struct struct_tag;
  14. struct struct_iterator_tag;
  15. struct assoc_struct_tag;
  16. struct fusion_sequence_tag;
  17. struct assoc_struct_category
  18. : random_access_traversal_tag, associative_tag
  19. {};
  20. namespace extension
  21. {
  22. struct no_such_member;
  23. struct access
  24. {
  25. template<typename Seq, int N>
  26. struct struct_member;
  27. template<typename Seq, int N>
  28. struct adt_attribute_access;
  29. };
  30. template <typename T, int N, bool Const>
  31. struct adt_attribute_proxy;
  32. template<typename Seq, int N>
  33. struct struct_member_name;
  34. template<typename Seq>
  35. struct struct_size;
  36. template<typename Seq>
  37. struct struct_is_view;
  38. template<typename Seq, int N>
  39. struct struct_assoc_key;
  40. }
  41. }}
  42. #endif