diff --git a/AK/Time.h b/AK/Time.h index 6d6ad16763..a9b4037458 100644 --- a/AK/Time.h +++ b/AK/Time.h @@ -383,6 +383,16 @@ inline bool operator!=(T const& a, T const& b) return a.tv_sec != b.tv_sec || a.tv_nsec != b.tv_nsec; } +// To use these, add a ``using namespace AK::TimeLiterals`` at block or file scope +namespace TimeLiterals { + +constexpr Time operator""_ns(unsigned long long nanoseconds) { return Time::from_nanoseconds(static_cast(nanoseconds)); } +constexpr Time operator""_us(unsigned long long microseconds) { return Time::from_microseconds(static_cast(microseconds)); } +constexpr Time operator""_ms(unsigned long long milliseconds) { return Time::from_milliseconds(static_cast(milliseconds)); } +constexpr Time operator""_sec(unsigned long long seconds) { return Time::from_seconds(static_cast(seconds)); } + +} + } #if USING_AK_GLOBALLY