2#ifndef LIBSBX_UNITS_TIME_HPP_
3#define LIBSBX_UNITS_TIME_HPP_
5#include <libsbx/units/quantity.hpp>
28constexpr auto operator""_y(
long double value) ->
year {
29 return year{
static_cast<year::value_type
>(value)};
32constexpr auto operator""_y(
unsigned long long value) -> year {
33 return year{
static_cast<year::value_type
>(value)};
36constexpr auto operator""_mo(
long double value) -> month {
37 return month{
static_cast<month::value_type
>(value)};
40constexpr auto operator""_mo(
unsigned long long value) -> month {
41 return month{
static_cast<month::value_type
>(value)};
44constexpr auto operator""_w(
long double value) -> week {
45 return week{
static_cast<week::value_type
>(value)};
48constexpr auto operator""_w(
unsigned long long value) -> week {
49 return week{
static_cast<week::value_type
>(value)};
52constexpr auto operator""_d(
long double value) -> day {
53 return day{
static_cast<day::value_type
>(value)};
56constexpr auto operator""_d(
unsigned long long value) -> day {
57 return day{
static_cast<day::value_type
>(value)};
60constexpr auto operator""_h(
long double value) -> hour {
61 return hour{
static_cast<hour::value_type
>(value)};
64constexpr auto operator""_h(
unsigned long long value) -> hour {
65 return hour{
static_cast<hour::value_type
>(value)};
68constexpr auto operator""_min(
long double value) -> minute {
69 return minute{
static_cast<minute::value_type
>(value)};
72constexpr auto operator""_min(
unsigned long long value) -> minute {
73 return minute{
static_cast<minute::value_type
>(value)};
76constexpr auto operator""_s(
long double value) -> second {
77 return second{
static_cast<second::value_type
>(value)};
80constexpr auto operator""_s(
unsigned long long value) -> second {
81 return second{
static_cast<second::value_type
>(value)};
84constexpr auto operator""_ms(
long double value) -> millisecond {
85 return millisecond{
static_cast<millisecond::value_type
>(value)};
88constexpr auto operator""_ms(
unsigned long long value) -> millisecond {
89 return millisecond{
static_cast<millisecond::value_type
>(value)};
92constexpr auto operator""_us(
long double value) -> microsecond {
93 return microsecond{
static_cast<microsecond::value_type
>(value)};
96constexpr auto operator""_us(
unsigned long long value) -> microsecond {
97 return microsecond{
static_cast<microsecond::value_type
>(value)};
100constexpr auto operator""_ns(
long double value) -> nanosecond {
101 return nanosecond{
static_cast<nanosecond::value_type
>(value)};
104constexpr auto operator""_ns(
unsigned long long value) -> nanosecond {
105 return nanosecond{
static_cast<nanosecond::value_type
>(value)};
Definition: quantity.hpp:66