1// -*- C++ -*- 2//===-------------------------- algorithm ---------------------------------===// 3// 4// The LLVM Compiler Infrastructure 5// 6// This file is dual licensed under the MIT and the University of Illinois Open 7// Source Licenses. See LICENSE.TXT for details. 8// 9//===----------------------------------------------------------------------===// 10 11#ifndef _LIBCPP_EXPERIMENTAL_ALGORITHM 12#define _LIBCPP_EXPERIMENTAL_ALGORITHM 13 14/* 15 experimental/algorithm synopsis 16 17#include <algorithm> 18 19namespace std { 20namespace experimental { 21inline namespace fundamentals_v1 { 22 23template <class ForwardIterator, class Searcher> 24ForwardIterator search(ForwardIterator first, ForwardIterator last, 25 const Searcher &searcher); 26 27// sample removed because it's now part of C++17 28 29} // namespace fundamentals_v1 30} // namespace experimental 31} // namespace std 32 33*/ 34 35#include <experimental/__config> 36#include <algorithm> 37#include <type_traits> 38 39#include <__debug> 40 41#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 42#pragma GCC system_header 43#endif 44 45_LIBCPP_PUSH_MACROS 46#include <__undef_macros> 47 48 49_LIBCPP_BEGIN_NAMESPACE_LFTS 50 51template <class _ForwardIterator, class _Searcher> 52_LIBCPP_INLINE_VISIBILITY 53_ForwardIterator search(_ForwardIterator __f, _ForwardIterator __l, const _Searcher &__s) 54{ return __s(__f, __l).first; } 55 56_LIBCPP_END_NAMESPACE_LFTS 57 58_LIBCPP_POP_MACROS 59 60#endif /* _LIBCPP_EXPERIMENTAL_ALGORITHM */ 61