sandbox
Loading...
Searching...
No Matches
mass.hpp
1// SPDX-License-Identifier: MIT
2#ifndef LIBSBX_UNITS_MASS_HPP_
3#define LIBSBX_UNITS_MASS_HPP_
4
5#include <libsbx/units/quantity.hpp>
6
7namespace sbx::units {
8
9namespace detail {
10
11struct mass_tag { };
12
13} // namespace detail
14
18
19namespace literals {
20
21constexpr auto operator""_kg(long double value) -> kilogram {
22 return kilogram{static_cast<kilogram::value_type>(value)};
23}
24
25constexpr auto operator""_kg(unsigned long long value) -> kilogram {
26 return kilogram{static_cast<kilogram::value_type>(value)};
27}
28
29constexpr auto operator""_g(long double value) -> gram {
30 return gram{static_cast<gram::value_type>(value)};
31}
32
33constexpr auto operator""_g(unsigned long long value) -> gram {
34 return gram{static_cast<gram::value_type>(value)};
35}
36
37constexpr auto operator""_mg(long double value) -> milligram {
38 return milligram{static_cast<milligram::value_type>(value)};
39}
40
41constexpr auto operator""_mg(unsigned long long value) -> milligram {
42 return milligram{static_cast<milligram::value_type>(value)};
43}
44
45} // namespace literals
46
47} // namespace sbx::units
48
49#endif // LIBSBX_UNITS_MASS_HPP_
Definition: quantity.hpp:66
Definition: mass.hpp:11