|
Time Shield Library
C++ library for working with time
|
A comprehensive set of functions for parsing and converting date and time strings. More...
Namespaces | |
| namespace | time_shield::detail |
Functions | |
| bool | time_shield::try_parse_month (const std::string &month, int &value) |
| Try parse month name token into month index [1..12]. | |
| int | time_shield::parse_month (const std::string &month) |
| Parse month name token into month index [1..12]. | |
| bool | time_shield::try_parse_month (std::string_view month, int &value) |
| Try parse month name token into month index [1..12], string_view overload. | |
| int | time_shield::parse_month (std::string_view month) |
| Parse month name token into month index [1..12], string_view overload. | |
| template<class T = Month> | |
| T | time_shield::parse_month_enum (const std::string &month) |
| Parse month name token into Month enum (throwing). | |
| template<class T = Month> | |
| bool | time_shield::try_parse_month_enum (const std::string &month, T &value) |
| Try parse month name token into Month enum (or any T). | |
| template<class T = Month> | |
| T | time_shield::parse_month_enum (std::string_view month) |
| Parse month name token into Month enum (throwing), string_view overload. | |
| template<class T = Month> | |
| bool | time_shield::try_parse_month_enum (std::string_view month, T &value) |
| Try parse month name token into Month enum (or any T), string_view overload. | |
| bool | time_shield::try_get_month_index (const std::string &month, int &value) |
| Try parse month name token into month index [1..12]. | |
| int | time_shield::get_month_index (const std::string &month) |
| Parse month name token into month index [1..12]. | |
| Month | time_shield::get_month_index_enum (const std::string &month) |
| Parse month name token into Month enum. | |
| bool | time_shield::try_get_month_index (std::string_view month, int &value) |
| Try parse month name token into month index [1..12], string_view overload. | |
| int | time_shield::get_month_index (std::string_view month) |
| Parse month name token into month index [1..12], string_view overload. | |
| Month | time_shield::get_month_index_enum (std::string_view month) |
| Parse month name token into Month enum, string_view overload. | |
| template<class T = Month> | |
| T | time_shield::get_month_number (const std::string &month) |
| Get the month number by name (throwing). | |
| template<class T = Month> | |
| T | time_shield::month_of_year (const std::string &month) |
| Alias for get_month_number (throwing). | |
| template<class T = Month> | |
| bool | time_shield::try_get_month_number (const std::string &month, T &value) |
| Try get the month number by name, with output parameter. | |
| template<class T = Month> | |
| bool | time_shield::get_month_number (const std::string &month, T &value) |
| Alias for try_get_month_number (output parameter). | |
| template<class T = Month> | |
| bool | time_shield::month_of_year (const std::string &month, T &value) |
| Alias for try_get_month_number (output parameter). | |
| template<class T = Month> | |
| T | time_shield::get_month_number (std::string_view month) |
| Get the month number by name (throwing), string_view overload. | |
| template<class T = Month> | |
| T | time_shield::month_of_year (std::string_view month) |
| Alias for get_month_number (throwing), string_view overload. | |
| template<class T = Month> | |
| bool | time_shield::try_get_month_number (std::string_view month, T &value) |
| Try get the month number by name, string_view overload. | |
| template<class T = Month> | |
| bool | time_shield::get_month_number (std::string_view month, T &value) |
| Alias for try_get_month_number, string_view overload. | |
| template<class T = Month> | |
| bool | time_shield::month_of_year (std::string_view month, T &value) |
| Alias for try_get_month_number, string_view overload. | |
| template<class T = Month> | |
| T | time_shield::get_month_number (const char *month) |
| Get the month number by name (throwing), const char* overload. | |
| template<class T = Month> | |
| bool | time_shield::try_get_month_number (const char *month, T &value) |
| Try get the month number by name, const char* overload. | |
| template<class T = Month> | |
| T | time_shield::month_of_year (const char *month) |
| Alias for get_month_number (throwing), const char* overload. | |
| template<class T = Month> | |
| bool | time_shield::get_month_number (const char *month, T &value) |
| Alias for try_get_month_number (output parameter), const char* overload. | |
| template<class T = Month> | |
| bool | time_shield::month_of_year (const char *month, T &value) |
| Alias for try_get_month_number (output parameter), const char* overload. | |
| bool | time_shield::parse_time_zone (const char *data, std::size_t length, TimeZoneStruct &tz) noexcept |
| Parse timezone character buffer into TimeZoneStruct. | |
| bool | time_shield::parse_time_zone (const std::string &tz_str, TimeZoneStruct &tz) noexcept |
| Parse timezone string into TimeZoneStruct. | |
| bool | time_shield::parse_tz (const std::string &tz_str, TimeZoneStruct &tz) noexcept |
| Alias for parse_time_zone. | |
| bool | time_shield::parse_tz (const char *data, std::size_t length, TimeZoneStruct &tz) noexcept |
| Alias for parse_time_zone (buffer overload). | |
| bool | time_shield::parse_iso8601 (const char *input, std::size_t length, DateTimeStruct &dt, TimeZoneStruct &tz) noexcept |
| Parse ISO8601 character buffer into DateTimeStruct and TimeZoneStruct. | |
| bool | time_shield::parse_iso8601 (const std::string &input, DateTimeStruct &dt, TimeZoneStruct &tz) noexcept |
| Parse ISO8601 string into DateTimeStruct and TimeZoneStruct. | |
| bool | time_shield::str_to_ts (const std::string &str, ts_t &ts) |
| Convert an ISO8601 string to a timestamp (ts_t). | |
| bool | time_shield::str_to_ts (const char *data, std::size_t length, ts_t &ts) |
| Parse ISO8601 character buffer and convert to timestamp (seconds). | |
| bool | time_shield::str_to_ts_ms (const std::string &str, ts_ms_t &ts) |
| Convert an ISO8601 string to a millisecond timestamp (ts_ms_t). | |
| bool | time_shield::str_to_ts_ms (const char *data, std::size_t length, ts_ms_t &ts) |
| Convert ISO8601 character buffer to millisecond timestamp (ts_ms_t). | |
| bool | time_shield::str_to_fts (const std::string &str, fts_t &ts) |
| Convert an ISO8601 string to a floating-point timestamp (fts_t). | |
| bool | time_shield::str_to_fts (const char *data, std::size_t length, fts_t &ts) |
| Convert ISO8601 character buffer to floating-point timestamp (fts_t). | |
| bool | time_shield::is_workday (const std::string &str) |
| Parse ISO8601 string and check if it falls on a workday (seconds precision). | |
| bool | time_shield::is_workday_ms (const std::string &str) |
| Parse ISO8601 string and check if it falls on a workday (milliseconds precision). | |
| bool | time_shield::workday (const std::string &str) |
| Alias for is_workday(const std::string&). | |
| bool | time_shield::workday_ms (const std::string &str) |
| Alias for is_workday_ms(const std::string&). | |
| bool | time_shield::is_first_workday_of_month (const std::string &str) |
| Parse ISO8601 string and check if it is the first workday of its month (seconds). | |
| bool | time_shield::is_first_workday_of_month_ms (const std::string &str) |
| Parse an ISO8601 string and check if it is the first workday of its month (millisecond precision). | |
| bool | time_shield::is_last_workday_of_month (const std::string &str) |
| Parse an ISO8601 string and check if it is the last workday of its month (seconds). | |
| bool | time_shield::is_last_workday_of_month_ms (const std::string &str) |
| Parse an ISO8601 string and check if it is the last workday of its month (millisecond). | |
| bool | time_shield::is_within_first_workdays_of_month (const std::string &str, int count) |
| Parse an ISO8601 string and check if it falls within the first N workdays of its month. | |
| bool | time_shield::is_within_first_workdays_of_month_ms (const std::string &str, int count) |
| Parse an ISO8601 string and check if it falls within the first N workdays of its month (millisecond precision). | |
| bool | time_shield::is_within_last_workdays_of_month (const std::string &str, int count) |
| Parse ISO8601 string and check if it is within last N workdays of its month (seconds). | |
| bool | time_shield::is_within_last_workdays_of_month_ms (const std::string &str, int count) |
| Parse ISO8601 string and check if it is within last N workdays of its month (milliseconds). | |
| ts_t | time_shield::ts (const char *str) |
| Convert ISO8601 C-string to timestamp (seconds). | |
| ts_t | time_shield::ts (const char *data, std::size_t length) |
| Convert ISO8601 character buffer to timestamp (seconds). | |
| ts_ms_t | time_shield::ts_ms (const char *str) |
| Convert ISO8601 C-string to timestamp (milliseconds). | |
| ts_ms_t | time_shield::ts_ms (const char *data, std::size_t length) |
| Convert ISO8601 character buffer to timestamp (milliseconds). | |
| fts_t | time_shield::fts (const char *str) |
| Convert ISO8601 C-string to floating timestamp (seconds). | |
| fts_t | time_shield::fts (const char *data, std::size_t length) |
| Convert ISO8601 character buffer to floating timestamp (seconds). | |
| ts_t | time_shield::ts (const std::string &str) |
| Convert an ISO8601 string to a timestamp (ts_t). | |
| ts_ms_t | time_shield::ts_ms (const std::string &str) |
| Convert an ISO8601 string to a millisecond timestamp (ts_ms_t). | |
| fts_t | time_shield::fts (const std::string &str) |
| Convert an ISO8601 string to a floating-point timestamp (fts_t). | |
| template<class T = int> | |
| bool | time_shield::sec_of_day (const std::string &str, T &sec) |
| Parse time of day string to seconds of day. | |
| template<class T = int> | |
| T | time_shield::sec_of_day (const std::string &str) |
| Convert time of day string to seconds of day. | |
| int | time_shield::get_month_number (string month) |
| Get the month number by name. | |
| int | time_shield::month_of_year (string month) |
| Alias for get_month_number function. | |
| bool | time_shield::try_get_month_number (string month, int &value) |
| Get the month number by name, with output parameter. | |
| bool | time_shield::get_month_number (string month, int &value) |
| Alias for try_get_month_number function. | |
| bool | time_shield::month_of_year (string month, int &value) |
| Alias for try_get_month_number function. | |
| bool | time_shield::parse_time_zone (string tz_str, TimeZoneStruct &tz) |
| Parse a time zone string into a TimeZoneStruct. | |
| bool | time_shield::parse_tz (string tz_str, TimeZoneStruct &tz) |
| Alias for parse_time_zone function. | |
| bool | time_shield::parse_iso8601 (string input_str, DateTimeStruct &dt, TimeZoneStruct &tz) |
| Parse a date and time string in ISO8601 format. | |
| bool | time_shield::str_to_ts (string str, long &ts) |
| Convert an ISO8601 string to a timestamp (ts_t). | |
| bool | time_shield::str_to_ts_ms (string str, long &ts) |
| Convert an ISO8601 string to a millisecond timestamp (ts_ms_t). | |
| bool | time_shield::is_workday (string str) |
| Parse ISO8601 string and check for workday using second precision. | |
| bool | time_shield::workday (string str) |
| Alias for is_workday. | |
| bool | time_shield::is_workday_ms (string str) |
| Parse ISO8601 string and check for workday using millisecond precision. | |
| bool | time_shield::workday_ms (string str) |
| Alias for is_workday_ms. | |
| bool | time_shield::is_first_workday_of_month (string str) |
| Parse ISO8601 string and check for the first workday of the month using second precision. | |
| bool | time_shield::is_first_workday_of_month_ms (string str) |
| Parse ISO8601 string and check for the first workday of the month using millisecond precision. | |
| bool | time_shield::is_within_first_workdays_of_month (string str, int count) |
| Parse ISO8601 string and check if it falls within the first N workdays of the month using second precision. | |
| bool | time_shield::is_within_first_workdays_of_month_ms (string str, int count) |
| Parse ISO8601 string and check if it falls within the first N workdays of the month using millisecond precision. | |
| bool | time_shield::is_last_workday_of_month (string str) |
| Parse ISO8601 string and check for the last workday of the month using second precision. | |
| bool | time_shield::is_last_workday_of_month_ms (string str) |
| Parse ISO8601 string and check for the last workday of the month using millisecond precision. | |
| bool | time_shield::is_within_last_workdays_of_month (string str, int count) |
| Parse ISO8601 string and check if it falls within the last N workdays of the month using second precision. | |
| bool | time_shield::is_within_last_workdays_of_month_ms (string str, int count) |
| Parse ISO8601 string and check if it falls within the last N workdays of the month using millisecond precision. | |
| long | time_shield::start_of_first_workday_month (string str) |
| Parse ISO8601 string and return start of the first workday of that month in seconds. | |
| long | time_shield::start_of_first_workday_month_ms (string str) |
| Parse ISO8601 string and return start of the first workday of that month in milliseconds. | |
| long | time_shield::end_of_first_workday_month (string str) |
| Parse ISO8601 string and return end of the first workday of that month in seconds. | |
| long | time_shield::end_of_first_workday_month_ms (string str) |
| Parse ISO8601 string and return end of the first workday of that month in milliseconds. | |
| long | time_shield::start_of_last_workday_month (string str) |
| Parse ISO8601 string and return start of the last workday of that month in seconds. | |
| long | time_shield::start_of_last_workday_month_ms (string str) |
| Parse ISO8601 string and return start of the last workday of that month in milliseconds. | |
| long | time_shield::end_of_last_workday_month (string str) |
| Parse ISO8601 string and return end of the last workday of that month in seconds. | |
| long | time_shield::end_of_last_workday_month_ms (string str) |
| Parse ISO8601 string and return end of the last workday of that month in milliseconds. | |
| bool | time_shield::str_to_fts (string str, double &ts) |
| Convert an ISO8601 string to a floating-point timestamp (fts_t). | |
| long | time_shield::ts (string str) |
| Convert an ISO8601 string to a timestamp (ts_t). | |
| long | time_shield::ts_ms (string str) |
| Convert an ISO8601 string to a millisecond timestamp (ts_ms_t). | |
| double | time_shield::fts (string str) |
| Convert an ISO8601 string to a floating-point timestamp (fts_t). | |
| int | time_shield::sec_of_day (string str) |
| Convert string with time of day to second of day. | |
A comprehensive set of functions for parsing and converting date and time strings.
This module provides utilities for parsing date and time strings in ISO8601 format, extracting date components, and converting them into various timestamp formats.
| long time_shield::end_of_first_workday_month | ( | string | str | ) |
Parse ISO8601 string and return end of the first workday of that month in seconds.
| str | ISO8601 formatted string. |
Definition at line 335 of file time_parser.mqh.
| long time_shield::end_of_first_workday_month_ms | ( | string | str | ) |
Parse ISO8601 string and return end of the first workday of that month in milliseconds.
| str | ISO8601 formatted string. |
Definition at line 345 of file time_parser.mqh.
| long time_shield::end_of_last_workday_month | ( | string | str | ) |
Parse ISO8601 string and return end of the last workday of that month in seconds.
| str | ISO8601 formatted string. |
Definition at line 375 of file time_parser.mqh.
| long time_shield::end_of_last_workday_month_ms | ( | string | str | ) |
Parse ISO8601 string and return end of the last workday of that month in milliseconds.
| str | ISO8601 formatted string. |
Definition at line 385 of file time_parser.mqh.
|
inline |
Convert ISO8601 character buffer to floating timestamp (seconds).
Does not require null terminator. Returns 0 on failure.
| data | Pointer to character buffer. |
| length | Number of characters in buffer. |
Definition at line 1074 of file time_parser.hpp.
|
inline |
Convert ISO8601 C-string to floating timestamp (seconds).
Returns 0 on failure.
| str | C-style string with ISO8601 timestamp, may be nullptr. |
Definition at line 1063 of file time_parser.hpp.
|
inline |
Convert an ISO8601 string to a floating-point timestamp (fts_t).
This function parses a string in ISO8601 format and converts it to a floating-point timestamp. If the parsing fails, it returns 0.
| str | The ISO8601 string. |
Definition at line 1111 of file time_parser.hpp.
| double time_shield::fts | ( | string | str | ) |
Convert an ISO8601 string to a floating-point timestamp (fts_t).
Returns 0.0 if parsing fails.
| str | The ISO8601 string. |
Definition at line 427 of file time_parser.mqh.
|
inline |
Parse month name token into month index [1..12].
| month | Month token. |
| std::invalid_argument | if token is invalid. |
Definition at line 400 of file time_parser.hpp.
|
inline |
Parse month name token into month index [1..12], string_view overload.
Definition at line 419 of file time_parser.hpp.
|
inline |
Parse month name token into Month enum.
| month | Month token. |
| std::invalid_argument | if token is invalid. |
Definition at line 408 of file time_parser.hpp.
|
inline |
Parse month name token into Month enum, string_view overload.
Definition at line 424 of file time_parser.hpp.
|
inline |
Get the month number by name (throwing), const char* overload.
| T | Return type, default is Month enum. |
| month | Month token C-string. |
| std::invalid_argument | if token is invalid. |
Definition at line 509 of file time_parser.hpp.
|
inline |
Alias for try_get_month_number (output parameter), const char* overload.
Definition at line 539 of file time_parser.hpp.
|
inline |
Get the month number by name (throwing).
| T | Return type, default is Month enum. |
| month | Month token. |
| std::invalid_argument | if token is invalid. |
Definition at line 437 of file time_parser.hpp.
|
inline |
Alias for try_get_month_number (output parameter).
Definition at line 459 of file time_parser.hpp.
|
inline |
Get the month number by name (throwing), string_view overload.
Definition at line 472 of file time_parser.hpp.
|
inline |
Alias for try_get_month_number, string_view overload.
Definition at line 490 of file time_parser.hpp.
| int time_shield::get_month_number | ( | string | month | ) |
Get the month number by name.
| month | The name of the month as a string. |
Definition at line 39 of file time_parser.mqh.
| bool time_shield::get_month_number | ( | string | month, |
| int & | value ) |
Alias for try_get_month_number function.
Try get the month number by name, with output parameter.
| T | Output type, default is Month enum. |
| month | Month token. |
| value | Output month number (1..12) converted to T. |
Definition at line 80 of file time_parser.mqh.
|
inline |
Parse ISO8601 string and check if it is the first workday of its month (seconds).
| str | ISO8601 formatted string. |
Definition at line 935 of file time_parser.hpp.
| bool time_shield::is_first_workday_of_month | ( | string | str | ) |
Parse ISO8601 string and check for the first workday of the month using second precision.
| str | ISO8601 formatted string. |
Definition at line 231 of file time_parser.mqh.
|
inline |
Parse an ISO8601 string and check if it is the first workday of its month (millisecond precision).
| str | ISO8601 formatted string. |
Definition at line 944 of file time_parser.hpp.
| bool time_shield::is_first_workday_of_month_ms | ( | string | str | ) |
Parse ISO8601 string and check for the first workday of the month using millisecond precision.
| str | ISO8601 formatted string. |
Definition at line 241 of file time_parser.mqh.
|
inline |
Parse an ISO8601 string and check if it is the last workday of its month (seconds).
| str | ISO8601 formatted string. |
Definition at line 953 of file time_parser.hpp.
| bool time_shield::is_last_workday_of_month | ( | string | str | ) |
Parse ISO8601 string and check for the last workday of the month using second precision.
| str | ISO8601 formatted string. |
Definition at line 273 of file time_parser.mqh.
|
inline |
Parse an ISO8601 string and check if it is the last workday of its month (millisecond).
| str | ISO8601 formatted string. |
Definition at line 962 of file time_parser.hpp.
| bool time_shield::is_last_workday_of_month_ms | ( | string | str | ) |
Parse ISO8601 string and check for the last workday of the month using millisecond precision.
| str | ISO8601 formatted string. |
Definition at line 283 of file time_parser.mqh.
|
inline |
Parse an ISO8601 string and check if it falls within the first N workdays of its month.
| str | ISO8601 formatted string. |
| count | Number of leading workdays to test against. |
Definition at line 972 of file time_parser.hpp.
| bool time_shield::is_within_first_workdays_of_month | ( | string | str, |
| int | count ) |
Parse ISO8601 string and check if it falls within the first N workdays of the month using second precision.
| str | ISO8601 formatted string. |
| count | Number of leading workdays to test. |
Definition at line 252 of file time_parser.mqh.
|
inline |
Parse an ISO8601 string and check if it falls within the first N workdays of its month (millisecond precision).
| str | ISO8601 formatted string. |
| count | Number of leading workdays to test against. |
Definition at line 982 of file time_parser.hpp.
| bool time_shield::is_within_first_workdays_of_month_ms | ( | string | str, |
| int | count ) |
Parse ISO8601 string and check if it falls within the first N workdays of the month using millisecond precision.
| str | ISO8601 formatted string. |
| count | Number of leading workdays to test. |
Definition at line 263 of file time_parser.mqh.
|
inline |
Parse ISO8601 string and check if it is within last N workdays of its month (seconds).
| str | ISO8601 formatted string. |
| count | Number of trailing workdays to test against. |
Definition at line 992 of file time_parser.hpp.
| bool time_shield::is_within_last_workdays_of_month | ( | string | str, |
| int | count ) |
Parse ISO8601 string and check if it falls within the last N workdays of the month using second precision.
| str | ISO8601 formatted string. |
| count | Number of trailing workdays to test. |
Definition at line 294 of file time_parser.mqh.
|
inline |
Parse ISO8601 string and check if it is within last N workdays of its month (milliseconds).
| str | ISO8601 formatted string. |
| count | Number of trailing workdays to test against. |
Definition at line 1002 of file time_parser.hpp.
| bool time_shield::is_within_last_workdays_of_month_ms | ( | string | str, |
| int | count ) |
Parse ISO8601 string and check if it falls within the last N workdays of the month using millisecond precision.
| str | ISO8601 formatted string. |
| count | Number of trailing workdays to test. |
Definition at line 305 of file time_parser.mqh.
|
inline |
Parse ISO8601 string and check if it falls on a workday (seconds precision).
Definition at line 907 of file time_parser.hpp.
| bool time_shield::is_workday | ( | string | str | ) |
Parse ISO8601 string and check for workday using second precision.
| str | ISO8601 formatted string. |
Definition at line 203 of file time_parser.mqh.
|
inline |
Parse ISO8601 string and check if it falls on a workday (milliseconds precision).
Definition at line 914 of file time_parser.hpp.
| bool time_shield::is_workday_ms | ( | string | str | ) |
Parse ISO8601 string and check for workday using millisecond precision.
| str | ISO8601 formatted string. |
Definition at line 217 of file time_parser.mqh.
|
inline |
Alias for get_month_number (throwing), const char* overload.
Definition at line 533 of file time_parser.hpp.
|
inline |
Alias for try_get_month_number (output parameter), const char* overload.
Definition at line 545 of file time_parser.hpp.
|
inline |
Alias for get_month_number (throwing).
Definition at line 443 of file time_parser.hpp.
|
inline |
Alias for try_get_month_number (output parameter).
Definition at line 465 of file time_parser.hpp.
|
inline |
Alias for get_month_number (throwing), string_view overload.
Definition at line 478 of file time_parser.hpp.
|
inline |
Alias for try_get_month_number, string_view overload.
Definition at line 496 of file time_parser.hpp.
| int time_shield::month_of_year | ( | string | month | ) |
Alias for get_month_number function.
Get the month number by name (throwing).
| T | Return type, default is Month enum. |
| month | Month token. |
| std::invalid_argument | if token is invalid. |
Definition at line 62 of file time_parser.mqh.
| bool time_shield::month_of_year | ( | string | month, |
| int & | value ) |
Alias for try_get_month_number function.
Try get the month number by name, with output parameter.
| T | Output type, default is Month enum. |
| month | Month token. |
| value | Output month number (1..12) converted to T. |
Definition at line 84 of file time_parser.mqh.
|
inlinenoexcept |
Parse ISO8601 character buffer into DateTimeStruct and TimeZoneStruct.
Supported inputs:
Date separators supported: '-', '/', '.' (as in original regex).
| input | Pointer to buffer (may be not null-terminated). |
| length | Buffer length. |
| dt | Output DateTimeStruct (filled). On success, dt is always initialized. |
| tz | Output TimeZoneStruct (filled). If timezone is not present, UTC is used. |
Definition at line 640 of file time_parser.hpp.
|
inlinenoexcept |
Parse ISO8601 string into DateTimeStruct and TimeZoneStruct.
Wrapper over parse_iso8601(const char*, std::size_t, DateTimeStruct&, TimeZoneStruct&).
Definition at line 809 of file time_parser.hpp.
| bool time_shield::parse_iso8601 | ( | string | input_str, |
| DateTimeStruct & | dt, | ||
| TimeZoneStruct & | tz ) |
Parse a date and time string in ISO8601 format.
| input_str | The input string in ISO8601 format. |
| dt | The DateTimeStruct to be filled with parsed values. |
| tz | The TimeZoneStruct to be filled with parsed time zone. |
Definition at line 117 of file time_parser.mqh.
|
inline |
Parse month name token into month index [1..12].
| month | Month token. |
| std::invalid_argument | if token is invalid. |
Definition at line 314 of file time_parser.hpp.
|
inline |
Parse month name token into month index [1..12], string_view overload.
| month | Month token view. |
| std::invalid_argument | if token is invalid. |
Definition at line 331 of file time_parser.hpp.
|
inline |
|
inline |
Parse month name token into Month enum (throwing), string_view overload.
| T | Return type, default is Month enum. |
| month | Month token view. |
| std::invalid_argument | if token is invalid. |
Definition at line 368 of file time_parser.hpp.
|
inlinenoexcept |
Parse timezone character buffer into TimeZoneStruct.
Supported formats:
| data | Pointer to timezone buffer (may be not null-terminated). |
| length | Number of characters in buffer. |
| tz | Output time zone struct. |
Definition at line 562 of file time_parser.hpp.
|
inlinenoexcept |
Parse timezone string into TimeZoneStruct.
Wrapper over parse_time_zone(const char*, std::size_t, TimeZoneStruct&).
Definition at line 606 of file time_parser.hpp.
| bool time_shield::parse_time_zone | ( | string | tz_str, |
| TimeZoneStruct & | tz ) |
Parse a time zone string into a TimeZoneStruct.
Parses a time zone string in the format "+hh:mm", "-hh:mm" or "Z". If the string is empty or "Z", UTC is assumed.
| tz_str | The time zone string. |
| tz | The TimeZoneStruct to be filled. |
Definition at line 94 of file time_parser.mqh.
|
inlinenoexcept |
Alias for parse_time_zone (buffer overload).
Definition at line 616 of file time_parser.hpp.
|
inlinenoexcept |
Alias for parse_time_zone.
Definition at line 611 of file time_parser.hpp.
| bool time_shield::parse_tz | ( | string | tz_str, |
| TimeZoneStruct & | tz ) |
Alias for parse_time_zone function.
Parse timezone character buffer into TimeZoneStruct.
Supported formats:
| data | Pointer to timezone buffer (may be not null-terminated). |
| length | Number of characters in buffer. |
| tz | Output time zone struct. |
Definition at line 108 of file time_parser.mqh.
|
inline |
Convert time of day string to seconds of day.
Supported formats:
| T | Return type (default int). |
| str | Time of day as string. |
Definition at line 1180 of file time_parser.hpp.
|
inline |
Parse time of day string to seconds of day.
Supported formats:
| T | Return type (default int). |
| str | Time of day as string. |
| sec | Parsed seconds of day on success. |
Definition at line 1131 of file time_parser.hpp.
| int time_shield::sec_of_day | ( | string | str | ) |
Convert string with time of day to second of day.
Supports formats:
| str | Time in string format |
Definition at line 443 of file time_parser.mqh.
| long time_shield::start_of_first_workday_month | ( | string | str | ) |
Parse ISO8601 string and return start of the first workday of that month in seconds.
| str | ISO8601 formatted string. |
Definition at line 315 of file time_parser.mqh.
| long time_shield::start_of_first_workday_month_ms | ( | string | str | ) |
Parse ISO8601 string and return start of the first workday of that month in milliseconds.
| str | ISO8601 formatted string. |
Definition at line 325 of file time_parser.mqh.
| long time_shield::start_of_last_workday_month | ( | string | str | ) |
Parse ISO8601 string and return start of the last workday of that month in seconds.
| str | ISO8601 formatted string. |
Definition at line 355 of file time_parser.mqh.
| long time_shield::start_of_last_workday_month_ms | ( | string | str | ) |
Parse ISO8601 string and return start of the last workday of that month in milliseconds.
| str | ISO8601 formatted string. |
Definition at line 365 of file time_parser.mqh.
|
inline |
Convert ISO8601 character buffer to floating-point timestamp (fts_t).
| data | Pointer to character buffer. |
| length | Number of characters in buffer. |
| ts | Output timestamp in floating-point seconds. |
Definition at line 894 of file time_parser.hpp.
|
inline |
Convert an ISO8601 string to a floating-point timestamp (fts_t).
| str | ISO8601 string. |
| ts | Output timestamp (floating-point seconds). |
Definition at line 878 of file time_parser.hpp.
| bool time_shield::str_to_fts | ( | string | str, |
| double & | ts ) |
Convert an ISO8601 string to a floating-point timestamp (fts_t).
| str | The ISO8601 string. |
| ts | The floating-point timestamp to be filled. |
Definition at line 396 of file time_parser.mqh.
|
inline |
Parse ISO8601 character buffer and convert to timestamp (seconds).
| data | Pointer to character buffer. |
| length | Buffer length in bytes. |
| ts | Output timestamp in seconds. |
Definition at line 837 of file time_parser.hpp.
|
inline |
Convert an ISO8601 string to a timestamp (ts_t).
| str | ISO8601 string. |
| ts | Output timestamp (seconds). |
Definition at line 821 of file time_parser.hpp.
| bool time_shield::str_to_ts | ( | string | str, |
| long & | ts ) |
Convert an ISO8601 string to a timestamp (ts_t).
| str | The ISO8601 string. |
| ts | The timestamp to be filled. |
Definition at line 182 of file time_parser.mqh.
|
inline |
Convert ISO8601 character buffer to millisecond timestamp (ts_ms_t).
| data | Pointer to character buffer. |
| length | Number of characters in buffer. |
| ts | Output timestamp in milliseconds. |
Definition at line 866 of file time_parser.hpp.
|
inline |
Convert an ISO8601 string to a millisecond timestamp (ts_ms_t).
| str | ISO8601 string. |
| ts | Output timestamp (milliseconds). |
Definition at line 850 of file time_parser.hpp.
| bool time_shield::str_to_ts_ms | ( | string | str, |
| long & | ts ) |
Convert an ISO8601 string to a millisecond timestamp (ts_ms_t).
| str | The ISO8601 string. |
| ts | The millisecond timestamp to be filled. |
Definition at line 193 of file time_parser.mqh.
|
inline |
Try parse month name token into month index [1..12].
| month | Month token (e.g. "Jan", "January"), case-insensitive. |
| value | Output month index [1..12]. |
Definition at line 392 of file time_parser.hpp.
|
inline |
Try parse month name token into month index [1..12], string_view overload.
Definition at line 414 of file time_parser.hpp.
|
inline |
Try get the month number by name, const char* overload.
| T | Output type, default is Month enum. |
| month | Month token C-string. |
| value | Output month number (1..12) converted to T. |
Definition at line 523 of file time_parser.hpp.
|
inline |
Try get the month number by name, with output parameter.
| T | Output type, default is Month enum. |
| month | Month token. |
| value | Output month number (1..12) converted to T. |
Definition at line 453 of file time_parser.hpp.
|
inline |
Try get the month number by name, string_view overload.
Definition at line 484 of file time_parser.hpp.
| bool time_shield::try_get_month_number | ( | string | month, |
| int & | value ) |
Get the month number by name, with output parameter.
| month | The name of the month as a string. |
| value | Reference to store the month number if found. |
Definition at line 70 of file time_parser.mqh.
|
inline |
Try parse month name token into month index [1..12].
| month | Month token (e.g. "Jan", "January"), case-insensitive. |
| value | Output month index [1..12]. |
Definition at line 306 of file time_parser.hpp.
|
inline |
Try parse month name token into month index [1..12], string_view overload.
| month | Month token view (e.g. "Jan", "January"), case-insensitive. |
| value | Output month index [1..12]. |
Definition at line 323 of file time_parser.hpp.
|
inline |
Try parse month name token into Month enum (or any T).
| T | Output type, default is Month enum. |
| month | Month token. |
| value | Output month number (1..12) converted to T. |
Definition at line 354 of file time_parser.hpp.
|
inline |
Try parse month name token into Month enum (or any T), string_view overload.
| T | Output type, default is Month enum. |
| month | Month token view. |
| value | Output month number (1..12) converted to T. |
Definition at line 378 of file time_parser.hpp.
|
inline |
Convert ISO8601 character buffer to timestamp (seconds).
Does not require null terminator. Returns 0 on failure (ambiguous if epoch is a valid value for your usage).
| data | Pointer to character buffer. |
| length | Number of characters in buffer. |
Definition at line 1028 of file time_parser.hpp.
|
inline |
Convert ISO8601 C-string to timestamp (seconds).
Returns 0 on failure (ambiguous if epoch is a valid value for your usage).
| str | C-style string with ISO8601 timestamp, may be nullptr. |
Definition at line 1016 of file time_parser.hpp.
|
inline |
Convert an ISO8601 string to a timestamp (ts_t).
This function parses a string in ISO8601 format and converts it to a timestamp. If parsing fails, it returns 0.
| str | The ISO8601 string. |
Definition at line 1089 of file time_parser.hpp.
| long time_shield::ts | ( | string | str | ) |
Convert an ISO8601 string to a timestamp (ts_t).
Returns 0 if parsing fails.
| str | The ISO8601 string. |
Definition at line 407 of file time_parser.mqh.
|
inline |
Convert ISO8601 character buffer to timestamp (milliseconds).
Does not require null terminator. Returns 0 on failure.
| data | Pointer to character buffer. |
| length | Number of characters in buffer. |
Definition at line 1051 of file time_parser.hpp.
|
inline |
Convert ISO8601 C-string to timestamp (milliseconds).
Returns 0 on failure (ambiguous if epoch is a valid value for your usage).
| str | C-style string with ISO8601 timestamp, may be nullptr. |
Definition at line 1040 of file time_parser.hpp.
|
inline |
Convert an ISO8601 string to a millisecond timestamp (ts_ms_t).
This function parses a string in ISO8601 format and converts it to a millisecond timestamp. If parsing fails, it returns 0.
| str | The ISO8601 string. |
Definition at line 1100 of file time_parser.hpp.
| long time_shield::ts_ms | ( | string | str | ) |
Convert an ISO8601 string to a millisecond timestamp (ts_ms_t).
Returns 0 if parsing fails.
| str | The ISO8601 string. |
Definition at line 417 of file time_parser.mqh.
|
inline |
Alias for is_workday(const std::string&).
Parse ISO8601 string and check if it falls on a workday (seconds precision).
Definition at line 922 of file time_parser.hpp.
| bool time_shield::workday | ( | string | str | ) |
Alias for is_workday.
Parse ISO8601 string and check for workday using second precision.
| str | ISO8601 formatted string. |
Definition at line 212 of file time_parser.mqh.
|
inline |
Alias for is_workday_ms(const std::string&).
Parse ISO8601 string and check if it falls on a workday (milliseconds precision).
Definition at line 928 of file time_parser.hpp.
| bool time_shield::workday_ms | ( | string | str | ) |
Alias for is_workday_ms.
Parse ISO8601 string and check for workday using millisecond precision.
| str | ISO8601 formatted string. |
Definition at line 226 of file time_parser.mqh.