27namespace ores::scheduler::domain {
61 [[nodiscard]]
static std::expected<cron_expression, std::string>
67 [[nodiscard]]
const std::string&
to_string()
const noexcept;
74 [[nodiscard]] std::chrono::system_clock::time_point
76 = std::chrono::system_clock::now())
const;
Strongly-typed, validated cron expression.
Definition cron_expression.hpp:44
const std::string & to_string() const noexcept
The validated cron string, suitable for pg_cron's cron.schedule().
Definition cron_expression.cpp:61
static std::expected< cron_expression, std::string > from_string(std::string_view expr)
Parse and validate a cron expression string.
Definition cron_expression.cpp:48
std::chrono::system_clock::time_point next_occurrence(std::chrono::system_clock::time_point after=std::chrono::system_clock::now()) const
Compute the next occurrence after the given time point.
Definition cron_expression.cpp:66
cron_expression()
Default constructor. Creates an expression that runs every minute.
Definition cron_expression.cpp:41