blob: 2f23535a30ab64c9da8c2f5fd5310b8bbaa06a23 [file]
// Copyright 2026 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef V8_OBJECTS_ALL_OBJECTS_H_
#define V8_OBJECTS_ALL_OBJECTS_H_
// This file includes every heap object header directly. Keep this list to
// plain headers: tools/metagen parses it before generated instance types and
// builtin definitions exist, and object layout generation only needs class
// declarations. PRESUBMIT.py checks that every V8_OBJECT header is listed.
//
// The includes must be direct because BUILD.gn declares only this file as an
// input of the harvest. A header included through an intermediate header is
// still harvested, but the intermediate is in neither the action's inputs nor
// the depfile, so an incremental build keeps a stale instance-types.h.
#include "src/ic/handler-configuration.h"
#include "src/objects/abstract-code.h"
#include "src/objects/allocation-site-scopes.h"
#include "src/objects/allocation-site.h"
#include "src/objects/api-callbacks.h"
#include "src/objects/arguments.h"
#include "src/objects/bigint.h"
#include "src/objects/bytecode-array.h"
#include "src/objects/call-site-info.h"
#include "src/objects/cell.h"
#include "src/objects/code.h"
#include "src/objects/compilation-cache-table.h"
#include "src/objects/compressed-slots.h"
#include "src/objects/contexts.h"
#include "src/objects/cpp-heap-external-object.h"
#include "src/objects/cpp-heap-object-wrapper.h"
#include "src/objects/data-handler.h"
#include "src/objects/debug-objects.h"
#include "src/objects/deoptimization-data.h"
#include "src/objects/dependent-code.h"
#include "src/objects/descriptor-array.h"
#include "src/objects/dictionary.h"
#include "src/objects/elements.h"
#include "src/objects/embedder-data-array.h"
#include "src/objects/embedder-data-slot.h"
#include "src/objects/feedback-cell.h"
#include "src/objects/feedback-vector.h"
#include "src/objects/field-index.h"
#include "src/objects/fixed-array-base.h"
#include "src/objects/fixed-array.h"
#include "src/objects/fixed-primitive-array.h"
#include "src/objects/foreign.h"
#include "src/objects/free-space.h"
#include "src/objects/hash-seed-wrapper.h"
#include "src/objects/hash-table.h"
#include "src/objects/heap-number.h"
#include "src/objects/heap-object.h"
#include "src/objects/hole.h"
#include "src/objects/instance-type.h"
#include "src/objects/instruction-stream.h"
#include "src/objects/js-array-buffer.h"
#include "src/objects/js-array.h"
#include "src/objects/js-atomics-synchronization.h"
#include "src/objects/js-collection-iterator.h"
#include "src/objects/js-collection.h"
#include "src/objects/js-disposable-stack.h"
#include "src/objects/js-function.h"
#include "src/objects/js-generator.h"
#include "src/objects/js-interceptor-map.h"
#include "src/objects/js-iterator-helpers.h"
#include "src/objects/js-objects.h"
#include "src/objects/js-promise.h"
#include "src/objects/js-proxy.h"
#include "src/objects/js-raw-json.h"
#include "src/objects/js-regexp-string-iterator.h"
#include "src/objects/js-regexp.h"
#include "src/objects/js-shadow-realm.h"
#include "src/objects/js-shared-array.h"
#include "src/objects/js-struct.h"
#ifdef V8_TEMPORAL_SUPPORT
#include "src/objects/js-temporal-objects.h"
#endif // V8_TEMPORAL_SUPPORT
#include "src/objects/js-weak-refs.h"
#include "src/objects/literal-objects.h"
#include "src/objects/lookup-cache.h"
#include "src/objects/lookup.h"
#include "src/objects/managed.h"
#include "src/objects/map.h"
#include "src/objects/maybe-object.h"
#include "src/objects/megadom-handler.h"
#include "src/objects/microtask.h"
#include "src/objects/module.h"
#include "src/objects/name.h"
#include "src/objects/number-string-cache.h"
#include "src/objects/objects.h"
#include "src/objects/oddball.h"
#include "src/objects/ordered-hash-table.h"
#include "src/objects/pod-array.h"
#include "src/objects/primitive-heap-object.h"
#include "src/objects/promise.h"
#include "src/objects/property-array.h"
#include "src/objects/property-cell.h"
#include "src/objects/property-descriptor-object.h"
#include "src/objects/prototype-info.h"
#include "src/objects/regexp-match-info.h"
#include "src/objects/scope-info.h"
#include "src/objects/script.h"
#include "src/objects/shared-function-info.h"
#include "src/objects/slots.h"
#include "src/objects/sort-state.h"
#include "src/objects/source-text-module.h"
#include "src/objects/string-forwarding-table.h"
#include "src/objects/string-set.h"
#include "src/objects/string-table.h"
#include "src/objects/string.h"
#include "src/objects/struct.h"
#include "src/objects/swiss-name-dictionary.h"
#include "src/objects/synthetic-module.h"
#include "src/objects/tagged-field.h"
#include "src/objects/tagged-impl.h"
#include "src/objects/tagged-value.h"
#include "src/objects/template-objects.h"
#include "src/objects/templates.h"
#include "src/objects/transitions.h"
#include "src/objects/trusted-object.h"
#include "src/objects/turbofan-types.h"
#include "src/objects/turboshaft-types.h"
#if V8_ENABLE_WEBASSEMBLY
#include "src/debug/debug-wasm-objects.h"
#include "src/wasm/wasm-objects.h"
#endif // V8_ENABLE_WEBASSEMBLY
#ifdef V8_INTL_SUPPORT
#include "src/objects/js-break-iterator.h"
#include "src/objects/js-collator.h"
#include "src/objects/js-date-time-format.h"
#include "src/objects/js-display-names.h"
#include "src/objects/js-duration-format.h"
#include "src/objects/js-list-format.h"
#include "src/objects/js-locale.h"
#include "src/objects/js-number-format.h"
#include "src/objects/js-plural-rules.h"
#include "src/objects/js-relative-time-format.h"
#include "src/objects/js-segment-iterator.h"
#include "src/objects/js-segmenter.h"
#include "src/objects/js-segments.h"
#endif // V8_INTL_SUPPORT
#endif // V8_OBJECTS_ALL_OBJECTS_H_