#include "google/cloud/spanner/version.h"
#include "google/cloud/status.h"
#include "google/cloud/status_or.h"
#include "absl/numeric/int128.h"
#include <cstdlib>
#include <cstring>
#include <limits>
#include <ostream>
#include <string>
#include <type_traits>
#include <utility>
Go to the source code of this file.
|
class | google::cloud::spanner::v1::Numeric |
| A representation of the Spanner NUMERIC type: an exact numeric value with 29 decimal digits of integer precision (kIntPrec) and 9 decimal digits of fractional precision (kFracPrec). More...
|
|
|
StatusOr< Numeric > | google::cloud::spanner::v1::MakeNumeric (std::string s) |
| Construction from a string, in decimal fixed- or floating-point formats. More...
|
|
StatusOr< Numeric > | google::cloud::spanner::v1::MakeNumeric (double d) |
| Construction from a double. More...
|
|
template<typename T , typename std::enable_if< std::numeric_limits< T >::is_integer, int >::type = 0> |
StatusOr< Numeric > | google::cloud::spanner::v1::MakeNumeric (T i, int exponent=0) |
| Construction from an integer i , scaled by 10^exponent . More...
|
|
double | google::cloud::spanner::v1::ToDouble (Numeric const &n) |
| Conversion to the closest double value, with possible loss of precision. More...
|
|
|
template<typename T , typename std::enable_if< std::numeric_limits< T >::is_integer &&!std::numeric_limits< T >::is_signed, int >::type = 0> |
StatusOr< T > | google::cloud::spanner::v1::ToInteger (Numeric const &n, int exponent=0) |
| Conversion to the nearest integer value, scaled by 10^exponent . More...
|
|