53 static constexpr int64 ticks_per_second = ticks_per_millisecond * 1'000;
87 template<
typename duration_t,
typename period_t = std::ratio<1>>
151 double operator *(
const time_span& value);
153 double operator /(
const time_span& value);
495 static constexpr
int32 millis_per_second = 1000;
496 static constexpr
int32 millis_per_minute = millis_per_second * 60;
497 static constexpr
int32 millis_per_hour = millis_per_minute * 60;
498 static constexpr
int32 millis_per_day = millis_per_hour * 24;
500 static constexpr
int32 parse_succeed = 0;
501 static constexpr
int32 parse_overflow = 1;
502 static constexpr
int32 parse_format = 2;
504 static time_span interval(
double value,
int scale);
505 ustring make_string_from_duration(
bool constant)
const;
513 inline std::string
to_string(
const time_span& value,
const std::string& fmt,
const std::locale& loc) {
return value.
to_string(fmt);}
time_span negate() const
Returns a new xtd::time_spam object whose value is the negated value of this instance.
static const time_span min_value
Represents the minimum xtd::time_span value. This field is read-only.
Definition: time_span.h:37
Contains xtd fundamental types.
static constexpr int64 ticks_per_second
Represents the number of ticks in 1 second.
Definition: time_span.h:53
std::chrono::microseconds total_microseconds_duration() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional microseconds...
int32 days() const noexcept
Gets the days component of the time interval represented by the current xtd::time_span structure...
Contains xtd::iequatable interface.
std::chrono::days total_days_duration() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional days...
Contains xtd::icomparable interface.
double total_seconds() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional seconds...
int32 seconds() const noexcept
Gets the seconds component of the time interval represented by the current xtd::time_span structure...
int32 microseconds() const noexcept
Gets the microseconds component of the time interval represented by the current xtd::time_span struct...
static time_span from_days(double value)
Returns a xtd::time_span that represents a specified number of days, where the specification is accur...
std::chrono::duration< int64, tick > ticks
Represents a tick duration.
Definition: ticks.h:21
Defines a generalized comparison method that a value type or class implements to create a type-specif...
Definition: icomparable.h:17
xtd::ticks ticks_duration() const noexcept
Gets the number of ticks that represent the value of the current xtd::time_span structure.
static constexpr int64 ticks_per_hour
Represents the number of ticks in 1 hour. This field is constant.
Definition: time_span.h:61
Contains xtd::ticks typedef.
The xtd namespace contains all fundamental classes to access Hardware, Os, System, and more.
Definition: system_report.h:17
std::chrono::nanoseconds total_nanoseconds_duration() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional nanoseconds...
time_span subtract(const time_span &ts) const noexcept
Returns a new xtd::time_span object whose value is the difference between the specified xtd::time_spa...
double divide(const time_span &ts) const
Returns a double value that's the result of dividing this instance by ts.
static time_span parse(const ustring &value)
Converts the string representation of a time interval to its xtd::time_span equivalent.
double total_nanoseconds() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional nanoseconds...
std::chrono::milliseconds total_milliseconds_duration() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional milliseconds...
bool equals(const time_span &value) const noexcept override
Indicates whether the current object is equal to another object of the same type. ...
Represents text as a sequence of UTF-8 code units.
Definition: ustring.h:46
static bool try_parse(const ustring &value, time_span &result)
Converts the string representation of a time interval to its xtd::time_span equivalent and returns a ...
static const time_span max_value
Represents the maximum xtd::time_span value. This field is read-only.
Definition: time_span.h:33
static const time_span zero
Represents the zero xtd::time_span value. This field is read-only.
Definition: time_span.h:69
time_span(const std::chrono::duration< duration_t, period_t > &value)
Initializes a new instance of the xtd::time_span structure to the specified number of ticks...
Definition: time_span.h:88
static time_span from_milliseconds(double value)
Returns a xtd::time_span that represents a specified number of milliseconds.
time_span add(const time_span &ts) const noexcept
Returns a new xtd::time_span object whose value is the sum of the specified xtd::time_span object and...
double total_hours() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional hours...
int32 milliseconds() const noexcept
Gets the milliseconds component of the time interval represented by the current xtd::time_span struct...
xtd::ustring to_string() const noexcept override
Returns a sxd::ustring that represents the current object.
int32 hours() const noexcept
Gets the hours component of the time interval represented by the current xtd::time_span structure...
int32 minutes() const noexcept
Gets the minutes component of the time interval represented by the current xtd::time_span structure...
Contains dyas, weeks, months and years durationtypes.
static time_span from_minutes(double value)
Returns a xtd::time_span that represents a specified number of minutes, where the specification is ac...
double total_milliseconds() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional milliseconds...
double total_days() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional days...
int32 nanoseconds() const noexcept
Gets the nanoseconds component of the time interval represented by the current xtd::time_span structu...
Defines a generalized method that a value type or class implements to create a type-specific method f...
Definition: iequatable.h:18
double multiply(const time_span &ts) const noexcept
Returns a new xtd::time_spam object which value is the result of multiplication of this instance and ...
int32 compare_to(const time_span &value) const noexcept override
Compares the current instance with another object of the same type.
static constexpr int64 ticks_per_minute
Represents the number of ticks in 1 minute. This field is constant.
Definition: time_span.h:57
static time_span from_hours(double value)
Returns a xtd::time_span that represents a specified number of hours, where the specification is accu...
static time_span from_seconds(double value)
Returns a xtd::time_spam that represents a specified number of seconds, where the specification is ac...
time_span duration() const noexcept
Returns a new xtd::time_span object whose value is the absolute value of the current xtd::time_span o...
time_span(int64 ticks)
Initializes a new instance of the xtd::time_span structure to the specified number of ticks...
Contains xtd::object class.
static time_span from_microseconds(double value)
Returns a xtd::time_span that represents a specified number of microseconds.
Supports all classes in the xtd class hierarchy and provides low-level services to derived classes...
Definition: object.h:32
Represents a time interval.
Definition: time_span.h:26
int_least32_t int32
Represents a 32-bit signed integer.
Definition: types.h:129
std::chrono::hours total_hours_duration() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional hours...
double total_microseconds() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional microseconds...
static constexpr int64 nanoseconds_per_tick
Represents the number of nanoseconds per tick. This field is constant.
Definition: time_span.h:41
static time_span from_nanoseconds(double value)
Returns a xtd::time_span that represents a specified number of nanoseconds.
static time_span from_ticks(int64 value)
Returns a xtd::time_spam that represents a specified time, where the specification is in units of tic...
static constexpr int64 ticks_per_millisecond
Represents the number of ticks in 1 millisecond. This field is constant.
Definition: time_span.h:49
double total_minutes() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional minutes...
int_least64_t int64
Represents a 64-bit signed integer.
Definition: types.h:140
uint_least32_t uint32
Represents a 32-bit unsigned integer.
Definition: types.h:239
static constexpr int64 ticks_per_day
Represents the number of ticks in 1 day. This field is constant.
Definition: time_span.h:65
static constexpr int64 ticks_per_microsecond
Represents the number of ticks in 1 microsecond. This field is constant.
Definition: time_span.h:45
int64 ticks() const noexcept
Gets the number of ticks that represent the value of the current xtd::time_span structure.
std::chrono::minutes total_minutes_duration() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional minutes...
std::chrono::seconds total_seconds_duration() const noexcept
Gets the value of the current xtd::time_span structure expressed in whole and fractional seconds...