libzypp 17.37.17
zypp::Locale Class Reference

'Language[_Country]' codes. More...

#include <zypp/Locale.h>

Inheritance diagram for zypp::Locale:

Public Member Functions

 Locale ()
 Default Ctor: noCode.
 Locale (IdString str_r)
 Ctor from string.
 Locale (const std::string &str_r)
 Ctor from string.
 Locale (const char *str_r)
 Ctor from string.
 Locale (const LanguageCode &language_r, const CountryCode &country_r=CountryCode())
 Ctor taking LanguageCode and optional CountryCode.
 ~Locale ()
 Dtor.
Public Member Functions inherited from zypp::IdStringType< Locale >
IdString idStr () const
bool empty () const
unsigned size () const
const char * c_str () const
std::string asString () const
IdType id () const
 operator bool () const
 Evaluate in a boolean context ( !
 operator IdString () const
 Explicit conversion to IdString.
 operator std::string () const
 Explicit conversion to std::string.

Locale constants.

static const Locale noCode
 Empty code.
static const Locale enCode
 Last resort "en".
class IdStringType< Locale >
IdString _str
LanguageCode language () const
 The language part.
CountryCode country () const
 The county part.
std::string code () const
 Return the locale code asString.
std::string name () const
 Return the translated locale name.
Locale fallback () const
 Return the fallback locale for this locale, if no fallback exists the empty Locale::noCode.
static Locale bestMatch (const LocaleSet &avLocales_r, Locale requested_r=Locale())
 Return the best match for Locale requested_r within the available avLocales_r.

Additional Inherited Members

Public Types inherited from zypp::IdStringType< Locale >
using IdType
Static Public Member Functions inherited from zypp::IdStringType< Locale >
static int compare (const Locale &lhs, const Locale &rhs)
Protected Member Functions inherited from zypp::IdStringType< Locale >
 IdStringType ()=default
IdStringTypeoperator= (const IdStringType &)=default
 ~IdStringType ()=default
Static Protected Member Functions inherited from zypp::sat::detail::PoolMember
static PoolImplmyPool ()

Detailed Description

'Language[_Country]' codes.

In fact the class will not prevent to use a non iso code. Just a warning will appear in the log. Construction from string consider everything up to the first '.' or '@'.

Locale l( "de_DE.UTF-8" );
l.code() == "de_DE";
l.language() == "de";
l.country() == "DE";
l.fallback() == "de";
l.fallback().fallback() == Locale::enCode == "en";
l.fallback().fallback().fallback() == Locale::noCode == "";
static const Locale enCode
Last resort "en".
Definition Locale.h:78
static const Locale noCode
Empty code.
Definition Locale.h:75
Locale()
Default Ctor: noCode.
Definition Locale.cc:177

Definition at line 50 of file Locale.h.

Constructor & Destructor Documentation

◆ Locale() [1/5]

zypp::Locale::Locale ( )

Default Ctor: noCode.

Definition at line 177 of file Locale.cc.

◆ Locale() [2/5]

zypp::Locale::Locale ( IdString str_r)
explicit

Ctor from string.

Definition at line 180 of file Locale.cc.

◆ Locale() [3/5]

zypp::Locale::Locale ( const std::string & str_r)
explicit

Ctor from string.

Definition at line 184 of file Locale.cc.

◆ Locale() [4/5]

zypp::Locale::Locale ( const char * str_r)
explicit

Ctor from string.

Definition at line 188 of file Locale.cc.

◆ Locale() [5/5]

zypp::Locale::Locale ( const LanguageCode & language_r,
const CountryCode & country_r = CountryCode() )

Ctor taking LanguageCode and optional CountryCode.

Definition at line 192 of file Locale.cc.

◆ ~Locale()

zypp::Locale::~Locale ( )

Dtor.

Definition at line 196 of file Locale.cc.

Member Function Documentation

◆ language()

LanguageCode zypp::Locale::language ( ) const

The language part.

Definition at line 199 of file Locale.cc.

◆ country()

CountryCode zypp::Locale::country ( ) const

The county part.

Definition at line 202 of file Locale.cc.

◆ code()

std::string zypp::Locale::code ( ) const
inline

Return the locale code asString.

Definition at line 89 of file Locale.h.

◆ name()

std::string zypp::Locale::name ( ) const

Return the translated locale name.

Definition at line 205 of file Locale.cc.

◆ fallback()

Locale zypp::Locale::fallback ( ) const

Return the fallback locale for this locale, if no fallback exists the empty Locale::noCode.

The usual fallback sequence is "language_COUNTRY" -> "language" -> Locale::enCode ("en") ->Locale::noCode (""). Some exceptions like "pt_BR"->"en"->"" do exist.

Definition at line 208 of file Locale.cc.

◆ bestMatch()

Locale zypp::Locale::bestMatch ( const LocaleSet & avLocales_r,
Locale requested_r = Locale() )
static

Return the best match for Locale requested_r within the available avLocales_r.

If requested_r is not specified ZConfig::textLocale is assumed.

If neither requested_r nor any of its fallback locales are available in avLocales_r, Locale::noCode is returned.

Definition at line 213 of file Locale.cc.

◆ IdStringType< Locale >

friend class IdStringType< Locale >
friend

Definition at line 109 of file Locale.h.

Member Data Documentation

◆ noCode

const Locale zypp::Locale::noCode
static

Empty code.

Definition at line 75 of file Locale.h.

◆ enCode

const Locale zypp::Locale::enCode
static

Last resort "en".

Definition at line 78 of file Locale.h.

◆ _str

IdString zypp::Locale::_str
private

Definition at line 113 of file Locale.h.


The documentation for this class was generated from the following files: