140  const char* 
const kMethodName = 
"DisposableStack.prototype.adopt";
 
  155            MessageTemplate::kDisposableStackIsDisposed,
 
  156            isolate->factory()->NewStringFromAsciiChecked(kMethodName)));
 
  160  if (!IsCallable(*on_dispose)) {
 
  162        isolate, NewTypeError(MessageTemplate::kNotCallable, on_dispose));
 
 
  184  const char* 
const kMethodName = 
"DisposableStack.prototype.defer";
 
  198            MessageTemplate::kDisposableStackIsDisposed,
 
  199            isolate->factory()->NewStringFromAsciiChecked(kMethodName)));
 
  203  if (!IsCallable(*on_dispose)) {
 
  205        isolate, NewTypeError(MessageTemplate::kNotCallable, on_dispose));
 
  211                             isolate->factory()->undefined_value(), on_dispose,
 
 
  220  const char* 
const kMethodName = 
"DisposableStack.prototype.move";
 
  233            MessageTemplate::kDisposableStackIsDisposed,
 
  234            isolate->factory()->NewStringFromAsciiChecked(kMethodName)));
 
  245          Context::JS_DISPOSABLE_STACK_FUNCTION_INDEX));
 
  249      isolate->factory()->NewJSSyncDisposableStack(map);
 
  253  new_disposable_stack->set_stack(disposable_stack->stack());
 
  254  new_disposable_stack->set_length(disposable_stack->length());
 
  256  new_disposable_stack->set_error(*(isolate->factory()->uninitialized_value()));
 
  257  new_disposable_stack->set_error_message(
 
  258      *(isolate->factory()->uninitialized_value()));
 
  261  disposable_stack->set_stack(
ReadOnlyRoots(isolate).empty_fixed_array());
 
  262  disposable_stack->set_length(0);
 
  263  disposable_stack->set_error(*(isolate->factory()->uninitialized_value()));
 
  264  disposable_stack->set_error_message(
 
  265      *(isolate->factory()->uninitialized_value()));
 
  271  return *new_disposable_stack;
 
 
static void Add(Isolate *isolate, DirectHandle< JSDisposableStackBase > disposable_stack, DirectHandle< Object > value, DirectHandle< Object > method, DisposeMethodCallType type, DisposeMethodHint hint)