Timestamp constructor
seconds
is the number of seconds
of UTC time since Unix epoch
1970-01-01T00:00:00Z.
Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.
nanoseconds
is the non-negative fractions of a second at nanosecond
resolution. Negative second values with fractions must still have
non-negative nanoseconds values that count forward in time.
Must be from 0 to 999,999,999 inclusive.
Implementation
Timestamp(this.seconds, this.nanoseconds) {
if (seconds < -62135596800 || seconds > 253402300799) {
throw ArgumentError('invalid seconds part ${toDateTime(isUtc: true)}');
}
if (nanoseconds < 0 || nanoseconds > 999999999) {
throw ArgumentError(
'invalid nanoseconds part ${toDateTime(isUtc: true)}');
}
}