7#ifndef XFA_FXFA_PARSER_CXFA_XMLLOCALE_H_
8#define XFA_FXFA_PARSER_CXFA_XMLLOCALE_H_
12#include "core/fxcrt/unowned_ptr.h"
13#include "fxjs/gc/heap.h"
14#include "third_party/base/containers/span.h"
15#include "v8/include/cppgc/garbage-collected.h"
16#include "xfa/fxfa/parser/gced_locale_iface.h"
24 static CXFA_XMLLocale*
Create(
cppgc::Heap* heap, pdfium::span<uint8_t> data);
30 void Trace(
cppgc::Visitor* visitor)
const override;
31 WideString
GetName()
const override;
38 WideString
GetMonthName(int32_t nMonth,
bool bAbbr)
const override;
39 WideString
GetDayName(int32_t nWeek,
bool bAbbr)
const override;
42 WideString
GetEraName(
bool bAD)
const override;
49 CXFA_XMLLocale(std::unique_ptr<CFX_XMLDocument> root,
50 const CFX_XMLElement* locale);
52 WideString GetPattern(CFX_XMLElement* pElement,
54 WideStringView wsName)
const;
55 WideString GetCalendarSymbol(WideStringView symbol,
59 std::unique_ptr<CFX_XMLDocument> xml_doc_;
void SetDefLocale(GCedLocaleIface *pLocale)
absl::optional< WideString > GetConfigLocaleName(CXFA_Node *pConfig) const
~CXFA_LocaleMgr() override
GCedLocaleIface * GetDefLocale() override
GCedLocaleIface * GetLocaleByName(const WideString &wsLocaleName) override
void Trace(cppgc::Visitor *visitor) const override
WideString GetMeridiemName(bool bAM) const override
WideString GetName() const override
WideString GetDayName(int32_t nWeek, bool bAbbr) const override
WideString GetDatePattern(DateTimeSubcategory eType) const override
WideString GetGroupingSymbol() const override
int GetTimeZoneInMinutes() const override
WideString GetTimePattern(DateTimeSubcategory eType) const override
WideString GetPercentSymbol() const override
WideString GetMonthName(int32_t nMonth, bool bAbbr) const override
WideString GetEraName(bool bAD) const override
~CXFA_NodeLocale() override
WideString GetMinusSymbol() const override
WideString GetDecimalSymbol() const override
WideString GetCurrencySymbol() const override
WideString GetDateTimeSymbols() const override
WideString GetNumPattern(NumSubcategory eType) const override
WideString GetPercentSymbol() const override
WideString GetMinusSymbol() const override
void Trace(cppgc::Visitor *visitor) const override
WideString GetGroupingSymbol() const override
static CXFA_XMLLocale * Create(cppgc::Heap *heap, pdfium::span< uint8_t > data)
WideString GetTimePattern(DateTimeSubcategory eType) const override
WideString GetName() const override
WideString GetDayName(int32_t nWeek, bool bAbbr) const override
WideString GetMonthName(int32_t nMonth, bool bAbbr) const override
WideString GetDatePattern(DateTimeSubcategory eType) const override
WideString GetNumPattern(NumSubcategory eType) const override
WideString GetDateTimeSymbols() const override
~CXFA_XMLLocale() override
int GetTimeZoneInMinutes() const override
WideString GetEraName(bool bAD) const override
WideString GetCurrencySymbol() const override
WideString GetMeridiemName(bool bAM) const override
WideString GetDecimalSymbol() const override
virtual WideString GetName() const =0
static uint32_t FlateOrLZWDecode(bool bLZW, pdfium::span< const uint8_t > src_span, bool bEarlyChange, int predictor, int Colors, int BitsPerComponent, int Columns, uint32_t estimated_size, std::unique_ptr< uint8_t, FxFreeDeleter > *dest_buf, uint32_t *dest_size)
bool operator==(const WideString &other) const
CharType operator[](const size_t index) const
WideString XFA_PatternToString(LocaleIface::NumSubcategory category)
constexpr uint32_t FXBSTR_ID(uint8_t c1, uint8_t c2, uint8_t c3, uint8_t c4)
#define CONSTRUCT_VIA_MAKE_GARBAGE_COLLECTED