#include "third_party/blink/renderer/platform/text/locale_icu.h"
#include <unicode/udatpg.h>
#include <unicode/udisplaycontext.h>
#include <unicode/uloc.h>
#include <iterator>
#include <limits>
#include <memory>
#include "base/memory/ptr_util.h"
#include "base/ranges/algorithm.h"
#include "third_party/blink/renderer/platform/wtf/date_math.h"
#include "third_party/blink/renderer/platform/wtf/text/string_buffer.h"
#include "third_party/blink/renderer/platform/wtf/text/string_builder.h"
#include "ui/base/ui_base_features.h"
namespace blink {
std::unique_ptr<Locale> Locale::Create(const String& locale) { … }
LocaleICU::LocaleICU(const std::string& locale)
: … { … }
LocaleICU::~LocaleICU() { … }
String LocaleICU::DecimalSymbol(UNumberFormatSymbol symbol) { … }
String LocaleICU::DecimalTextAttribute(UNumberFormatTextAttribute tag) { … }
void LocaleICU::InitializeLocaleData() { … }
bool LocaleICU::InitializeShortDateFormat() { … }
UDateFormat* LocaleICU::OpenDateFormat(UDateFormatStyle time_style,
UDateFormatStyle date_style) const { … }
UDateFormat* LocaleICU::OpenDateFormatForStandAloneMonthLabels(
bool is_short) const { … }
static String GetDateFormatPattern(const UDateFormat* date_format) { … }
Vector<String> LocaleICU::CreateLabelVector(const UDateFormat* date_format,
UDateFormatSymbolType type,
int32_t start_index,
int32_t size) { … }
const Vector<String>& LocaleICU::MonthLabels() { … }
const Vector<String>& LocaleICU::WeekDayShortLabels() { … }
unsigned LocaleICU::FirstDayOfWeek() { … }
bool LocaleICU::IsRTL() { … }
void LocaleICU::InitializeDateTimeFormat() { … }
String LocaleICU::DateFormat() { … }
static String GetFormatForSkeleton(const char* locale, const String& skeleton) { … }
String LocaleICU::MonthFormat() { … }
String LocaleICU::ShortMonthFormat() { … }
String LocaleICU::TimeFormat() { … }
String LocaleICU::ShortTimeFormat() { … }
String LocaleICU::DateTimeFormatWithSeconds() { … }
String LocaleICU::DateTimeFormatWithoutSeconds() { … }
const Vector<String>& LocaleICU::ShortMonthLabels() { … }
const Vector<String>& LocaleICU::StandAloneMonthLabels() { … }
const Vector<String>& LocaleICU::ShortStandAloneMonthLabels() { … }
const Vector<String>& LocaleICU::TimeAMPMLabels() { … }
}