1// -*- C++ -*- 2//===--------------------------- ranges -----------------------------------===// 3// 4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 5// See https://llvm.org/LICENSE.txt for license information. 6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7// 8//===----------------------------------------------------------------------===// 9 10#ifndef _LIBCPP_RANGES 11#define _LIBCPP_RANGES 12 13/* 14 15#include <compare> // see [compare.syn] 16#include <initializer_list> // see [initializer.list.syn] 17#include <iterator> // see [iterator.synopsis] 18 19namespace std::ranges { 20 // [range.range], ranges 21 template<class T> 22 inline constexpr bool enable_borrowed_range = false; 23} 24 25*/ 26 27#include <__config> 28#include <__ranges/enable_borrowed_range.h> 29#include <compare> // Required by the standard. 30#include <initializer_list> // Required by the standard. 31#include <iterator> // Required by the standard. 32#include <type_traits> 33#include <version> 34 35#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 36#pragma GCC system_header 37#endif 38 39_LIBCPP_PUSH_MACROS 40#include <__undef_macros> 41 42_LIBCPP_BEGIN_NAMESPACE_STD 43 44#if _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_HAS_NO_RANGES) 45 46#endif // _LIBCPP_STD_VER > 17 && !defined(_LIBCPP_HAS_NO_RANGES) 47 48_LIBCPP_END_NAMESPACE_STD 49 50_LIBCPP_POP_MACROS 51 52#endif // _LIBCPP_RANGES 53