44 std::string::const_iterator
plural_end()
const;
51 std::string::size_type
end_;
69 t_string_base(const std::
string&
string, const std::
string& textdomain);
70 t_string_base(const std::
string& sing, const std::
string& pl,
int count, const std::
string& textdomain);
91 bool operator==(const std::
string &) const;
92 bool operator==(const
char*
string) const;
104 std::string::size_type
size()
const {
return str().size(); }
106 operator const std::string&()
const {
return str(); }
107 const std::string&
str()
const;
108 const char*
c_str()
const {
return str().c_str(); }
156 t_string(const std::
string &
str, const std::
string &textdomain);
157 t_string(const std::
string& sing, const std::
string& pl,
int count, const std::
string& textdomain);
197 operator const std::string&()
const {
return get(); }
212 std::shared_ptr<const t_string_base>
val_;
std::string::const_iterator begin() const
std::string::const_iterator end() const
std::string::size_type begin_
std::string::const_iterator plural_end() const
const std::string & textdomain() const
walker(const t_string_base &string)
std::string::const_iterator plural_begin() const
bool translatable() const
const std::string & string_
std::string::size_type end_
Helper class for translatable strings.
bool operator!=(const char *that) const
bool last_untranslatable_
std::string::size_type size() const
t_string_base(t_string_base &&) noexcept=default
static std::map< std::string, unsigned int > textdomain_to_id
bool operator!=(const std::string &that) const
std::string translated_value_
std::string to_serialized() const
bool operator==(const t_string_base &) const
bool translatable() const
std::string base_str() const
const std::string & value() const
bool operator<(const t_string_base &string) const
static std::vector< std::string > id_to_textdomain
~t_string_base()
Default implementation, but defined out-of-line for efficiency reasons.
unsigned translation_timestamp_
std::size_t hash_value() const
const std::string & str() const
static t_string_base from_serialized(const std::string &string)
const char * c_str() const
static void reset_translations()
static t_string from_serialized(const std::string &string)
static void add_textdomain(const std::string &name, const std::string &path)
t_string_base::walker walker
void swap(t_string &other)
const std::string & value() const
bool operator==(const t_string &o) const
bool translatable() const
t_string operator+(const t_string &o) const
~t_string()
Default implementation, but defined out-of-line for efficiency reasons.
t_string & operator+=(const t_string &o)
std::shared_ptr< const t_string_base > val_
t_string & operator+=(const std::string &o)
bool operator==(const std::string &o) const
t_string operator+(const char *o) const
t_string(t_string &&) noexcept=default
t_string operator+(const std::string &o) const
bool operator==(const char *o) const
bool operator!=(const std::string &o) const
const std::string & str() const
std::string base_str() const
std::string to_serialized() const
void increase_impl(const T &other)
t_string & operator+=(const char *o)
const t_string_base & get() const
t_string()
Default implementation, but defined out-of-line for efficiency reasons.
const char * c_str() const
bool operator!=(const char *o) const
std::string::size_type size() const
bool operator<(const t_string &o) const
bool operator!=(const t_string &o) const
static map_location::direction nw
bool operator==(const std::string &a, const t_string &b)
bool operator!=(const std::string &a, const t_string &b)
void swap(t_string &lhs, t_string &rhs)
Implement non-member swap function for std::swap (calls t_string::swap).
t_string operator+(const std::string &a, const t_string &b)
std::size_t hash_value(const t_string_base &str)
std::ostream & operator<<(std::ostream &, const t_string_base &)