#ifndef V8_OBJECTS_OFF_HEAP_HASH_TABLE_INL_H_
#define V8_OBJECTS_OFF_HEAP_HASH_TABLE_INL_H_
#include "src/objects/compressed-slots-inl.h"
#include "src/objects/off-heap-hash-table.h"
namespace v8 {
namespace internal {
template <typename Derived>
OffHeapHashTableBase<Derived>::OffHeapHashTableBase(int capacity)
: … { … }
template <typename Derived>
void OffHeapHashTableBase<Derived>::RehashInto(PtrComprCageBase cage_base,
Derived* new_table) { … }
template <typename Derived>
inline bool OffHeapHashTableBase<Derived>::ShouldResizeToAdd(
int additional_elements, int* new_capacity) { … }
template <typename Derived>
bool OffHeapHashTableBase<Derived>::HasSufficientCapacityToAdd(
int capacity, int number_of_elements, int number_of_deleted_elements,
int number_of_additional_elements) { … }
template <typename Derived>
int OffHeapHashTableBase<Derived>::ComputeCapacity(int at_least_space_for) { … }
template <typename Derived>
int OffHeapHashTableBase<Derived>::ComputeCapacityWithShrink(
int current_capacity, int at_least_space_for) { … }
template <typename Derived>
void OffHeapHashTableBase<Derived>::IterateElements(Root root,
RootVisitor* visitor) { … }
template <typename Derived>
template <typename IsolateT, typename FindKey>
InternalIndex OffHeapHashTableBase<Derived>::FindEntry(IsolateT* isolate,
FindKey key,
uint32_t hash) const { … }
template <typename Derived>
InternalIndex OffHeapHashTableBase<Derived>::FindInsertionEntry(
PtrComprCageBase cage_base, uint32_t hash) const { … }
template <typename Derived>
template <typename IsolateT, typename FindKey>
InternalIndex OffHeapHashTableBase<Derived>::FindEntryOrInsertionEntry(
IsolateT* isolate, FindKey key, uint32_t hash) const { … }
template <typename Derived>
template <typename Container, size_t OffsetOfElementsInContainer>
void* OffHeapHashTableBase<Derived>::Allocate(int capacity) { … }
template <typename Derived>
void OffHeapHashTableBase<Derived>::Free(void* table) { … }
}
}
#endif