1 | // Copyright 2018 the V8 project authors. All rights reserved. |
2 | // Use of this source code is governed by a BSD-style license that can be |
3 | // found in the LICENSE file. |
4 | |
5 | #ifndef V8_ELEMENTS_INL_H_ |
6 | #define V8_ELEMENTS_INL_H_ |
7 | |
8 | #include "src/elements.h" |
9 | |
10 | #include "src/handles-inl.h" |
11 | #include "src/objects-inl.h" |
12 | |
13 | namespace v8 { |
14 | namespace internal { |
15 | |
16 | inline void ElementsAccessor::CollectElementIndices(Handle<JSObject> object, |
17 | KeyAccumulator* keys) { |
18 | CollectElementIndices(object, handle(object->elements(), keys->isolate()), |
19 | keys); |
20 | } |
21 | |
22 | inline MaybeHandle<FixedArray> ElementsAccessor::PrependElementIndices( |
23 | Handle<JSObject> object, Handle<FixedArray> keys, GetKeysConversion convert, |
24 | PropertyFilter filter) { |
25 | return PrependElementIndices(object, |
26 | handle(object->elements(), object->GetIsolate()), |
27 | keys, convert, filter); |
28 | } |
29 | |
30 | inline bool ElementsAccessor::HasElement(JSObject holder, uint32_t index, |
31 | PropertyFilter filter) { |
32 | return HasElement(holder, index, holder->elements(), filter); |
33 | } |
34 | |
35 | } // namespace internal |
36 | } // namespace v8 |
37 | |
38 | #endif // V8_ELEMENTS_INL_H_ |
39 | |