Home | History | Annotate | Download | only in src
      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