mdbx++: смена базового типа на intptr_t для размерных констант mdbx::env::geometry.

This commit is contained in:
Леонид Юрьев (Leonid Yuriev) 2024-10-23 20:35:21 +03:00
parent 80708f9591
commit 5dc1f36b67

View File

@ -3570,22 +3570,26 @@ public:
/// create_parameters &, const operate_parameters &, bool accede) /// create_parameters &, const operate_parameters &, bool accede)
struct LIBMDBX_API_TYPE geometry { struct LIBMDBX_API_TYPE geometry {
enum : int64_t { enum : intptr_t {
default_value = -1, ///< Means "keep current or use default" default_value = -1, ///< Means "keep current or use default"
minimal_value = 0, ///< Means "minimal acceptable" minimal_value = 0, ///< Means "minimal acceptable"
maximal_value = INTPTR_MAX, ///< Means "maximal acceptable" maximal_value = INTPTR_MAX, ///< Means "maximal acceptable"
kB = 1000, ///< \f$10^{3}\f$ bytes kB = 1000, ///< \f$10^{3}\f$ bytes (0x03E8)
MB = kB * 1000, ///< \f$10^{6}\f$ bytes MB = kB * 1000, ///< \f$10^{6}\f$ bytes (0x000F_4240)
GB = MB * 1000, ///< \f$10^{9}\f$ bytes GB = MB * 1000, ///< \f$10^{9}\f$ bytes (0x3B9A_CA00)
TB = GB * 1000, ///< \f$10^{12}\f$ bytes #if INTPTR_MAX > 0x7fffFFFFl
PB = TB * 1000, ///< \f$10^{15}\f$ bytes TB = GB * 1000, ///< \f$10^{12}\f$ bytes (0x0000_00E8_D4A5_1000)
EB = PB * 1000, ///< \f$10^{18}\f$ bytes PB = TB * 1000, ///< \f$10^{15}\f$ bytes (0x0003_8D7E_A4C6_8000)
KiB = 1024, ///< \f$2^{10}\f$ bytes EB = PB * 1000, ///< \f$10^{18}\f$ bytes (0x0DE0_B6B3_A764_0000)
MiB = KiB << 10, ///< \f$2^{20}\f$ bytes #endif /* 64-bit intptr_t */
GiB = MiB << 10, ///< \f$2^{30}\f$ bytes KiB = 1024, ///< \f$2^{10}\f$ bytes (0x0400)
TiB = GiB << 10, ///< \f$2^{40}\f$ bytes MiB = KiB << 10, ///< \f$2^{20}\f$ bytes (0x0010_0000)
PiB = TiB << 10, ///< \f$2^{50}\f$ bytes GiB = MiB << 10, ///< \f$2^{30}\f$ bytes (0x4000_0000)
EiB = PiB << 10, ///< \f$2^{60}\f$ bytes #if INTPTR_MAX > 0x7fffFFFFl
TiB = GiB << 10, ///< \f$2^{40}\f$ bytes (0x0000_0100_0000_0000)
PiB = TiB << 10, ///< \f$2^{50}\f$ bytes (0x0004_0000_0000_0000)
EiB = PiB << 10, ///< \f$2^{60}\f$ bytes (0x1000_0000_0000_0000)
#endif /* 64-bit intptr_t */
}; };
/// \brief Tagged type for output to std::ostream /// \brief Tagged type for output to std::ostream