diff options
Diffstat (limited to 'deps/v8/tools/v8windbg/src/list-chunks.h')
-rw-r--r-- | deps/v8/tools/v8windbg/src/list-chunks.h | 100 |
1 files changed, 0 insertions, 100 deletions
diff --git a/deps/v8/tools/v8windbg/src/list-chunks.h b/deps/v8/tools/v8windbg/src/list-chunks.h deleted file mode 100644 index 10eec100d1..0000000000 --- a/deps/v8/tools/v8windbg/src/list-chunks.h +++ /dev/null @@ -1,100 +0,0 @@ -// Copyright 2020 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_TOOLS_V8WINDBG_SRC_LIST_CHUNKS_H_ -#define V8_TOOLS_V8WINDBG_SRC_LIST_CHUNKS_H_ - -#include <crtdbg.h> -#include <wrl/implements.h> - -#include <optional> -#include <string> -#include <vector> - -#include "src/base/optional.h" -#include "tools/v8windbg/base/utilities.h" -#include "tools/v8windbg/src/v8-debug-helper-interop.h" -#include "tools/v8windbg/src/v8windbg-extension.h" - -class ListChunksAlias - : public WRL::RuntimeClass< - WRL::RuntimeClassFlags<WRL::RuntimeClassType::ClassicCom>, - IModelMethod> { - public: - IFACEMETHOD(Call) - (IModelObject* p_context_object, ULONG64 arg_count, - _In_reads_(arg_count) IModelObject** pp_arguments, IModelObject** pp_result, - IKeyStore** pp_metadata); -}; - -struct ChunkData { - ChunkData(); - ~ChunkData(); - ChunkData(const ChunkData&); - ChunkData(ChunkData&&); - ChunkData& operator=(const ChunkData&); - ChunkData& operator=(ChunkData&&); - WRL::ComPtr<IModelObject> area_start; - WRL::ComPtr<IModelObject> area_end; - WRL::ComPtr<IModelObject> space; -}; - -class MemoryChunkIterator - : public WRL::RuntimeClass< - WRL::RuntimeClassFlags<WRL::RuntimeClassType::ClassicCom>, - IModelIterator> { - public: - MemoryChunkIterator(WRL::ComPtr<IDebugHostContext>& host_context); - ~MemoryChunkIterator() override; - - HRESULT PopulateChunkData(); - - IFACEMETHOD(Reset)(); - - IFACEMETHOD(GetNext) - (IModelObject** object, ULONG64 dimensions, IModelObject** indexers, - IKeyStore** metadata); - - const std::vector<ChunkData>& GetChunks() const { return chunks_; } - - HRESULT GetAt(uint64_t index, IModelObject** result) const; - - private: - ULONG position_ = 0; - std::vector<ChunkData> chunks_; - WRL::ComPtr<IDebugHostContext> sp_ctx_; -}; - -class MemoryChunks - : public WRL::RuntimeClass< - WRL::RuntimeClassFlags<WRL::RuntimeClassType::ClassicCom>, - IIndexableConcept, IIterableConcept> { - public: - MemoryChunks(); - ~MemoryChunks() override; - - // IIndexableConcept members - IFACEMETHOD(GetDimensionality) - (IModelObject* context_object, ULONG64* dimensionality); - - IFACEMETHOD(GetAt) - (IModelObject* context_object, ULONG64 indexer_count, IModelObject** indexers, - IModelObject** object, IKeyStore** metadata); - - IFACEMETHOD(SetAt) - (IModelObject* context_object, ULONG64 indexer_count, IModelObject** indexers, - IModelObject* value); - - // IIterableConcept - IFACEMETHOD(GetDefaultIndexDimensionality) - (IModelObject* context_object, ULONG64* dimensionality); - - IFACEMETHOD(GetIterator) - (IModelObject* context_object, IModelIterator** iterator); - - private: - WRL::ComPtr<MemoryChunkIterator> opt_chunks_; -}; - -#endif // V8_TOOLS_V8WINDBG_SRC_LIST_CHUNKS_H_ |