#include "src/inspector/protocol/HeapProfiler.h"
#include "src/inspector/protocol/Protocol.h"
#include "v8//third_party/inspector_protocol/crdtp/cbor.h"
#include "v8//third_party/inspector_protocol/crdtp/find_by_first.h"
#include "v8//third_party/inspector_protocol/crdtp/span.h"
namespace v8_inspector {
namespace protocol {
namespace HeapProfiler {
DeserializerState;
ProtocolTypeTraits;
const char Metainfo::domainName[] = …;
const char Metainfo::commandPrefix[] = …;
const char Metainfo::version[] = …;
V8_CRDTP_BEGIN_DESERIALIZER(…)
V8_CRDTP_BEGIN_SERIALIZER(…);
V8_CRDTP_BEGIN_DESERIALIZER(…)
V8_CRDTP_BEGIN_SERIALIZER(…);
V8_CRDTP_BEGIN_DESERIALIZER(…)
V8_CRDTP_BEGIN_SERIALIZER(…);
void Frontend::addHeapSnapshotChunk(const String& chunk)
{ … }
void Frontend::heapStatsUpdate(std::unique_ptr<protocol::Array<int>> statsUpdate)
{ … }
void Frontend::lastSeenObjectId(int lastSeenObjectId, double timestamp)
{ … }
void Frontend::reportHeapSnapshotProgress(int done, int total, Maybe<bool> finished)
{ … }
void Frontend::resetProfiles()
{ … }
void Frontend::flush()
{ … }
void Frontend::sendRawNotification(std::unique_ptr<Serializable> notification)
{ … }
class DomainDispatcherImpl : public protocol::DomainDispatcher { … };
namespace {
DomainDispatcherImpl::CallHandler CommandByName(v8_crdtp::span<uint8_t> command_name) { … }
}
std::function<void(const v8_crdtp::Dispatchable&)> DomainDispatcherImpl::Dispatch(v8_crdtp::span<uint8_t> command_name) { … }
namespace {
struct addInspectedHeapObjectParams : public v8_crdtp::DeserializableProtocolObject<addInspectedHeapObjectParams> { … };
V8_CRDTP_BEGIN_DESERIALIZER(…)
}
void DomainDispatcherImpl::addInspectedHeapObject(const v8_crdtp::Dispatchable& dispatchable)
{ … }
class CollectGarbageCallbackImpl : public Backend::CollectGarbageCallback, public DomainDispatcher::Callback { … };
namespace {
}
void DomainDispatcherImpl::collectGarbage(const v8_crdtp::Dispatchable& dispatchable)
{ … }
namespace {
}
void DomainDispatcherImpl::disable(const v8_crdtp::Dispatchable& dispatchable)
{ … }
namespace {
}
void DomainDispatcherImpl::enable(const v8_crdtp::Dispatchable& dispatchable)
{ … }
namespace {
struct getHeapObjectIdParams : public v8_crdtp::DeserializableProtocolObject<getHeapObjectIdParams> { … };
V8_CRDTP_BEGIN_DESERIALIZER(…)
}
void DomainDispatcherImpl::getHeapObjectId(const v8_crdtp::Dispatchable& dispatchable)
{ … }
namespace {
struct getObjectByHeapObjectIdParams : public v8_crdtp::DeserializableProtocolObject<getObjectByHeapObjectIdParams> { … };
V8_CRDTP_BEGIN_DESERIALIZER(…)
}
void DomainDispatcherImpl::getObjectByHeapObjectId(const v8_crdtp::Dispatchable& dispatchable)
{ … }
namespace {
}
void DomainDispatcherImpl::getSamplingProfile(const v8_crdtp::Dispatchable& dispatchable)
{ … }
namespace {
struct startSamplingParams : public v8_crdtp::DeserializableProtocolObject<startSamplingParams> { … };
V8_CRDTP_BEGIN_DESERIALIZER(…)
}
void DomainDispatcherImpl::startSampling(const v8_crdtp::Dispatchable& dispatchable)
{ … }
namespace {
struct startTrackingHeapObjectsParams : public v8_crdtp::DeserializableProtocolObject<startTrackingHeapObjectsParams> { … };
V8_CRDTP_BEGIN_DESERIALIZER(…)
}
void DomainDispatcherImpl::startTrackingHeapObjects(const v8_crdtp::Dispatchable& dispatchable)
{ … }
namespace {
}
void DomainDispatcherImpl::stopSampling(const v8_crdtp::Dispatchable& dispatchable)
{ … }
namespace {
struct stopTrackingHeapObjectsParams : public v8_crdtp::DeserializableProtocolObject<stopTrackingHeapObjectsParams> { … };
V8_CRDTP_BEGIN_DESERIALIZER(…)
}
void DomainDispatcherImpl::stopTrackingHeapObjects(const v8_crdtp::Dispatchable& dispatchable)
{ … }
class TakeHeapSnapshotCallbackImpl : public Backend::TakeHeapSnapshotCallback, public DomainDispatcher::Callback { … };
namespace {
struct takeHeapSnapshotParams : public v8_crdtp::DeserializableProtocolObject<takeHeapSnapshotParams> { … };
V8_CRDTP_BEGIN_DESERIALIZER(…)
}
void DomainDispatcherImpl::takeHeapSnapshot(const v8_crdtp::Dispatchable& dispatchable)
{ … }
namespace {
const std::vector<std::pair<v8_crdtp::span<uint8_t>, v8_crdtp::span<uint8_t>>>& SortedRedirects() { … }
}
void Dispatcher::wire(UberDispatcher* uber, Backend* backend)
{ … }
}
}
}