chromium/third_party/blink/renderer/core/html/custom/custom_element_construction_stack.cc

// Copyright 2023 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "third_party/blink/renderer/core/html/custom/custom_element_construction_stack.h"

#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/html/custom/custom_element_registry.h"
#include "third_party/blink/renderer/platform/heap/collection_support/heap_hash_map.h"

namespace blink {

namespace {

// We manage the construction stacks in a map of maps, where the first map key
// is a window, and the second map key is a constructor and value is a
// construction stack.

ConstructorToStackMap;

WindowMap;

Persistent<WindowMap>& GetWindowMap() {}

WindowMap& EnsureWindowMap() {}

ConstructorToStackMap& EnsureConstructorToStackMap(
    const LocalDOMWindow* window) {}

CustomElementConstructionStack& EnsureConstructionStack(
    CustomElementDefinition& definition) {}

}  // namespace

CustomElementConstructionStack* GetCustomElementConstructionStack(
    const LocalDOMWindow* window,
    v8::Local<v8::Object> constructor) {}

wtf_size_t CustomElementConstructionStackScope::nesting_level_ =;

CustomElementConstructionStackScope::CustomElementConstructionStackScope(
    CustomElementDefinition& definition,
    Element& element)
    :{}

CustomElementConstructionStackScope::~CustomElementConstructionStackScope() {}

}  // namespace blink