37#ifdef V8_ENABLE_ALLOCATION_TIMEOUT 
   38  std::optional<int> UpdateAllocationTimeout() final { 
return std::nullopt; }
 
   49          std::make_unique<GCInvoker::GCInvokerImpl::GCTask>(collector, config);
 
   50      auto handle = task->GetHandle();
 
   51      runner->PostNonNestableTask(std::move(task));
 
 
 
 
   90      stack_support_(stack_support) {}
 
 
   93  if (gc_task_handle_) {
 
   94    gc_task_handle_.Cancel();
 
 
  100  if ((config.
stack_state == StackState::kNoHeapPointers) ||
 
  106    if (!gc_task_handle_) {
 
  111      gc_task_handle_ = GCTask::Post(
 
 
  120  if ((stack_support_ !=
 
  133  collector_->StartIncrementalGarbageCollection(config);
 
 
  144  impl_->CollectGarbage(config);
 
 
  148  impl_->StartIncrementalGarbageCollection(config);
 
 
  154  return impl_->overridden_stack_state();
 
 
  158  impl_->set_override_stack_state(state);
 
 
  162  impl_->clear_overridden_stack_state();
 
 
  165#ifdef V8_ENABLE_ALLOCATION_TIMEOUT 
  166std::optional<int> GCInvoker::UpdateAllocationTimeout() {
 
  167  return impl_->UpdateAllocationTimeout();
 
@ kSupportsConservativeStackScan
GarbageCollector * collector_
static Handle Post(GarbageCollector *collector, cppgc::TaskRunner *runner, GCConfig config)
GCTask(GarbageCollector *collector, GCConfig config)
GCInvokerImpl(GarbageCollector *, cppgc::Platform *, cppgc::Heap::StackSupport)
size_t epoch() const final
cppgc::Heap::StackSupport stack_support_
GCInvokerImpl(const GCInvokerImpl &)=delete
GCTask::Handle gc_task_handle_
void CollectGarbage(GCConfig) final
void clear_overridden_stack_state() final
void StartIncrementalGarbageCollection(GCConfig) final
void set_override_stack_state(EmbedderStackState state) final
std::optional< EmbedderStackState > overridden_stack_state() const final
GCInvokerImpl & operator=(const GCInvokerImpl &)=delete
GarbageCollector * collector_
cppgc::Platform * platform_
void CollectGarbage(GCConfig) final
size_t epoch() const final
void clear_overridden_stack_state() final
std::unique_ptr< GCInvokerImpl > impl_
std::optional< EmbedderStackState > overridden_stack_state() const final
GCInvoker(GarbageCollector *, cppgc::Platform *, cppgc::Heap::StackSupport)
void set_override_stack_state(EmbedderStackState state) final
void StartIncrementalGarbageCollection(GCConfig) final
virtual void clear_overridden_stack_state()=0
virtual std::optional< EmbedderStackState > overridden_stack_state() const =0
virtual size_t epoch() const =0
virtual void set_override_stack_state(EmbedderStackState state)=0
virtual void CollectGarbage(GCConfig)=0
virtual bool NonNestableTasksEnabled() const
MarkCompactCollector * collector_
#define DCHECK_NE(v1, v2)
#define DCHECK_EQ(v1, v2)