Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::locale::generator Class Reference

the major class used for locale generation More...

#include <generator.hpp>

Public Member Functions

 generator ()
 Create new generator using global localization_backend_manager. More...
 
 generator (localization_backend_manager const &)
 Create new generator using specific localization_backend_manager. More...
 
 ~generator ()
 
void categories (locale_category_type cats)
 Set types of facets that should be generated, default all. More...
 
locale_category_type categories () const
 Get types of facets that should be generated, default all. More...
 
void characters (character_facet_type chars)
 Set the characters type for which the facets should be generated, default all supported. More...
 
character_facet_type characters () const
 Get the characters type for which the facets should be generated, default all supported. More...
 
void add_messages_domain (std::string const &domain)
 Add a new domain of messages that would be generated. More...
 
void set_default_messages_domain (std::string const &domain)
 Set default message domain. More...
 
void clear_domains ()
 Remove all added domains from the list. More...
 
void add_messages_path (std::string const &path)
 Add a search path where dictionaries are looked in. More...
 
void clear_paths ()
 Remove all added paths. More...
 
void clear_cache ()
 Remove all cached locales. More...
 
void locale_cache_enabled (bool on)
 Turn locale caching ON. More...
 
bool locale_cache_enabled () const
 Get locale cache option. More...
 
bool use_ansi_encoding () const
 Check if by default ANSI encoding is selected or UTF-8 onces. More...
 
void use_ansi_encoding (bool enc)
 Select ANSI encodings as default system encoding rather then UTF-8 by default under Windows. More...
 
std::locale generate (std::string const &id) const
 Generate a locale with id id. More...
 
std::locale generate (std::locale const &base, std::string const &id) const
 Generate a locale with id id. More...
 
std::locale operator() (std::string const &id) const
 Shortcut to generate(id) More...
 
void set_option (std::string const &name, std::string const &value)
 Set backend specific option. More...
 
void clear_options ()
 Clear backend specific options. More...
 

Detailed Description

the major class used for locale generation

This class is used for specification of all parameters required for locale generation and caching. This class const member functions are thread safe if locale class implementation is thread safe.

Constructor & Destructor Documentation

boost::locale::generator::generator ( )

Create new generator using global localization_backend_manager.

boost::locale::generator::generator ( localization_backend_manager const &  )

Create new generator using specific localization_backend_manager.

boost::locale::generator::~generator ( )

Member Function Documentation

void boost::locale::generator::add_messages_domain ( std::string const &  domain)

Add a new domain of messages that would be generated.

It should be set in order to enable messages support.

Messages domain has following format: "name" or "name/encoding" where name is the base name of the "mo" file where the catalog is stored without ".mo" extension. For example for file /usr/share/locale/he/LC_MESSAGES/blog.mo it would be blog.

You can optionally specify the encoding of the keys in the sources by adding "/encoding_name" For example blog/cp1255.

If not defined all keys are assumed to be UTF-8 encoded.

Note
When you select a domain for the program using dgettext or message API, you do not specify the encoding part. So for example if the provided domain name was "blog/windows-1255" then for translation you should use dgettext("blog","Hello")
void boost::locale::generator::add_messages_path ( std::string const &  path)

Add a search path where dictionaries are looked in.

Note
  • Under the Windows platform the path is treated as a path in the locale's encoding so if you create locale "en_US.windows-1251" then path would be treated as cp1255, and if it is en_US.UTF-8 it is treated as UTF-8. File name is always opened with a wide file name as wide file names are the native file name on Windows.
  • Under POSIX platforms all paths passed as-is regardless of encoding as narrow encodings are the native encodings for POSIX platforms.
void boost::locale::generator::categories ( locale_category_type  cats)

Set types of facets that should be generated, default all.

locale_category_type boost::locale::generator::categories ( ) const

Get types of facets that should be generated, default all.

void boost::locale::generator::characters ( character_facet_type  chars)

Set the characters type for which the facets should be generated, default all supported.

character_facet_type boost::locale::generator::characters ( ) const

Get the characters type for which the facets should be generated, default all supported.

void boost::locale::generator::clear_cache ( )

Remove all cached locales.

void boost::locale::generator::clear_domains ( )

Remove all added domains from the list.

void boost::locale::generator::clear_options ( )

Clear backend specific options.

void boost::locale::generator::clear_paths ( )

Remove all added paths.

std::locale boost::locale::generator::generate ( std::string const &  id) const

Generate a locale with id id.

std::locale boost::locale::generator::generate ( std::locale const &  base,
std::string const &  id 
) const

Generate a locale with id id.

Use base as a locale to which all facets are added, instead of std::locale::classic().

void boost::locale::generator::locale_cache_enabled ( bool  on)

Turn locale caching ON.

bool boost::locale::generator::locale_cache_enabled ( ) const

Get locale cache option.

std::locale boost::locale::generator::operator() ( std::string const &  id) const
inline

Shortcut to generate(id)

References boost::range::generate().

void boost::locale::generator::set_default_messages_domain ( std::string const &  domain)

Set default message domain.

If this member was not called, the first added messages domain is used. If the domain domain is not added yet it is added.

void boost::locale::generator::set_option ( std::string const &  name,
std::string const &  value 
)

Set backend specific option.

bool boost::locale::generator::use_ansi_encoding ( ) const

Check if by default ANSI encoding is selected or UTF-8 onces.

The default is false.

void boost::locale::generator::use_ansi_encoding ( bool  enc)

Select ANSI encodings as default system encoding rather then UTF-8 by default under Windows.

The default is the most portable and most powerful encoding, UTF-8, but the user can select "system" one if dealing with legacy applications


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