chromium/out/Default/gen/v8/torque-generated/class-debug-readers.h

// Provides the ability to read object properties in
// postmortem or remote scenarios, where the debuggee's
// memory is not part of the current process's address
// space and must be read using a callback function.

#ifndef V8_GEN_TORQUE_GENERATED_CLASS_DEBUG_READERS_H_
#define V8_GEN_TORQUE_GENERATED_CLASS_DEBUG_READERS_H_

#include <cstdint>
#include <vector>

#include "src/ast/ast.h"
#include "src/builtins/builtins-array-gen.h"
#include "src/builtins/builtins-bigint-gen.h"
#include "src/builtins/builtins-call-gen.h"
#include "src/builtins/builtins-collections-gen.h"
#include "src/builtins/builtins-constructor-gen.h"
#include "src/builtins/builtins-data-view-gen.h"
#include "src/builtins/builtins-iterator-gen.h"
#include "src/builtins/builtins-object-gen.h"
#include "src/builtins/builtins-promise-gen.h"
#include "src/builtins/builtins-promise.h"
#include "src/builtins/builtins-proxy-gen.h"
#include "src/builtins/builtins-regexp-gen.h"
#include "src/builtins/builtins-string-gen.h"
#include "src/builtins/builtins-typed-array-gen.h"
#include "src/builtins/builtins-utils-gen.h"
#include "src/builtins/builtins-wasm-gen.h"
#include "src/builtins/builtins.h"
#include "src/codegen/code-factory.h"
#include "src/debug/debug-wasm-objects.h"
#include "src/heap/factory-inl.h"
#include "src/ic/binary-op-assembler.h"
#include "src/ic/handler-configuration-inl.h"
#include "src/objects/arguments.h"
#include "src/objects/bigint.h"
#include "src/objects/call-site-info.h"
#include "src/objects/elements-kind.h"
#include "src/objects/free-space.h"
#include "src/objects/intl-objects.h"
#include "src/objects/js-atomics-synchronization.h"
#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-disposable-stack.h"
#include "src/objects/js-duration-format.h"
#include "src/objects/js-function.h"
#include "src/objects/js-generator.h"
#include "src/objects/js-iterator-helpers.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-objects.h"
#include "src/objects/js-plural-rules.h"
#include "src/objects/js-promise.h"
#include "src/objects/js-raw-json.h"
#include "src/objects/js-regexp-string-iterator.h"
#include "src/objects/js-relative-time-format.h"
#include "src/objects/js-segment-iterator-inl.h"
#include "src/objects/js-segmenter.h"
#include "src/objects/js-segments.h"
#include "src/objects/js-shadow-realm.h"
#include "src/objects/js-shared-array.h"
#include "src/objects/js-struct.h"
#include "src/objects/js-temporal-objects.h"
#include "src/objects/js-weak-refs.h"
#include "src/objects/objects.h"
#include "src/objects/ordered-hash-table.h"
#include "src/objects/property-array.h"
#include "src/objects/property-descriptor-object.h"
#include "src/objects/source-text-module.h"
#include "src/objects/swiss-hash-table-helpers.h"
#include "src/objects/swiss-name-dictionary.h"
#include "src/objects/synthetic-module.h"
#include "src/objects/template-objects.h"
#include "src/objects/torque-defined-classes.h"
#include "src/objects/turbofan-types.h"
#include "src/objects/turboshaft-types.h"
#include "src/torque/runtime-support.h"
#include "src/wasm/value-type.h"
#include "src/wasm/wasm-linkage.h"

#include "tools/debug_helper/debug-helper-internal.h"

// Unset a wingdi.h macro that causes conflicts.
#ifdef GetBValue
#undef GetBValue
#endif

namespace v8 {
namespace internal {
namespace debug_helper_internal {

class TqHeapObject : public TqObject {};

class TqPrimitiveHeapObject : public TqHeapObject {};

class TqHeapNumber : public TqPrimitiveHeapObject {};

class TqName : public TqPrimitiveHeapObject {};

class TqString : public TqName {};

class TqSymbol : public TqName {};

class TqOddball : public TqPrimitiveHeapObject {};

class TqBoolean : public TqOddball {};

class TqNull : public TqOddball {};

class TqUndefined : public TqOddball {};

class TqJSReceiver : public TqHeapObject {};

class TqContext : public TqHeapObject {};

class TqJSObject : public TqJSReceiver {};

class TqJSObjectWithEmbedderSlots : public TqJSObject {};

class TqJSPromise : public TqJSObjectWithEmbedderSlots {};

class TqJSFunctionOrBoundFunctionOrWrappedFunction : public TqJSObject {};

class TqJSFunction : public TqJSFunctionOrBoundFunctionOrWrappedFunction {};

class TqFixedArrayBase : public TqHeapObject {};

class TqFixedArray : public TqFixedArrayBase {};

class TqTrustedObject : public TqHeapObject {};

class TqWeakFixedArray : public TqHeapObject {};

class TqForeign : public TqHeapObject {};

class TqJSProxy : public TqJSReceiver {};

class TqJSBoundFunction : public TqJSFunctionOrBoundFunctionOrWrappedFunction {};

class TqJSWrappedFunction : public TqJSFunctionOrBoundFunctionOrWrappedFunction {};

class TqHole : public TqHeapObject {};

class TqJSAPIObjectWithEmbedderSlots : public TqJSObject {};

class TqJSCustomElementsObject : public TqJSObject {};

class TqJSSpecialObject : public TqJSCustomElementsObject {};

class TqMap : public TqHeapObject {};

class TqWeakCell : public TqHeapObject {};

class TqTemplateInfo : public TqHeapObject {};

class TqFunctionTemplateInfo : public TqTemplateInfo {};

class TqWasmFuncRef : public TqHeapObject {};

class TqWasmNull : public TqHeapObject {};

class TqJSCollection : public TqJSObject {};

class TqJSSet : public TqJSCollection {};

class TqJSMap : public TqJSCollection {};

class TqStruct : public TqHeapObject {};

class TqPromiseCapability : public TqStruct {};

class TqJSArrayBufferView : public TqJSAPIObjectWithEmbedderSlots {};

class TqJSTypedArray : public TqJSArrayBufferView {};

class TqDataHandler : public TqStruct {};

class TqAllocationMemento : public TqStruct {};

class TqInterceptorInfo : public TqStruct {};

class TqAccessCheckInfo : public TqStruct {};

class TqAccessorInfo : public TqHeapObject {};

class TqJSArgumentsObject : public TqJSObject {};

class TqJSSloppyArgumentsObject : public TqJSArgumentsObject {};

class TqJSStrictArgumentsObject : public TqJSArgumentsObject {};

class TqSloppyArgumentsElements : public TqFixedArrayBase {};

class TqAliasedArgumentsEntry : public TqStruct {};

class TqCallSiteInfo : public TqStruct {};

class TqCell : public TqHeapObject {};

class TqWeakArrayList : public TqHeapObject {};

class TqExposedTrustedObject : public TqTrustedObject {};

class TqBytecodeArray : public TqExposedTrustedObject {};

class TqBytecodeWrapper : public TqStruct {};

class TqScriptContextTable : public TqHeapObject {};

class TqScopeInfo : public TqHeapObject {};

class TqFixedDoubleArray : public TqFixedArrayBase {};

class TqRegExpMatchInfo : public TqHeapObject {};

class TqBreakPoint : public TqStruct {};

class TqBreakPointInfo : public TqStruct {};

class TqDebugInfo : public TqStruct {};

class TqCoverageInfo : public TqHeapObject {};

class TqStackFrameInfo : public TqStruct {};

class TqErrorStackData : public TqStruct {};

class TqEnumCache : public TqStruct {};

class TqAccessorPair : public TqStruct {};

class TqClassPositions : public TqStruct {};

class TqDescriptorArray : public TqHeapObject {};

class TqStrongDescriptorArray : public TqDescriptorArray {};

class TqEmbedderDataArray : public TqHeapObject {};

class TqFeedbackCell : public TqStruct {};

class TqClosureFeedbackCellArray : public TqHeapObject {};

class TqFeedbackVector : public TqHeapObject {};

class TqTrustedFixedArray : public TqTrustedObject {};

class TqProtectedFixedArray : public TqTrustedObject {};

class TqTrustedWeakFixedArray : public TqTrustedObject {};

class TqByteArray : public TqFixedArrayBase {};

class TqTrustedByteArray : public TqTrustedObject {};

class TqArrayList : public TqHeapObject {};

class TqTrustedForeign : public TqTrustedObject {};

class TqFreeSpace : public TqHeapObject {};

class TqJSArrayBuffer : public TqJSAPIObjectWithEmbedderSlots {};

class TqJSDataViewOrRabGsabDataView : public TqJSArrayBufferView {};

class TqJSDataView : public TqJSDataViewOrRabGsabDataView {};

class TqJSRabGsabDataView : public TqJSDataViewOrRabGsabDataView {};

class TqJSArrayIterator : public TqJSObject {};

class TqJSArray : public TqJSObject {};

class TqTemplateLiteralObject : public TqJSArray {};

class TqAlwaysSharedSpaceJSObject : public TqJSObject {};

class TqJSSynchronizationPrimitive : public TqAlwaysSharedSpaceJSObject {};

class TqJSAtomicsMutex : public TqJSSynchronizationPrimitive {};

class TqJSAtomicsCondition : public TqJSSynchronizationPrimitive {};

class TqJSCollectionIterator : public TqJSObject {};

class TqJSWeakCollection : public TqJSObject {};

class TqJSWeakSet : public TqJSWeakCollection {};

class TqJSWeakMap : public TqJSWeakCollection {};

class TqJSDisposableStackBase : public TqJSObject {};

class TqJSSyncDisposableStack : public TqJSDisposableStackBase {};

class TqJSAsyncDisposableStack : public TqJSDisposableStackBase {};

class TqJSGeneratorObject : public TqJSObject {};

class TqJSAsyncFunctionObject : public TqJSGeneratorObject {};

class TqJSAsyncGeneratorObject : public TqJSGeneratorObject {};

class TqAsyncGeneratorRequest : public TqStruct {};

class TqJSIteratorHelper : public TqJSObject {};

class TqJSIteratorMapHelper : public TqJSIteratorHelper {};

class TqJSIteratorFilterHelper : public TqJSIteratorHelper {};

class TqJSIteratorTakeHelper : public TqJSIteratorHelper {};

class TqJSIteratorDropHelper : public TqJSIteratorHelper {};

class TqJSIteratorFlatMapHelper : public TqJSIteratorHelper {};

class TqJSExternalObject : public TqJSObject {};

class TqJSGlobalProxy : public TqJSSpecialObject {};

class TqJSGlobalObject : public TqJSSpecialObject {};

class TqJSPrimitiveWrapper : public TqJSCustomElementsObject {};

class TqJSMessageObject : public TqJSObject {};

class TqJSDate : public TqJSObject {};

class TqJSAsyncFromSyncIterator : public TqJSObject {};

class TqJSStringIterator : public TqJSObject {};

class TqJSValidIteratorWrapper : public TqJSObject {};

class TqJSProxyRevocableResult : public TqJSObject {};

class TqJSRawJson : public TqJSObject {};

class TqJSRegExpStringIterator : public TqJSObject {};

class TqRegExpData : public TqExposedTrustedObject {};

class TqAtomRegExpData : public TqRegExpData {};

class TqIrRegExpData : public TqRegExpData {};

class TqRegExpDataWrapper : public TqStruct {};

class TqJSRegExp : public TqJSObject {};

class TqJSRegExpResult : public TqJSArray {};

class TqJSRegExpResultWithIndices : public TqJSRegExpResult {};

class TqJSRegExpResultIndices : public TqJSArray {};

class TqJSShadowRealm : public TqJSObject {};

class TqJSSharedArray : public TqAlwaysSharedSpaceJSObject {};

class TqJSSharedStruct : public TqAlwaysSharedSpaceJSObject {};

class TqJSTemporalCalendar : public TqJSObject {};

class TqJSTemporalDuration : public TqJSObject {};

class TqJSTemporalInstant : public TqJSObject {};

class TqJSTemporalPlainDateTime : public TqJSObject {};

class TqJSTemporalPlainDate : public TqJSObject {};

class TqJSTemporalPlainMonthDay : public TqJSObject {};

class TqJSTemporalPlainTime : public TqJSObject {};

class TqJSTemporalPlainYearMonth : public TqJSObject {};

class TqJSTemporalTimeZone : public TqJSObject {};

class TqJSTemporalZonedDateTime : public TqJSObject {};

class TqJSFinalizationRegistry : public TqJSObject {};

class TqJSWeakRef : public TqJSObject {};

class TqObjectBoilerplateDescription : public TqHeapObject {};

class TqArrayBoilerplateDescription : public TqStruct {};

class TqRegExpBoilerplateDescription : public TqStruct {};

class TqClassBoilerplate : public TqStruct {};

class TqMegaDomHandler : public TqHeapObject {};

class TqMicrotask : public TqStruct {};

class TqCallbackTask : public TqMicrotask {};

class TqCallableTask : public TqMicrotask {};

class TqModule : public TqHeapObject {};

class TqJSModuleNamespace : public TqJSSpecialObject {};

class TqScriptOrModule : public TqStruct {};

class TqTrue : public TqBoolean {};

class TqFalse : public TqBoolean {};

class TqSmallOrderedHashTable : public TqHeapObject {};

class TqSmallOrderedHashSet : public TqSmallOrderedHashTable {};

class TqSmallOrderedHashMap : public TqSmallOrderedHashTable {};

class TqSmallOrderedNameDictionary : public TqSmallOrderedHashTable {};

class TqPromiseReaction : public TqStruct {};

class TqPromiseReactionJobTask : public TqMicrotask {};

class TqPromiseFulfillReactionJobTask : public TqPromiseReactionJobTask {};

class TqPromiseRejectReactionJobTask : public TqPromiseReactionJobTask {};

class TqPromiseResolveThenableJobTask : public TqMicrotask {};

class TqPropertyArray : public TqHeapObject {};

class TqPropertyCell : public TqHeapObject {};

class TqConstTrackingLetCell : public TqHeapObject {};

class TqPropertyDescriptorObject : public TqStruct {};

class TqPrototypeInfo : public TqStruct {};

class TqScript : public TqStruct {};

class TqPreparseData : public TqHeapObject {};

class TqInterpreterData : public TqExposedTrustedObject {};

class TqSharedFunctionInfo : public TqHeapObject {};

class TqSharedFunctionInfoWrapper : public TqTrustedObject {};

class TqUncompiledData : public TqExposedTrustedObject {};

class TqUncompiledDataWithoutPreparseData : public TqUncompiledData {};

class TqUncompiledDataWithPreparseData : public TqUncompiledData {};

class TqUncompiledDataWithoutPreparseDataWithJob : public TqUncompiledDataWithoutPreparseData {};

class TqUncompiledDataWithPreparseDataAndJob : public TqUncompiledDataWithPreparseData {};

class TqOnHeapBasicBlockProfilerData : public TqHeapObject {};

class TqSourceTextModule : public TqModule {};

class TqModuleRequest : public TqStruct {};

class TqSourceTextModuleInfoEntry : public TqStruct {};

class TqConsString : public TqString {};

class TqExternalString : public TqString {};

class TqExternalOneByteString : public TqExternalString {};

class TqExternalTwoByteString : public TqExternalString {};

class TqInternalizedString : public TqString {};

class TqSeqString : public TqString {};

class TqSeqOneByteString : public TqSeqString {};

class TqSeqTwoByteString : public TqSeqString {};

class TqSlicedString : public TqString {};

class TqThinString : public TqString {};

class TqTuple2 : public TqStruct {};

class TqSwissNameDictionary : public TqHeapObject {};

class TqSyntheticModule : public TqModule {};

class TqTemplateObjectDescription : public TqStruct {};

class TqFunctionTemplateRareData : public TqStruct {};

class TqObjectTemplateInfo : public TqTemplateInfo {};

class TqDictionaryTemplateInfo : public TqHeapObject {};

class TqTurbofanType : public TqHeapObject {};

class TqTurbofanBitsetType : public TqTurbofanType {};

class TqTurbofanUnionType : public TqTurbofanType {};

class TqTurbofanRangeType : public TqTurbofanType {};

class TqTurbofanHeapConstantType : public TqTurbofanType {};

class TqTurbofanOtherNumberConstantType : public TqTurbofanType {};

class TqTurboshaftType : public TqHeapObject {};

class TqTurboshaftWord32Type : public TqTurboshaftType {};

class TqTurboshaftWord32RangeType : public TqTurboshaftWord32Type {};

class TqTurboshaftWord32SetType : public TqTurboshaftWord32Type {};

class TqTurboshaftWord64Type : public TqTurboshaftType {};

class TqTurboshaftWord64RangeType : public TqTurboshaftWord64Type {};

class TqTurboshaftWord64SetType : public TqTurboshaftWord64Type {};

class TqTurboshaftFloat64Type : public TqTurboshaftType {};

class TqTurboshaftFloat64RangeType : public TqTurboshaftFloat64Type {};

class TqTurboshaftFloat64SetType : public TqTurboshaftFloat64Type {};

class TqInternalClass : public TqHeapObject {};

class TqSmiPair : public TqHeapObject {};

class TqSmiBox : public TqHeapObject {};

class TqExportedSubClassBase : public TqHeapObject {};

class TqExportedSubClass : public TqExportedSubClassBase {};

class TqAbstractInternalClass : public TqHeapObject {};

class TqAbstractInternalClassSubclass1 : public TqAbstractInternalClass {};

class TqAbstractInternalClassSubclass2 : public TqAbstractInternalClass {};

class TqInternalClassWithStructElements : public TqHeapObject {};

class TqExportedSubClass2 : public TqExportedSubClassBase {};

class TqSortState : public TqHeapObject {};

class TqJSV8BreakIterator : public TqJSObject {};

class TqJSCollator : public TqJSObject {};

class TqJSDateTimeFormat : public TqJSObject {};

class TqJSDisplayNames : public TqJSObject {};

class TqJSDurationFormat : public TqJSObject {};

class TqJSListFormat : public TqJSObject {};

class TqJSLocale : public TqJSObject {};

class TqJSNumberFormat : public TqJSObject {};

class TqJSPluralRules : public TqJSObject {};

class TqJSRelativeTimeFormat : public TqJSObject {};

class TqJSSegmentIterator : public TqJSObject {};

class TqJSSegmentDataObject : public TqJSObject {};

class TqJSSegmentDataObjectWithIsWordLike : public TqJSSegmentDataObject {};

class TqJSSegmenter : public TqJSObject {};

class TqJSSegments : public TqJSObject {};

class TqWasmImportData : public TqTrustedObject {};

class TqWasmInstanceObject : public TqJSObject {};

class TqWasmFastApiCallData : public TqHeapObject {};

class TqWasmInternalFunction : public TqExposedTrustedObject {};

class TqWasmFunctionData : public TqExposedTrustedObject {};

class TqWasmExportedFunctionData : public TqWasmFunctionData {};

class TqWasmJSFunctionData : public TqWasmFunctionData {};

class TqWasmCapiFunctionData : public TqWasmFunctionData {};

class TqWasmResumeData : public TqHeapObject {};

class TqWasmContinuationObject : public TqHeapObject {};

class TqWasmSuspenderObject : public TqHeapObject {};

class TqWasmExceptionTag : public TqStruct {};

class TqWasmModuleObject : public TqJSObject {};

class TqWasmTableObject : public TqJSObject {};

class TqWasmMemoryObject : public TqJSObject {};

class TqWasmGlobalObject : public TqJSObject {};

class TqWasmTagObject : public TqJSObject {};

class TqAsmWasmData : public TqStruct {};

class TqWasmTypeInfo : public TqHeapObject {};

class TqWasmObject : public TqJSReceiver {};

class TqWasmStruct : public TqWasmObject {};

class TqWasmArray : public TqWasmObject {};

class TqWasmStringViewIter : public TqHeapObject {};

class TqWasmSuspendingObject : public TqJSObject {};

class TqObjectVisitor {};
}  // namespace debug_helper_internal
}  // namespace internal
}  // namespace v8
#endif  // V8_GEN_TORQUE_GENERATED_CLASS_DEBUG_READERS_H_