5#ifndef V8_HEAP_ARRAY_BUFFER_SWEEPER_H_
6#define V8_HEAP_ARRAY_BUFFER_SWEEPER_H_
21class ArrayBufferExtension;
static void FinalizeAndDelete(ArrayBufferExtension *extension)
V8_NO_UNIQUE_ADDRESS ExternalMemoryAccounter external_memory_accounter_
const ArrayBufferList & young() const
int64_t young_bytes_adjustment_while_sweeping_
std::unique_ptr< SweepingState > state_
void DecrementExternalMemoryCounters(size_t bytes)
ArrayBufferSweeper(Heap *heap)
void Detach(ArrayBufferExtension *extension)
void RequestSweep(SweepingType sweeping_type, TreatAllYoungAsPromoted treat_all_young_as_promoted)
const ArrayBufferList & old() const
void Resize(ArrayBufferExtension *extension, int64_t delta)
bool sweeping_in_progress() const
int64_t old_bytes_adjustment_while_sweeping_
void UpdateApproximateBytes(int64_t delta, ArrayBufferExtension::Age age)
size_t YoungBytes() const
void Append(ArrayBufferExtension *extension)
uint64_t GetTraceIdForFlowEvent(GCTracer::Scope::ScopeId scope_id) const
void IncrementExternalMemoryCounters(size_t bytes)
void Prepare(SweepingType type, TreatAllYoungAsPromoted treat_all_young_as_promoted, uint64_t trace_id)
void ReleaseAll(ArrayBufferList *extension)
#define V8_EXPORT_PRIVATE
ArrayBufferExtension * head_
ArrayBufferExtension::Age age_
V8_EXPORT_PRIVATE bool ContainsSlow(ArrayBufferExtension *extension) const
size_t Append(ArrayBufferExtension *extension)
size_t ApproximateBytes() const
ArrayBufferExtension * tail_
#define V8_NO_UNIQUE_ADDRESS