#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "third_party/blink/public/mojom/leak_detector/leak_detector.mojom.h"
#include <math.h>
#include <stdint.h>
#include <utility>
#include "base/debug/alias.h"
#include "base/hash/md5_constexpr.h"
#include "base/run_loop.h"
#include "base/strings/string_number_conversions.h"
#include "base/task/thread_pool/thread_pool_instance.h"
#include "base/trace_event/trace_event.h"
#include "base/trace_event/typed_macros.h"
#include "mojo/public/cpp/bindings/features.h"
#include "mojo/public/cpp/bindings/lib/default_construct_tag_internal.h"
#include "mojo/public/cpp/bindings/lib/generated_code_util.h"
#include "mojo/public/cpp/bindings/lib/message_internal.h"
#include "mojo/public/cpp/bindings/lib/proxy_to_responder.h"
#include "mojo/public/cpp/bindings/lib/send_message_helper.h"
#include "mojo/public/cpp/bindings/lib/serialization_util.h"
#include "mojo/public/cpp/bindings/lib/unserialized_message_context.h"
#include "mojo/public/cpp/bindings/lib/validate_params.h"
#include "mojo/public/cpp/bindings/lib/validation_errors.h"
#include "mojo/public/cpp/bindings/mojo_buildflags.h"
#include "mojo/public/cpp/bindings/urgent_message_scope.h"
#include "mojo/public/interfaces/bindings/interface_control_messages.mojom.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value.h"
#include "third_party/blink/public/mojom/leak_detector/leak_detector.mojom-params-data.h"
#include "third_party/blink/public/mojom/leak_detector/leak_detector.mojom-shared-message-ids.h"
#include "third_party/blink/public/mojom/leak_detector/leak_detector.mojom-import-headers.h"
#include "third_party/blink/public/mojom/leak_detector/leak_detector.mojom-test-utils.h"
namespace blink::mojom {
LeakDetectionResult::LeakDetectionResult()
: … { … }
LeakDetectionResult::LeakDetectionResult(
uint32_t number_of_live_audio_nodes_in,
uint32_t number_of_live_documents_in,
uint32_t number_of_live_nodes_in,
uint32_t number_of_live_layout_objects_in,
uint32_t number_of_live_resources_in,
uint32_t number_of_live_context_lifecycle_state_observers_in,
uint32_t number_of_live_frames_in,
uint32_t number_of_live_v8_per_context_data_in,
uint32_t number_of_worker_global_scopes_in,
uint32_t number_of_live_ua_css_resources_in,
uint32_t number_of_live_resource_fetchers_in)
: … { … }
LeakDetectionResult::~LeakDetectionResult() = default;
size_t LeakDetectionResult::Hash(size_t seed) const { … }
void LeakDetectionResult::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool LeakDetectionResult::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
const char LeakDetector::Name_[] = …;
LeakDetector::IPCStableHashFunction LeakDetector::MessageToMethodInfo_(mojo::Message& message) { … }
const char* LeakDetector::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t LeakDetector::PerformLeakDetection_Sym::IPCStableHash() { … }
# endif
class LeakDetector_PerformLeakDetection_ForwardToCallback
: public mojo::MessageReceiver { … };
LeakDetectorProxy::LeakDetectorProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void LeakDetectorProxy::PerformLeakDetection(
PerformLeakDetectionCallback callback) { … }
class LeakDetector_PerformLeakDetection_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool LeakDetector_PerformLeakDetection_ForwardToCallback::Accept(
mojo::Message* message) { … }
void LeakDetector_PerformLeakDetection_ProxyToResponder::Run(
LeakDetectionResultPtr in_result) { … }
bool LeakDetectorStubDispatch::Accept(
LeakDetector* impl,
mojo::Message* message) { … }
bool LeakDetectorStubDispatch::AcceptWithResponder(
LeakDetector* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kLeakDetectorValidationInfo[] = …;
bool LeakDetectorRequestValidator::Accept(mojo::Message* message) { … }
bool LeakDetectorResponseValidator::Accept(mojo::Message* message) { … }
}
namespace mojo {
bool StructTraits<::blink::mojom::LeakDetectionResult::DataView, ::blink::mojom::LeakDetectionResultPtr>::Read(
::blink::mojom::LeakDetectionResult::DataView input,
::blink::mojom::LeakDetectionResultPtr* output) { … }
}
namespace blink::mojom {
void LeakDetectorInterceptorForTesting::PerformLeakDetection(PerformLeakDetectionCallback callback) { … }
LeakDetectorAsyncWaiter::LeakDetectorAsyncWaiter(
LeakDetector* proxy) : … { … }
LeakDetectorAsyncWaiter::~LeakDetectorAsyncWaiter() = default;
void LeakDetectorAsyncWaiter::PerformLeakDetection(
LeakDetectionResultPtr* out_result) { … }
LeakDetectionResultPtr LeakDetectorAsyncWaiter::PerformLeakDetection(
) { … }
}
#if defined(__clang__)
#pragma clang diagnostic pop
#endif