// Copyright 2014 the V8 project authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef V8_OBJECTS_LOOKUP_H_ #define V8_OBJECTS_LOOKUP_H_ #include <optional> #include "src/common/globals.h" #include "src/execution/isolate.h" #include "src/heap/factory.h" #include "src/objects/descriptor-array.h" #include "src/objects/js-objects.h" #include "src/objects/map.h" #include "src/objects/objects.h" #if V8_ENABLE_WEBASSEMBLY #include "src/wasm/value-type.h" #endif // V8_ENABLE_WEBASSEMBLY namespace v8::internal { class PropertyKey { … }; class V8_EXPORT_PRIVATE LookupIterator final { … }; // Similar to the LookupIterator, but for concurrent accesses from a background // thread. // // Note: This is a work in progress, intended to bundle code related to // concurrent lookups here. In its current state, the class is obviously not an // 'iterator'. Still, keeping the name for now, with the intent to clarify // names and implementation once we've gotten some experience with more // involved logic. // TODO(jgruber, v8:7790): Consider using a LookupIterator-style interface. // TODO(jgruber, v8:7790): Consider merging back into the LookupIterator once // functionality and constraints are better known. class ConcurrentLookupIterator final : public AllStatic { … }; } // namespace v8::internal #endif // V8_OBJECTS_LOOKUP_H_