boost::locale::gnu_gettext::messages_info Struct Reference

This structure holds all information required for creating gnu-gettext message catalogs,. More...

`#include <boost/locale/gnu_gettext.hpp>`

## Classes

struct | domain
| This type represents GNU Gettext domain name for the messages. More...

## Public Types

typedef std::vector< domain > | domains_type
typedef std::function< std::vector< char >(const std::string &file_name, const std::string &encoding)> | callback_type

## Public Member Functions

std::vector< std::string > | get_catalog_paths () const
| Get paths to folders which may contain catalog files.

## Public Attributes

std::string | language
| The language we load the catalog for, like "ru", "en", "de".
std::string | country
| The country we load the catalog for, like "US", "IL".
std::string | variant
| Language variant, like "euro" so it would look for catalog like de_DE@euro.
std::string | encoding
std::string | locale_category
domains_type | domains
std::vector< std::string > | paths
callback_type | callback

## Detailed Description

This structure holds all information required for creating gnu-gettext message catalogs,.

The user is expected to set its parameters to load these catalogs correctly. This structure also allows providing functions for charset conversion. Note, you need to provide them, so this structure is not useful for wide characters without subclassing and it will also ignore gettext catalogs that use a charset different from encoding.

## Member Typedef Documentation

## callback_type

typedef std::function<std::vector<char>(const std::string& file_name, const std::string& encoding)> boost::locale::gnu_gettext::messages_info::callback_type

The callback for custom file system support. This callback should read the file named file_name encoded in encoding character set into std::vector<char> and return it.

- If the file does not exist, it should return an empty vector.
- If an error occurs during file read it should throw an exception.

Note
  The user should support only the encodings the locales are created for. So if the user uses only one encoding or the file system is encoding agnostic, he may ignore the encoding parameter.

## domains_type

typedef std::vector<domain> boost::locale::gnu_gettext::messages_info::domains_type

Type that defines a list of domains that are loaded The first one is the default one

## Member Data Documentation

## callback

callback_type boost::locale::gnu_gettext::messages_info::callback

The callback for handling custom file systems, if it is empty, the real OS file-system is being used.

## domains

domains_type boost::locale::gnu_gettext::messages_info::domains

Message domains - application name, like my_app. So files named my_app.mo would be loaded

## encoding

std::string boost::locale::gnu_gettext::messages_info::encoding

Required target charset encoding. Ignored for wide characters. For narrow, should specify the correct encoding required for this catalog

## locale_category

std::string boost::locale::gnu_gettext::messages_info::locale_category

Locale category, is set by default to LC_MESSAGES, but may be changed

## paths

std::vector<std::string> boost::locale::gnu_gettext::messages_info::paths

Paths to search files in. Under MS Windows it uses encoding parameter to convert them to wide OS specific paths.

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

- boost/locale/gnu_gettext.hpp

- © Copyright 2009-2012 Artyom Beilis, Distributed under the Boost Software License, Version 1.0.