blob: 3dcbcc5f0528c813a008b21a88a770da657634e4 [file] [log] [blame]
// (C) Copyright 2008 CodeRage, LLC (turkanis at coderage dot com)
// (C) Copyright 2003-2007 Jonathan Turkanis
// Distributed under the Boost Software License, Version 1.0. (See accompanying
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt.)
// See http://www.boost.org/libs/iostreams for documentation.
#ifndef NDNBOOST_IOSTREAMS_DETAIL_IS_ITERATOR_RANGE_HPP_INCLUDED
#define NDNBOOST_IOSTREAMS_DETAIL_IS_ITERATOR_RANGE_HPP_INCLUDED
#include <ndnboost/config.hpp>
#include <ndnboost/detail/workaround.hpp>
#include <ndnboost/iostreams/detail/bool_trait_def.hpp>
// Must come last.
#include <ndnboost/iostreams/detail/config/disable_warnings.hpp>
namespace ndnboost {
# if !NDNBOOST_WORKAROUND(NDNBOOST_MSVC, <= 1300) //---------------------------------//
// We avoid dependence on Boost.Range by using a forward declaration.
template<typename Iterator>
class iterator_range;
namespace iostreams {
NDNBOOST_IOSTREAMS_BOOL_TRAIT_DEF(is_iterator_range, ndnboost::iterator_range, 1)
} // End namespace iostreams.
# else // # if !NDNBOOST_WORKAROUND(NDNBOOST_MSVC, <= 1300) //-----------------------//
namespace iostreams {
template<typename T>
struct is_iterator_range {
NDNBOOST_STATIC_CONSTANT(bool, value = false);
};
} // End namespace iostreams.
# endif // # if !NDNBOOST_WORKAROUND(NDNBOOST_MSVC, < 1300) //----------------------//
} // End namespace ndnboost.
#include <ndnboost/iostreams/detail/config/enable_warnings.hpp>
#endif // #ifndef NDNBOOST_IOSTREAMS_DETAIL_IS_ITERATOR_RANGE_HPP_INCLUDED