21 template <
class T, std::enable_if_t<std::is_arithmetic_v<T>
22 && !std::is_same_v<T,
bool>,
int> = 0>
24 if constexpr (std::is_integral_v<T> && std::is_signed_v<T>) {
40 template <
class T, std::enable_if_t<std::is_arithmetic_v<T>
41 && !std::is_same_v<T,
bool>,
int> = 0>
43 if constexpr (std::is_integral_v<T> && std::is_signed_v<T>) {
62 const std::vector<StrFormatValue>& args);
69 const std::vector<std::string>& args);
72 const std::string& format,
73 const std::string& timezone);
76 const std::string& regex_pattern);
79 const std::string& separator);
98 const std::string& format_mode =
"",
99 double mintick = 0.0);
102 const std::vector<ScriptStrFormatValue>&);
105 const ScriptString& format_mode = {},
double mintick = 0.0);
110template <
class Text, std::enable_if_t<std::is_same_v<std::decay_t<Text>, ScriptString>,
int> = 0>
114template <
class Text, std::enable_if_t<std::is_same_v<std::decay_t<Text>, ScriptString>,
int> = 0>
118template <
class Text, std::enable_if_t<std::is_same_v<std::decay_t<Text>, ScriptString>,
int> = 0>
122template <
class Text, std::enable_if_t<std::is_same_v<std::decay_t<Text>, ScriptString>,
int> = 0>
127template <
class Text, std::enable_if_t<std::is_same_v<std::decay_t<Text>, ScriptString>,
int> = 0>
129 return str_split(std::forward<Text>(
source), std::string_view(separator));
131template <
class Text, std::enable_if_t<std::is_same_v<std::decay_t<Text>, ScriptString>,
int> = 0>
133 return str_split(std::forward<Text>(
source), std::string_view(separator));
140 const std::vector<std::string>& args) {
145 const std::string& format,
146 const std::string& timezone) {
151 const std::string& regex_pattern) {
156 const std::string& separator) {
161 const std::string& format_mode =
"",
162 double mintick = 0.0) {
166template <
class Text, std::enable_if_t<std::is_same_v<std::decay_t<Text>, ScriptString>,
int> = 0>
170template <
class Text,
class Separator,
171 std::enable_if_t<std::is_same_v<std::decay_t<Text>, ScriptString>,
int> = 0>
173 return str_split(std::forward<Text>(
source), std::forward<Separator>(separator));
176 const ScriptString& format = {},
double mintick = 0.0) {
static detail::o1::Store & current()
std::string str_format(const std::string &fmt, const std::vector< std::string > &args)
ScriptString script_str_format_values(const ScriptString &, const std::vector< ScriptStrFormatValue > &)
std::string str_tostring(double value, const std::string &format_mode="", double mintick=0.0)
std::vector< std::string > pine_str_split(const std::string &source, const std::string &separator)
std::vector< std::string > str_split(const std::string &source, const std::string &separator)
ScriptString script_str_format(const ScriptString &, const std::vector< ScriptString > &)
std::string str_format_values(const std::string &fmt, const std::vector< StrFormatValue > &args)
std::string pine_str_format(const std::string &fmt, const std::vector< std::string > &args)
std::string pine_str_tostring(double value, const std::string &format_mode="", double mintick=0.0)
std::string pine_str_format_time(long long timestamp_ms, const std::string &format, const std::string &timezone)
std::string str_match(const std::string &source, const std::string ®ex_pattern)
std::string str_format_time(long long timestamp_ms, const std::string &format, const std::string &timezone)
std::string pine_str_match(const std::string &source, const std::string ®ex_pattern)