Time Shield Library
C++ library for working with time
Loading...
Searching...
No Matches
time_format_parser.hpp File Reference

Header file for fast parsing with formatter-compatible custom patterns. More...

Go to the source code of this file.

Classes

struct  time_shield::detail::format_parse::FormatParseState

Namespaces

namespace  time_shield
 Main namespace for the Time Shield library.
namespace  time_shield::detail
namespace  time_shield::detail::format_parse

Functions

FormatParseState time_shield::detail::format_parse::create_format_parse_state () noexcept
TIME_SHIELD_CONSTEXPR bool time_shield::detail::format_parse::is_ascii_digit (char c) noexcept
bool time_shield::detail::format_parse::match_literal (const char *&p, const char *end, char expected) noexcept
bool time_shield::detail::format_parse::match_literal (const char *&p, const char *end, const char *literal) noexcept
bool time_shield::detail::format_parse::parse_exact_2digits (const char *&p, const char *end, int &out) noexcept
bool time_shield::detail::format_parse::parse_unsigned_digits (const char *&p, const char *end, int min_digits, int max_digits, int64_t &out) noexcept
bool time_shield::detail::format_parse::parse_signed_digits (const char *&p, const char *end, int min_digits, int max_digits, int64_t &out) noexcept
bool time_shield::detail::format_parse::parse_space_padded_2digits (const char *&p, const char *end, int &out) noexcept
bool time_shield::detail::format_parse::parse_meridiem (const char *&p, const char *end, bool uppercase, bool &is_pm) noexcept
bool time_shield::detail::format_parse::match_name_token (const char *&p, const char *end, const char *const *names, std::size_t count, int index_base, int &out) noexcept
bool time_shield::detail::format_parse::parse_month_token (const char *&p, const char *end, FormatType format, int &month) noexcept
bool time_shield::detail::format_parse::parse_weekday_token (const char *&p, const char *end, FormatType format, int &weekday) noexcept
bool time_shield::detail::format_parse::parse_tz_offset_token (const char *&p, const char *end, TimeZoneStruct &tz) noexcept
 Parse z timezone token in compact or extended ISO-style form.
bool time_shield::detail::format_parse::assign_int_field (bool &has_field, int &field, int value) noexcept
bool time_shield::detail::format_parse::assign_year_field (bool &has_field, year_t &field, year_t value) noexcept
bool time_shield::detail::format_parse::has_iso_week_date_fields (const FormatParseState &state) noexcept
bool time_shield::detail::format_parse::has_gregorian_date_fields (const FormatParseState &state) noexcept
int time_shield::detail::format_parse::last_two_digits_of_year (year_t year) noexcept
bool time_shield::detail::format_parse::resolve_day_of_year (year_t year, int day_of_year, int &month, int &day) noexcept
int time_shield::detail::format_parse::compute_day_of_year (year_t year, int month, int day) noexcept
bool time_shield::detail::format_parse::parse_compact_extended_year (const char *&p, const char *end, year_t &out) noexcept
bool time_shield::detail::format_parse::parse_format_sequence (const char *&p, const char *end, const char *format_data, std::size_t format_size, FormatParseState &state) noexcept
bool time_shield::detail::format_parse::parse_format_token (const char *&p, const char *end, char token, std::size_t repeat_count, FormatParseState &state) noexcept
bool time_shield::detail::format_parse::validate_weekday_constraints (const FormatParseState &state, const DateTimeStruct &dt) noexcept
bool time_shield::detail::format_parse::resolve_time_fields (const FormatParseState &state, int &hour, int &minute, int &second, int &millisecond) noexcept
bool time_shield::detail::format_parse::finalize_calendar_state (FormatParseState &state, DateTimeStruct &out_dt, TimeZoneStruct &out_tz) noexcept
bool time_shield::detail::format_parse::finalize_format_parse_state (FormatParseState &state, DateTimeStruct &out_dt, TimeZoneStruct &out_tz) noexcept
bool time_shield::detail::format_parse::try_parse_format_core (const char *data, std::size_t length, const char *format, std::size_t format_length, DateTimeStruct &out_dt, TimeZoneStruct &out_tz) noexcept
bool time_shield::try_parse_format (const char *data, std::size_t length, const char *format, std::size_t format_length, DateTimeStruct &out_dt, TimeZoneStruct &out_tz) noexcept
 Parse input using formatter-compatible custom pattern.
bool time_shield::try_parse_format_ts (const char *data, std::size_t length, const char *format, std::size_t format_length, ts_t &out_ts) noexcept
 Parse input using formatter-compatible custom pattern and convert to UTC seconds.
bool time_shield::try_parse_format_ts_ms (const char *data, std::size_t length, const char *format, std::size_t format_length, ts_ms_t &out_ts) noexcept
 Parse input using formatter-compatible custom pattern and convert to UTC milliseconds.
bool time_shield::try_parse_format (const std::string &data, const std::string &format, DateTimeStruct &out_dt, TimeZoneStruct &out_tz) noexcept
 Parse std::string using formatter-compatible custom pattern.
bool time_shield::try_parse_format (const char *data, const char *format, DateTimeStruct &out_dt, TimeZoneStruct &out_tz) noexcept
 Parse null-terminated strings using formatter-compatible custom pattern.
bool time_shield::try_parse_format_ts (const std::string &data, const std::string &format, ts_t &out_ts) noexcept
 Parse std::string using formatter-compatible custom pattern and convert to UTC seconds.
bool time_shield::try_parse_format_ts (const char *data, const char *format, ts_t &out_ts) noexcept
 Parse null-terminated strings using custom format and convert to UTC seconds.
bool time_shield::try_parse_format_ts_ms (const std::string &data, const std::string &format, ts_ms_t &out_ts) noexcept
 Parse std::string using formatter-compatible custom pattern and convert to UTC milliseconds.
bool time_shield::try_parse_format_ts_ms (const char *data, const char *format, ts_ms_t &out_ts) noexcept
 Parse null-terminated strings using custom format and convert to UTC milliseconds.
bool time_shield::try_parse_format (std::string_view data, std::string_view format, DateTimeStruct &out_dt, TimeZoneStruct &out_tz) noexcept
 Parse std::string_view using formatter-compatible custom pattern.
bool time_shield::try_parse_format_ts (std::string_view data, std::string_view format, ts_t &out_ts) noexcept
 Parse std::string_view using formatter-compatible custom pattern and convert to UTC seconds.
bool time_shield::try_parse_format_ts_ms (std::string_view data, std::string_view format, ts_ms_t &out_ts) noexcept
 Parse std::string_view using formatter-compatible custom pattern and convert to UTC milliseconds.

Detailed Description

Header file for fast parsing with formatter-compatible custom patterns.

Definition in file time_format_parser.hpp.