Google Cloud Spanner C++ Client 2.13.0
A C++ Client Library for Google Cloud Spanner
|
A representation of the Spanner TIMESTAMP type: An instant in time. More...
#include <google/cloud/spanner/timestamp.h>
Public Member Functions | |
Timestamp () | |
Default construction yields 1970-01-01T00:00:00Z. More... | |
Regular value type, supporting copy, assign, move. | |
Timestamp (Timestamp &&)=default | |
Timestamp & | operator= (Timestamp &&)=default |
Timestamp (Timestamp const &)=default | |
Timestamp & | operator= (Timestamp const &)=default |
Friends | |
Relational operators | |
bool | operator== (Timestamp const &a, Timestamp const &b) |
bool | operator!= (Timestamp const &a, Timestamp const &b) |
bool | operator< (Timestamp const &a, Timestamp const &b) |
bool | operator<= (Timestamp const &a, Timestamp const &b) |
bool | operator>= (Timestamp const &a, Timestamp const &b) |
bool | operator> (Timestamp const &a, Timestamp const &b) |
Output streaming | |
template<typename T > | |
StatusOr< T > | get () const |
Convert the Timestamp to the user-specified template type. More... | |
std::ostream & | operator<< (std::ostream &os, Timestamp ts) |
Convert the Timestamp to the user-specified template type. More... | |
StatusOr< Timestamp > | MakeTimestamp (absl::Time) |
Construct a Timestamp from an absl::Time . More... | |
A representation of the Spanner TIMESTAMP type: An instant in time.
A Timestamp
represents an absolute point in time (i.e., is independent of any time zone), with at least nanosecond precision, and with a range of 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z, inclusive.
The MakeTimestamp(src)
factory function(s) should be used to construct Timestamp
values from standard representations of absolute time.
A Timestamp
can be converted back to a standard representation using ts.get<T>()
.
|
inline |
Default construction yields 1970-01-01T00:00:00Z.
|
default |
|
default |
|
inline |
Convert the Timestamp
to the user-specified template type.
Fails if *this
cannot be represented as a T
.
Supported destination types are:
absl::Time
- Since absl::Time
can represent all possible Timestamp
values, get<absl::Time>()
never returns an error.google::protobuf::Timestamp
- Never returns an error, but any sub-nanosecond precision will be lost.google::cloud::spanner::sys_time<Duration>
- Duration::rep
may not be wider than std::int64_t
, and Duration::period
may be no more precise than std::nano
.
|
friend |
Convert the Timestamp
to the user-specified template type.
Fails if *this
cannot be represented as a T
.
Supported destination types are:
absl::Time
- Since absl::Time
can represent all possible Timestamp
values, get<absl::Time>()
never returns an error.google::protobuf::Timestamp
- Never returns an error, but any sub-nanosecond precision will be lost.google::cloud::spanner::sys_time<Duration>
- Duration::rep
may not be wider than std::int64_t
, and Duration::period
may be no more precise than std::nano
.