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>()
.
See Also
https://cloud.google.com/spanner/docs/data-types#timestamp_type
Constructors
Timestamp(Timestamp &&)
Regular value type, supporting copy, assign, move.
Parameter | |
---|---|
Name | Description |
|
Timestamp &&
|
Timestamp(Timestamp const &)
Regular value type, supporting copy, assign, move.
Parameter | |
---|---|
Name | Description |
|
Timestamp const &
|
Timestamp()
Default construction yields 1970-01-01T00:00:00Z.
Operators
operator=(Timestamp &&)
Regular value type, supporting copy, assign, move.
Parameter | |
---|---|
Name | Description |
|
Timestamp &&
|
Returns | |
---|---|
Type | Description |
Timestamp & |
operator=(Timestamp const &)
Regular value type, supporting copy, assign, move.
Parameter | |
---|---|
Name | Description |
|
Timestamp const &
|
Returns | |
---|---|
Type | Description |
Timestamp & |
Functions
get() const
Convert the Timestamp
to the user-specified template type.
Fails if *this
cannot be represented as a T
.
Supported destination types are:
absl::Time
- Sinceabsl::Time
can represent all possibleTimestamp
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 thanstd::int64_t
, andDuration::period
may be no more precise thanstd::nano
.
Example
sys_time<std::chrono::nanoseconds> tp = ...;
Timestamp ts = MakeTimestamp(tp).value();
assert(tp == ts.get<sys_time<std::chrono::nanoseconds>>().value());
Parameter | |
---|---|
Name | Description |
typename T |
|
Returns | |
---|---|
Type | Description |
StatusOr< T > |