#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "components/services/font/public/mojom/font_service.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 "components/services/font/public/mojom/font_service.mojom-params-data.h"
#include "components/services/font/public/mojom/font_service.mojom-shared-message-ids.h"
#include "components/services/font/public/mojom/font_service.mojom-import-headers.h"
#include "components/services/font/public/mojom/font_service.mojom-test-utils.h"
namespace font_service::mojom {
TypefaceStyle::TypefaceStyle()
: … { … }
TypefaceStyle::TypefaceStyle(
uint16_t weight_in,
uint8_t width_in,
TypefaceSlant slant_in)
: … { … }
TypefaceStyle::~TypefaceStyle() = default;
size_t TypefaceStyle::Hash(size_t seed) const { … }
void TypefaceStyle::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool TypefaceStyle::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
FontIdentity::FontIdentity()
: … { … }
FontIdentity::FontIdentity(
uint32_t id_in,
int32_t ttc_index_in,
const ::base::FilePath& filepath_in)
: … { … }
FontIdentity::~FontIdentity() = default;
void FontIdentity::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool FontIdentity::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
FontRenderStyle::FontRenderStyle()
: … { … }
FontRenderStyle::FontRenderStyle(
RenderStyleSwitch use_bitmaps_in,
RenderStyleSwitch use_autohint_in,
RenderStyleSwitch use_hinting_in,
uint8_t hint_style_in,
RenderStyleSwitch use_antialias_in,
RenderStyleSwitch use_subpixel_rendering_in,
RenderStyleSwitch use_subpixel_positioning_in)
: … { … }
FontRenderStyle::~FontRenderStyle() = default;
size_t FontRenderStyle::Hash(size_t seed) const { … }
void FontRenderStyle::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool FontRenderStyle::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
const char FontService::Name_[] = …;
FontService::IPCStableHashFunction FontService::MessageToMethodInfo_(mojo::Message& message) { … }
const char* FontService::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t FontService::MatchFamilyName_Sym::IPCStableHash() { … }
uint32_t FontService::OpenStream_Sym::IPCStableHash() { … }
uint32_t FontService::FallbackFontForCharacter_Sym::IPCStableHash() { … }
uint32_t FontService::FontRenderStyleForStrike_Sym::IPCStableHash() { … }
uint32_t FontService::MatchFontByPostscriptNameOrFullFontName_Sym::IPCStableHash() { … }
uint32_t FontService::MatchFontWithFallback_Sym::IPCStableHash() { … }
# endif
class FontService_MatchFamilyName_ForwardToCallback
: public mojo::MessageReceiver { … };
class FontService_OpenStream_ForwardToCallback
: public mojo::MessageReceiver { … };
class FontService_FallbackFontForCharacter_ForwardToCallback
: public mojo::MessageReceiver { … };
class FontService_FontRenderStyleForStrike_ForwardToCallback
: public mojo::MessageReceiver { … };
class FontService_MatchFontByPostscriptNameOrFullFontName_ForwardToCallback
: public mojo::MessageReceiver { … };
class FontService_MatchFontWithFallback_ForwardToCallback
: public mojo::MessageReceiver { … };
FontServiceProxy::FontServiceProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void FontServiceProxy::MatchFamilyName(
const std::string& in_family_name, TypefaceStylePtr in_style, MatchFamilyNameCallback callback) { … }
void FontServiceProxy::OpenStream(
uint32_t in_id_number, OpenStreamCallback callback) { … }
void FontServiceProxy::FallbackFontForCharacter(
uint32_t in_character, const std::string& in_locale, FallbackFontForCharacterCallback callback) { … }
void FontServiceProxy::FontRenderStyleForStrike(
const std::string& in_family, uint32_t in_size, bool in_is_italic, bool in_is_bold, float in_device_scale_factor, FontRenderStyleForStrikeCallback callback) { … }
void FontServiceProxy::MatchFontByPostscriptNameOrFullFontName(
const std::string& in_postscript_name_or_full_font_name, MatchFontByPostscriptNameOrFullFontNameCallback callback) { … }
void FontServiceProxy::MatchFontWithFallback(
const std::string& in_family, bool in_is_bold, bool in_is_italic, uint32_t in_charset, uint32_t in_fallback_family_type, MatchFontWithFallbackCallback callback) { … }
class FontService_MatchFamilyName_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool FontService_MatchFamilyName_ForwardToCallback::Accept(
mojo::Message* message) { … }
void FontService_MatchFamilyName_ProxyToResponder::Run(
FontIdentityPtr in_identity, const std::string& in_family_name, TypefaceStylePtr in_style) { … }
class FontService_OpenStream_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool FontService_OpenStream_ForwardToCallback::Accept(
mojo::Message* message) { … }
void FontService_OpenStream_ProxyToResponder::Run(
::base::File in_font_handle) { … }
class FontService_FallbackFontForCharacter_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool FontService_FallbackFontForCharacter_ForwardToCallback::Accept(
mojo::Message* message) { … }
void FontService_FallbackFontForCharacter_ProxyToResponder::Run(
FontIdentityPtr in_identity, const std::string& in_family_name, bool in_is_bold, bool in_is_italic) { … }
class FontService_FontRenderStyleForStrike_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool FontService_FontRenderStyleForStrike_ForwardToCallback::Accept(
mojo::Message* message) { … }
void FontService_FontRenderStyleForStrike_ProxyToResponder::Run(
FontRenderStylePtr in_font_render_style) { … }
class FontService_MatchFontByPostscriptNameOrFullFontName_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool FontService_MatchFontByPostscriptNameOrFullFontName_ForwardToCallback::Accept(
mojo::Message* message) { … }
void FontService_MatchFontByPostscriptNameOrFullFontName_ProxyToResponder::Run(
FontIdentityPtr in_identity) { … }
class FontService_MatchFontWithFallback_ProxyToResponder : public ::mojo::internal::ProxyToResponder { … };
bool FontService_MatchFontWithFallback_ForwardToCallback::Accept(
mojo::Message* message) { … }
void FontService_MatchFontWithFallback_ProxyToResponder::Run(
::base::File in_font_file_handle) { … }
bool FontServiceStubDispatch::Accept(
FontService* impl,
mojo::Message* message) { … }
bool FontServiceStubDispatch::AcceptWithResponder(
FontService* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kFontServiceValidationInfo[] = …;
bool FontServiceRequestValidator::Accept(mojo::Message* message) { … }
bool FontServiceResponseValidator::Accept(mojo::Message* message) { … }
}
namespace mojo {
bool StructTraits<::font_service::mojom::TypefaceStyle::DataView, ::font_service::mojom::TypefaceStylePtr>::Read(
::font_service::mojom::TypefaceStyle::DataView input,
::font_service::mojom::TypefaceStylePtr* output) { … }
bool StructTraits<::font_service::mojom::FontIdentity::DataView, ::font_service::mojom::FontIdentityPtr>::Read(
::font_service::mojom::FontIdentity::DataView input,
::font_service::mojom::FontIdentityPtr* output) { … }
bool StructTraits<::font_service::mojom::FontRenderStyle::DataView, ::font_service::mojom::FontRenderStylePtr>::Read(
::font_service::mojom::FontRenderStyle::DataView input,
::font_service::mojom::FontRenderStylePtr* output) { … }
}
namespace font_service::mojom {
void FontServiceInterceptorForTesting::MatchFamilyName(const std::string& family_name, TypefaceStylePtr style, MatchFamilyNameCallback callback) { … }
void FontServiceInterceptorForTesting::OpenStream(uint32_t id_number, OpenStreamCallback callback) { … }
void FontServiceInterceptorForTesting::FallbackFontForCharacter(uint32_t character, const std::string& locale, FallbackFontForCharacterCallback callback) { … }
void FontServiceInterceptorForTesting::FontRenderStyleForStrike(const std::string& family, uint32_t size, bool is_italic, bool is_bold, float device_scale_factor, FontRenderStyleForStrikeCallback callback) { … }
void FontServiceInterceptorForTesting::MatchFontByPostscriptNameOrFullFontName(const std::string& postscript_name_or_full_font_name, MatchFontByPostscriptNameOrFullFontNameCallback callback) { … }
void FontServiceInterceptorForTesting::MatchFontWithFallback(const std::string& family, bool is_bold, bool is_italic, uint32_t charset, uint32_t fallback_family_type, MatchFontWithFallbackCallback callback) { … }
FontServiceAsyncWaiter::FontServiceAsyncWaiter(
FontService* proxy) : … { … }
FontServiceAsyncWaiter::~FontServiceAsyncWaiter() = default;
void FontServiceAsyncWaiter::MatchFamilyName(
const std::string& family_name, TypefaceStylePtr style, FontIdentityPtr* out_identity, std::string* out_family_name, TypefaceStylePtr* out_style) { … }
void FontServiceAsyncWaiter::OpenStream(
uint32_t id_number, ::base::File* out_font_handle) { … }
::base::File FontServiceAsyncWaiter::OpenStream(
uint32_t id_number) { … }
void FontServiceAsyncWaiter::FallbackFontForCharacter(
uint32_t character, const std::string& locale, FontIdentityPtr* out_identity, std::string* out_family_name, bool* out_is_bold, bool* out_is_italic) { … }
void FontServiceAsyncWaiter::FontRenderStyleForStrike(
const std::string& family, uint32_t size, bool is_italic, bool is_bold, float device_scale_factor, FontRenderStylePtr* out_font_render_style) { … }
FontRenderStylePtr FontServiceAsyncWaiter::FontRenderStyleForStrike(
const std::string& family, uint32_t size, bool is_italic, bool is_bold, float device_scale_factor) { … }
void FontServiceAsyncWaiter::MatchFontByPostscriptNameOrFullFontName(
const std::string& postscript_name_or_full_font_name, FontIdentityPtr* out_identity) { … }
FontIdentityPtr FontServiceAsyncWaiter::MatchFontByPostscriptNameOrFullFontName(
const std::string& postscript_name_or_full_font_name) { … }
void FontServiceAsyncWaiter::MatchFontWithFallback(
const std::string& family, bool is_bold, bool is_italic, uint32_t charset, uint32_t fallback_family_type, ::base::File* out_font_file_handle) { … }
::base::File FontServiceAsyncWaiter::MatchFontWithFallback(
const std::string& family, bool is_bold, bool is_italic, uint32_t charset, uint32_t fallback_family_type) { … }
}
#if defined(__clang__)
#pragma clang diagnostic pop
#endif