OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_LIST_H_ | 5 #ifndef V8_LIST_H_ |
6 #define V8_LIST_H_ | 6 #define V8_LIST_H_ |
7 | 7 |
8 #include "utils.h" | 8 #include "utils.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
11 namespace internal { | 11 namespace internal { |
12 | 12 |
| 13 template<typename T> class Vector; |
13 | 14 |
14 // ---------------------------------------------------------------------------- | 15 // ---------------------------------------------------------------------------- |
15 // The list is a template for very light-weight lists. We are not | 16 // The list is a template for very light-weight lists. We are not |
16 // using the STL because we want full control over space and speed of | 17 // using the STL because we want full control over space and speed of |
17 // the code. This implementation is based on code by Robert Griesemer | 18 // the code. This implementation is based on code by Robert Griesemer |
18 // and Rob Pike. | 19 // and Rob Pike. |
19 // | 20 // |
20 // The list is parameterized by the type of its elements (T) and by an | 21 // The list is parameterized by the type of its elements (T) and by an |
21 // allocation policy (P). The policy is used for allocating lists in | 22 // allocation policy (P). The policy is used for allocating lists in |
22 // the C free store or the zone; see zone.h. | 23 // the C free store or the zone; see zone.h. |
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
204 template <typename T, class P> | 205 template <typename T, class P> |
205 int SortedListBSearch(const List<T>& list, P cmp); | 206 int SortedListBSearch(const List<T>& list, P cmp); |
206 template <typename T> | 207 template <typename T> |
207 int SortedListBSearch(const List<T>& list, T elem); | 208 int SortedListBSearch(const List<T>& list, T elem); |
208 | 209 |
209 | 210 |
210 } } // namespace v8::internal | 211 } } // namespace v8::internal |
211 | 212 |
212 | 213 |
213 #endif // V8_LIST_H_ | 214 #endif // V8_LIST_H_ |
OLD | NEW |