#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "third_party/blink/public/mojom/blob/data_element.mojom-blink.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/blob/data_element.mojom-params-data.h"
#include "third_party/blink/public/mojom/blob/data_element.mojom-shared-message-ids.h"
#include "third_party/blink/public/mojom/blob/data_element.mojom-blink-import-headers.h"
#include "third_party/blink/public/mojom/blob/data_element.mojom-blink-test-utils.h"
#include "mojo/public/cpp/bindings/lib/wtf_serialization.h"
namespace blink::mojom::blink {
constexpr uint64_t DataElementBytes::kMaximumEmbeddedDataSize;
DataElementBytes::DataElementBytes()
: … { … }
DataElementBytes::DataElementBytes(
uint64_t length_in,
std::optional<WTF::Vector<uint8_t>> embedded_data_in,
::mojo::PendingRemote<BytesProvider> data_in)
: … { … }
DataElementBytes::~DataElementBytes() = default;
void DataElementBytes::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool DataElementBytes::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
DataElementFile::DataElementFile()
: … { … }
DataElementFile::DataElementFile(
const ::base::FilePath& path_in,
uint64_t offset_in,
uint64_t length_in,
std::optional<::base::Time> expected_modification_time_in)
: … { … }
DataElementFile::~DataElementFile() = default;
void DataElementFile::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool DataElementFile::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
DataElementBlob::DataElementBlob()
: … { … }
DataElementBlob::DataElementBlob(
::mojo::PendingRemote<::blink::mojom::blink::Blob> blob_in,
uint64_t offset_in,
uint64_t length_in)
: … { … }
DataElementBlob::~DataElementBlob() = default;
void DataElementBlob::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool DataElementBlob::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
DataElement::DataElement() : … { … }
DataElement::~DataElement() { … }
void DataElement::set_bytes(
DataElementBytesPtr bytes) { … }
void DataElement::set_file(
DataElementFilePtr file) { … }
void DataElement::set_blob(
DataElementBlobPtr blob) { … }
void DataElement::DestroyActive() { … }
bool DataElement::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
const char BytesProvider::Name_[] = …;
BytesProvider::IPCStableHashFunction BytesProvider::MessageToMethodInfo_(mojo::Message& message) { … }
const char* BytesProvider::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t BytesProvider::RequestAsReply_Sym::IPCStableHash() { … }
uint32_t BytesProvider::RequestAsStream_Sym::IPCStableHash() { … }
uint32_t BytesProvider::RequestAsFile_Sym::IPCStableHash() { … }
# endif
class BytesProvider_RequestAsReply_ForwardToCallback
: public mojo::MessageReceiver { … };
class BytesProvider_RequestAsFile_ForwardToCallback
: public mojo::MessageReceiver { … };
BytesProviderProxy::BytesProviderProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void BytesProviderProxy::RequestAsReply(
RequestAsReplyCallback callback) { … }
void BytesProviderProxy::RequestAsStream(
::mojo::ScopedDataPipeProducerHandle in_pipe) { … }
void BytesProviderProxy::RequestAsFile(
uint64_t in_source_offset, uint64_t in_source_size, ::base::File in_file, uint64_t in_file_offset, RequestAsFileCallback callback) { … }
class BytesProvider_RequestAsReply_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool BytesProvider_RequestAsReply_ForwardToCallback::Accept(
mojo::Message* message) { … }
void BytesProvider_RequestAsReply_ProxyToResponder::Run(
const WTF::Vector<uint8_t>& in_data) { … }
class BytesProvider_RequestAsFile_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool BytesProvider_RequestAsFile_ForwardToCallback::Accept(
mojo::Message* message) { … }
void BytesProvider_RequestAsFile_ProxyToResponder::Run(
std::optional<::base::Time> in_time_file_modified) { … }
bool BytesProviderStubDispatch::Accept(
BytesProvider* impl,
mojo::Message* message) { … }
bool BytesProviderStubDispatch::AcceptWithResponder(
BytesProvider* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kBytesProviderValidationInfo[] = …;
bool BytesProviderRequestValidator::Accept(mojo::Message* message) { … }
bool BytesProviderResponseValidator::Accept(mojo::Message* message) { … }
}
namespace mojo {
bool StructTraits<::blink::mojom::blink::DataElementBytes::DataView, ::blink::mojom::blink::DataElementBytesPtr>::Read(
::blink::mojom::blink::DataElementBytes::DataView input,
::blink::mojom::blink::DataElementBytesPtr* output) { … }
bool StructTraits<::blink::mojom::blink::DataElementFile::DataView, ::blink::mojom::blink::DataElementFilePtr>::Read(
::blink::mojom::blink::DataElementFile::DataView input,
::blink::mojom::blink::DataElementFilePtr* output) { … }
bool StructTraits<::blink::mojom::blink::DataElementBlob::DataView, ::blink::mojom::blink::DataElementBlobPtr>::Read(
::blink::mojom::blink::DataElementBlob::DataView input,
::blink::mojom::blink::DataElementBlobPtr* output) { … }
bool UnionTraits<::blink::mojom::blink::DataElement::DataView, ::blink::mojom::blink::DataElementPtr>::Read(
::blink::mojom::blink::DataElement::DataView input,
::blink::mojom::blink::DataElementPtr* output) { … }
}
namespace blink::mojom::blink {
void BytesProviderInterceptorForTesting::RequestAsReply(RequestAsReplyCallback callback) { … }
void BytesProviderInterceptorForTesting::RequestAsStream(::mojo::ScopedDataPipeProducerHandle pipe) { … }
void BytesProviderInterceptorForTesting::RequestAsFile(uint64_t source_offset, uint64_t source_size, ::base::File file, uint64_t file_offset, RequestAsFileCallback callback) { … }
BytesProviderAsyncWaiter::BytesProviderAsyncWaiter(
BytesProvider* proxy) : … { … }
BytesProviderAsyncWaiter::~BytesProviderAsyncWaiter() = default;
void BytesProviderAsyncWaiter::RequestAsReply(
WTF::Vector<uint8_t>* out_data) { … }
WTF::Vector<uint8_t> BytesProviderAsyncWaiter::RequestAsReply(
) { … }
void BytesProviderAsyncWaiter::RequestAsFile(
uint64_t source_offset, uint64_t source_size, ::base::File file, uint64_t file_offset, std::optional<::base::Time>* out_time_file_modified) { … }
std::optional<::base::Time> BytesProviderAsyncWaiter::RequestAsFile(
uint64_t source_offset, uint64_t source_size, ::base::File file, uint64_t file_offset) { … }
}
#if defined(__clang__)
#pragma clang diagnostic pop
#endif