optional_fwd.hpp 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. // Copyright (C) 2003, 2008 Fernando Luis Cacciola Carballal.
  2. // Copyright (C) 2016 Andrzej Krzemienski
  3. //
  4. // Use, modification, and distribution is subject to the Boost Software
  5. // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
  6. // http://www.boost.org/LICENSE_1_0.txt)
  7. //
  8. // See http://www.boost.org/libs/optional for documentation.
  9. //
  10. // You are welcome to contact the author at:
  11. // fernando_cacciola@hotmail.com
  12. //
  13. // Revisions:
  14. // 10 May 2008 (added swap related forward declaration) Niels Dekker
  15. //
  16. #ifndef BOOST_OPTIONAL_OPTIONAL_FWD_FLC_19NOV2002_HPP
  17. #define BOOST_OPTIONAL_OPTIONAL_FWD_FLC_19NOV2002_HPP
  18. #include <boost/config.hpp>
  19. namespace boost {
  20. template<class T> class optional ;
  21. // This forward is needed to refer to namespace scope swap from the member swap
  22. template<class T> void swap ( optional<T>& , optional<T>& ) ;
  23. template<class T> struct optional_swap_should_use_default_constructor ;
  24. #ifndef BOOST_OPTIONAL_CONFIG_DONT_SPECIALIZE_OPTIONAL_REFS
  25. template<class T> class optional<T&> ;
  26. template<class T> void swap ( optional<T&>& , optional<T&>& ) BOOST_NOEXCEPT;
  27. #endif
  28. } // namespace boost
  29. #endif