From aa10fce346e1a19f4badb22a6bb8a240c1fd53db Mon Sep 17 00:00:00 2001 From: Corey Farwell Date: Tue, 2 May 2017 23:55:40 -0400 Subject: [PATCH 1/4] Update Duration::from_secs doc example to show underlying values. --- src/libstd/time/duration.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/libstd/time/duration.rs b/src/libstd/time/duration.rs index af7eaeb3106..bd8c1fac2db 100644 --- a/src/libstd/time/duration.rs +++ b/src/libstd/time/duration.rs @@ -84,7 +84,10 @@ impl Duration { /// ``` /// use std::time::Duration; /// - /// let five_seconds = Duration::from_secs(5); + /// let duration = Duration::from_secs(5); + /// + /// assert_eq!(5, duration.as_secs()); + /// assert_eq!(0, duration.subsec_nanos()); /// ``` #[stable(feature = "duration", since = "1.3.0")] #[inline] From ee8ad8eb2e38092096d241f5c2a9df369029497c Mon Sep 17 00:00:00 2001 From: Corey Farwell Date: Tue, 2 May 2017 23:56:29 -0400 Subject: [PATCH 2/4] Update Duration::from_millis doc example to show underlying values. --- src/libstd/time/duration.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/libstd/time/duration.rs b/src/libstd/time/duration.rs index bd8c1fac2db..268ce733fa3 100644 --- a/src/libstd/time/duration.rs +++ b/src/libstd/time/duration.rs @@ -102,7 +102,10 @@ impl Duration { /// ``` /// use std::time::Duration; /// - /// let five_seconds = Duration::from_millis(5000); + /// let duration = Duration::from_millis(2569); + /// + /// assert_eq!(2, duration.as_secs()); + /// assert_eq!(569000000, duration.subsec_nanos()); /// ``` #[stable(feature = "duration", since = "1.3.0")] #[inline] From bdd8e7ffe6cb1cdf100b9ca071e826f153371245 Mon Sep 17 00:00:00 2001 From: Corey Farwell Date: Tue, 2 May 2017 23:58:39 -0400 Subject: [PATCH 3/4] Update Duration::as_secs doc example to demonstrate truncation. --- src/libstd/time/duration.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libstd/time/duration.rs b/src/libstd/time/duration.rs index 268ce733fa3..4f8f9c36ec7 100644 --- a/src/libstd/time/duration.rs +++ b/src/libstd/time/duration.rs @@ -125,8 +125,8 @@ impl Duration { /// ``` /// use std::time::Duration; /// - /// let five_seconds = Duration::new(5, 0); - /// assert_eq!(five_seconds.as_secs(), 5); + /// let duration = Duration::new(5, 730023852); + /// assert_eq!(duration.as_secs(), 5); /// ``` #[stable(feature = "duration", since = "1.3.0")] #[inline] From a3e8f3622f62022d98c2df1f096f4ef88efb6386 Mon Sep 17 00:00:00 2001 From: Corey Farwell Date: Wed, 3 May 2017 00:04:59 -0400 Subject: [PATCH 4/4] Add doc example for how to determine total number of secs in Duration. --- src/libstd/time/duration.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/libstd/time/duration.rs b/src/libstd/time/duration.rs index 4f8f9c36ec7..55766ba3fed 100644 --- a/src/libstd/time/duration.rs +++ b/src/libstd/time/duration.rs @@ -128,6 +128,21 @@ impl Duration { /// let duration = Duration::new(5, 730023852); /// assert_eq!(duration.as_secs(), 5); /// ``` + /// + /// To determine the total number of seconds represented by the `Duration`, + /// use `as_secs` in combination with [`subsec_nanos`]: + /// + /// ``` + /// use std::time::Duration; + /// + /// let duration = Duration::new(5, 730023852); + /// + /// assert_eq!(5.730023852, + /// duration.as_secs() as f64 + /// + duration.subsec_nanos() as f64 * 1e-9); + /// ``` + /// + /// [`subsec_nanos`]: #method.subsec_nanos #[stable(feature = "duration", since = "1.3.0")] #[inline] pub fn as_secs(&self) -> u64 { self.secs }