chrcatid_t_blank and langid_t_blank are static members of their respective structures now

This commit is contained in:
2016-10-06 23:17:24 +02:00
parent e4e8609a00
commit dddc2d5794
8 changed files with 47 additions and 19 deletions

View File

@@ -45,7 +45,7 @@ namespace ZRCola {
/// Character category ID type
/// Two letter abbreviation, non-terminated
///
struct chrcatid_t {
struct ZRCOLA_API chrcatid_t {
char data[2];
inline chrcatid_t& operator=(const chrcatid_t &src)
@@ -60,15 +60,14 @@ namespace ZRCola {
data[1] = (data[0] = src[0]) != 0 ? src[1] : 0;
return *this;
}
///
/// Blank character category
///
static const chrcatid_t blank;
};
///
/// Blank character category
///
const chrcatid_t chrcatid_t_blank = {};
///
/// Compares two character category IDs
///
@@ -251,14 +250,14 @@ namespace ZRCola {
///
/// \returns
/// - Character category if character found
/// - `ZRCola::chrcatid_t_blank` otherwise
/// - `ZRCola::chrcatid_t::blank` otherwise
///
inline chrcatid_t GetCharCat(wchar_t c) const
{
char _chr[sizeof(character)];
((character *)_chr)->chr = c;
indexChar::size_type start;
return idxChr.find(*((character *)_chr), start) ? idxChr[start].cat : chrcatid_t_blank;
return idxChr.find(*((character *)_chr), start) ? idxChr[start].cat : chrcatid_t::blank;
}
};

View File

@@ -76,7 +76,7 @@ namespace ZRCola {
/// Language ID type
/// Three letter abbreviation, zero terminated
///
struct langid_t {
struct ZRCOLA_API langid_t {
char data[4];
inline langid_t& operator=(const langid_t &src)
@@ -99,15 +99,14 @@ namespace ZRCola {
src[3] : 0;
return *this;
}
///
/// Blank language ID
///
static const langid_t blank;
};
///
/// Blank language ID
///
const langid_t langid_t_blank = {};
///
/// Compares two language IDs
///

View File

@@ -224,7 +224,7 @@ namespace ZRCola {
///
inline void Decompose(_In_z_count_(inputMax) const wchar_t* input, _In_ size_t inputMax, _Out_ std::wstring &output, _Out_opt_ std::vector<mapping>* map = NULL) const
{
Decompose(input, inputMax, NULL, langid_t_blank, output, map);
Decompose(input, inputMax, NULL, langid_t::blank, output, map);
}
///