22inline constexpr unsigned long long int kBytesInKibibyte = 1ull << 10;
25inline constexpr unsigned long long int kBytesInMebibyte = 1ull << 20;
28inline constexpr unsigned long long int kBytesInGibibyte = 1ull << 30;
31inline constexpr unsigned long long int kBytesInTebibyte = 1ull << 40;
34inline constexpr unsigned long long int kBytesInPebibyte = 1ull << 50;
37inline constexpr unsigned long long int kBytesInExbibyte = 1ull << 60;
47constexpr unsigned long long int B(
unsigned long long int bytes) {
51constexpr unsigned long long int KiB(
unsigned long long int kibibytes) {
52 return kibibytes * kBytesInKibibyte;
55constexpr unsigned long long int MiB(
unsigned long long int mebibytes) {
56 return mebibytes * kBytesInMebibyte;
59constexpr unsigned long long int GiB(
unsigned long long int gibibytes) {
60 return gibibytes * kBytesInGibibyte;
63constexpr unsigned long long int TiB(
unsigned long long int tebibytes) {
64 return tebibytes * kBytesInTebibyte;
67constexpr unsigned long long int PiB(
unsigned long long int pebibytes) {
68 return pebibytes * kBytesInPebibyte;
71constexpr unsigned long long int EiB(
unsigned long long int exbibytes) {
72 return exbibytes * kBytesInExbibyte;
75namespace unit_literals {
96constexpr unsigned long long int operator""_B(
unsigned long long int bytes) {
100constexpr unsigned long long int operator""_KiB(
101 unsigned long long int kibibytes) {
102 return kibibytes * kBytesInKibibyte;
105constexpr unsigned long long int operator""_MiB(
106 unsigned long long int mebibytes) {
107 return mebibytes * kBytesInMebibyte;
110constexpr unsigned long long int operator""_GiB(
111 unsigned long long int gibibytes) {
112 return gibibytes * kBytesInGibibyte;
115constexpr unsigned long long int operator""_TiB(
116 unsigned long long int tebibytes) {
117 return tebibytes * kBytesInTebibyte;
120constexpr unsigned long long int operator""_PiB(
121 unsigned long long int pebibytes) {
122 return pebibytes * kBytesInPebibyte;
125constexpr unsigned long long int operator""_EiB(
126 unsigned long long int exbibytes) {
127 return exbibytes * kBytesInExbibyte;