#include "content/browser/font_access/font_enumeration_cache.h"
#include <algorithm>
#include <memory>
#include <optional>
#include <string>
#include <utility>
#include "base/i18n/rtl.h"
#include "base/memory/read_only_shared_memory_region.h"
#include "base/memory/scoped_refptr.h"
#include "base/sequence_checker.h"
#include "base/task/sequenced_task_runner.h"
#include "base/task/task_traits.h"
#include "base/task/thread_pool.h"
#include "base/threading/sequence_bound.h"
#include "base/types/pass_key.h"
#include "content/browser/font_access/font_enumeration_data_source.h"
#include "third_party/blink/public/common/font_access/font_enumeration_table.pb.h"
#include "third_party/blink/public/mojom/font_access/font_access.mojom.h"
namespace content {
base::SequenceBound<FontEnumerationCache> FontEnumerationCache::Create() { … }
base::SequenceBound<FontEnumerationCache>
FontEnumerationCache::CreateForTesting(
scoped_refptr<base::SequencedTaskRunner> task_runner,
std::unique_ptr<FontEnumerationDataSource> data_source,
std::optional<std::string> locale_override) { … }
FontEnumerationCache::FontEnumerationCache(
std::unique_ptr<FontEnumerationDataSource> data_source,
std::optional<std::string> locale_override,
base::PassKey<FontEnumerationCache>)
: … { … }
FontEnumerationCache::~FontEnumerationCache() { … }
FontEnumerationData FontEnumerationCache::GetFontEnumerationData() { … }
void FontEnumerationCache::BuildEnumerationCache(
blink::FontEnumerationTable& table) { … }
}