Fix reading Time zone rules using Julian days (#17672)
[platform/upstream/coreclr.git] / src / jit / jitstd / algorithm.h
1 // Licensed to the .NET Foundation under one or more agreements.
2 // The .NET Foundation licenses this file to you under the MIT license.
3 // See the LICENSE file in the project root for more information.
4
5
6
7 #pragma once
8
9 namespace jitstd
10 {
11
12 template <typename InputIterator, typename CompareValue>
13 InputIterator find(InputIterator first, InputIterator last,
14                    const CompareValue& value)
15 {
16     for (; first != last; ++first)
17     {
18         if (*first == value)
19         {
20             return first;
21         }
22     }
23     return last;
24 }
25
26 template <typename InputIterator, typename Pred>
27 InputIterator find_if(InputIterator first, InputIterator last, const Pred& pred)
28 {
29     for (; first != last; ++first)
30     {
31         if (pred(*first))
32         {
33             return first;
34         }
35     }
36     return last;
37 }
38
39 template<typename InputIterator, typename Function>
40 Function for_each(InputIterator first, InputIterator last, Function func)
41 {
42     for (; first != last; ++first)
43     {
44         func(*first);
45     }
46     return func;
47 }
48
49 }