template<std::floating_point FloatingPointT, std::uint32_t Precision = std::is_same_v<FloatingPointT, float> ? 6 : 12>
class storages::clickhouse::io::FloatingWithPrecision< FloatingPointT, Precision >
Class that can be escaped for clickhouse queries instead of [double] and [float]. [double] and [float] are escaped as FloatingWithPrecision<double, 12> and FloatingWithPrecision<float, 6> respectively. These constants were derived from the accuracity the numbers from ranges [0.0-100000.0] (doubles) and [0.0-100.0] (floats) can be represented by these type. Clickhouse also supports inf, -inf and nan, see clickhouse docs.
Definition at line 20 of file floating_point_types.hpp.
|
| template<typename U> |
| | FloatingWithPrecision (U value) |
| template<typename U, std::uint32_t AnotherPrecision> |
| | FloatingWithPrecision (const FloatingWithPrecision< U, AnotherPrecision > &other) |
| template<typename U, std::uint32_t AnotherPrecision> |
| | FloatingWithPrecision (FloatingWithPrecision< U, AnotherPrecision > &&other) |
| template<typename U, std::uint32_t AnotherPrecision> |
| FloatingWithPrecision & | operator= (const FloatingWithPrecision< U, AnotherPrecision > &other) |
| template<typename U, std::uint32_t AnotherPrecision> |
| FloatingWithPrecision & | operator= (FloatingWithPrecision< U, AnotherPrecision > &&other) |
| std::string | ToString () |