#include "formula/string_utils.hpp"
#include "variable.hpp"
#include "config.hpp"
#include "log.hpp"
#include "gettext.hpp"
#include <algorithm>
#include <array>
#include <utility>
Go to the source code of this file.
Classes | |
class | utils::string_map_variable_set< T > |
Namespaces | |
utils | |
utils::detail | |
Macros | |
#define | GETTEXT_DOMAIN "wesnoth-lib" |
#define | ERR_NG LOG_STREAM(err, log_engine) |
#define | WRN_NG LOG_STREAM(warn, log_engine) |
Functions | |
static bool | two_dots (char a, char b) |
static std::string | do_interpolation (const std::string &str, const variable_set &set) |
std::string | utils::interpolate_variables_into_string (const std::string &str, const string_map *const symbols) |
Function which will interpolate variables, starting with '$' in the string 'str' with the equivalent symbols in the given symbol table. More... | |
std::string | utils::interpolate_variables_into_string (const std::string &str, const std::map< std::string, std::string > *const symbols) |
std::string | utils::interpolate_variables_into_string (const std::string &str, const variable_set &variables) |
t_string | utils::interpolate_variables_into_tstring (const t_string &str, const variable_set &variables) |
Function that does the same as the above, for t_stringS. More... | |
std::string | utils::format_conjunct_list (const t_string &empty, const std::vector< t_string > &elems) |
Format a conjunctive list. More... | |
std::string | utils::format_disjunct_list (const t_string &empty, const std::vector< t_string > &elems) |
Format a disjunctive list. More... | |
std::string | utils::format_timespan (std::time_t time, bool detailed=false) |
Formats a timespan into human-readable text for player authentication functions. More... | |
std::string | vgettext_impl (const char *domain, const char *msgid, const utils::string_map &symbols) |
Implementation functions for the VGETTEXT and VNGETTEXT macros. More... | |
std::string | vngettext_impl (const char *domain, const char *singular, const char *plural, int count, const utils::string_map &symbols) |
std::size_t | edit_distance_approx (std::string_view str_1, std::string_view str_2) noexcept |
Calculate the approximate edit distance of two strings. More... | |
Variables | |
static lg::log_domain | log_engine ("engine") |
std::string(* | utils::detail::evaluate_formula )(const std::string &formula) = nullptr |
#define ERR_NG LOG_STREAM(err, log_engine) |
Definition at line 31 of file string_utils.cpp.
#define GETTEXT_DOMAIN "wesnoth-lib" |
Definition at line 17 of file string_utils.cpp.
#define WRN_NG LOG_STREAM(warn, log_engine) |
Definition at line 32 of file string_utils.cpp.
|
static |
Definition at line 70 of file string_utils.cpp.
References c, config_attribute_value::empty(), ERR_NG, utils::detail::evaluate_formula, cursor::set(), two_dots(), and WRN_NG.
Referenced by utils::interpolate_variables_into_string().
|
noexcept |
Calculate the approximate edit distance of two strings.
str_1 | First string to compare. |
str_2 | Second string to compare. |
Definition at line 364 of file string_utils.cpp.
Referenced by events::map_command_handler< Worker >::dispatch().
|
static |
std::string vgettext_impl | ( | const char * | domain, |
const char * | msgid, | ||
const utils::string_map & | symbols | ||
) |
Implementation functions for the VGETTEXT and VNGETTEXT macros.
DO NOT USE DIRECTLY unless you really know what you're doing. See https://github.com/wesnoth/wesnoth/issues/2716 for more info.
Definition at line 344 of file string_utils.cpp.
References translation::dsgettext(), utils::interpolate_variables_into_string(), and wfl::msg().
Referenced by gui2::dialogs::mp_staging::pre_show().
std::string vngettext_impl | ( | const char * | domain, |
const char * | singular, | ||
const char * | plural, | ||
int | count, | ||
const utils::string_map & | symbols | ||
) |
Definition at line 353 of file string_utils.cpp.
References translation::dsngettext(), utils::interpolate_variables_into_string(), and wfl::msg().
|
static |