forked from diesel-rs/diesel
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathstruct.Duration.html
More file actions
292 lines (272 loc) · 148 KB
/
Copy pathstruct.Duration.html
File metadata and controls
292 lines (272 loc) · 148 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="ISO 8601 time duration with nanosecond precision. This also allows for the negative duration; see individual methods for details."><meta name="keywords" content="rust, rustlang, rust-lang, Duration"><title>Duration in chrono - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../normalize.css"><link rel="stylesheet" type="text/css" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../dark.css" disabled><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../storage.js"></script><script src="../crates.js"></script><script defer src="../main.js"></script>
<noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../favicon.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="sidebar-logo" href="../chrono/index.html"><div class="logo-container"><img class="rust-logo" src="../rust-logo.svg" alt="logo"></div>
</a><h2 class="location"></h2>
</nav>
<nav class="sidebar"><a class="sidebar-logo" href="../chrono/index.html"><div class="logo-container"><img class="rust-logo" src="../rust-logo.svg" alt="logo"></div>
</a><h2 class="location"><a href="#">Duration</a></h2><div class="sidebar-elems"><section><div class="block"><h3 class="sidebar-title"><a href="#implementations">Methods</a></h3><ul><li><a href="#method.abs">abs</a></li><li><a href="#method.checked_add">checked_add</a></li><li><a href="#method.checked_sub">checked_sub</a></li><li><a href="#method.days">days</a></li><li><a href="#method.from_std">from_std</a></li><li><a href="#method.hours">hours</a></li><li><a href="#method.is_zero">is_zero</a></li><li><a href="#method.max_value">max_value</a></li><li><a href="#method.microseconds">microseconds</a></li><li><a href="#method.milliseconds">milliseconds</a></li><li><a href="#method.min_value">min_value</a></li><li><a href="#method.minutes">minutes</a></li><li><a href="#method.nanoseconds">nanoseconds</a></li><li><a href="#method.num_days">num_days</a></li><li><a href="#method.num_hours">num_hours</a></li><li><a href="#method.num_microseconds">num_microseconds</a></li><li><a href="#method.num_milliseconds">num_milliseconds</a></li><li><a href="#method.num_minutes">num_minutes</a></li><li><a href="#method.num_nanoseconds">num_nanoseconds</a></li><li><a href="#method.num_seconds">num_seconds</a></li><li><a href="#method.num_weeks">num_weeks</a></li><li><a href="#method.seconds">seconds</a></li><li><a href="#method.to_std">to_std</a></li><li><a href="#method.weeks">weeks</a></li><li><a href="#method.zero">zero</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#trait-implementations">Trait Implementations</a></h3><ul><li><a href="#impl-Add%3CDuration%3E">Add<Duration></a></li><li><a href="#impl-Add%3CDuration%3E-1">Add<Duration></a></li><li><a href="#impl-Add%3CDuration%3E-2">Add<Duration></a></li><li><a href="#impl-Add%3CDuration%3E-3">Add<Duration></a></li><li><a href="#impl-Add%3CDuration%3E-4">Add<Duration></a></li><li><a href="#impl-Add%3CDuration%3E-5">Add<Duration></a></li><li><a href="#impl-AddAssign%3CDuration%3E">AddAssign<Duration></a></li><li><a href="#impl-AddAssign%3CDuration%3E-1">AddAssign<Duration></a></li><li><a href="#impl-AddAssign%3CDuration%3E-2">AddAssign<Duration></a></li><li><a href="#impl-Clone">Clone</a></li><li><a href="#impl-Copy">Copy</a></li><li><a href="#impl-Debug">Debug</a></li><li><a href="#impl-Display">Display</a></li><li><a href="#impl-Div%3Ci32%3E">Div<i32></a></li><li><a href="#impl-Eq">Eq</a></li><li><a href="#impl-Mul%3Ci32%3E">Mul<i32></a></li><li><a href="#impl-Neg">Neg</a></li><li><a href="#impl-Ord">Ord</a></li><li><a href="#impl-PartialEq%3CDuration%3E">PartialEq<Duration></a></li><li><a href="#impl-PartialOrd%3CDuration%3E">PartialOrd<Duration></a></li><li><a href="#impl-StructuralEq">StructuralEq</a></li><li><a href="#impl-StructuralPartialEq">StructuralPartialEq</a></li><li><a href="#impl-Sub%3CDuration%3E">Sub<Duration></a></li><li><a href="#impl-Sub%3CDuration%3E-1">Sub<Duration></a></li><li><a href="#impl-Sub%3CDuration%3E-2">Sub<Duration></a></li><li><a href="#impl-Sub%3CDuration%3E-3">Sub<Duration></a></li><li><a href="#impl-Sub%3CDuration%3E-4">Sub<Duration></a></li><li><a href="#impl-Sub%3CDuration%3E-5">Sub<Duration></a></li><li><a href="#impl-SubAssign%3CDuration%3E">SubAssign<Duration></a></li><li><a href="#impl-SubAssign%3CDuration%3E-1">SubAssign<Duration></a></li><li><a href="#impl-SubAssign%3CDuration%3E-2">SubAssign<Duration></a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul><li><a href="#impl-RefUnwindSafe">RefUnwindSafe</a></li><li><a href="#impl-Send">Send</a></li><li><a href="#impl-Sync">Sync</a></li><li><a href="#impl-Unpin">Unpin</a></li><li><a href="#impl-UnwindSafe">UnwindSafe</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><ul><li><a href="#impl-Any">Any</a></li><li><a href="#impl-Borrow%3CT%3E">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E">From<T></a></li><li><a href="#impl-Into%3CU%3E">Into<U></a></li><li><a href="#impl-ToOwned">ToOwned</a></li><li><a href="#impl-ToString">ToString</a></li><li><a href="#impl-TryFrom%3CU%3E">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E">TryInto<U></a></li></ul></div></section><h2 class="location"><a href="index.html">In chrono</a></h2><div id="sidebar-vars" data-name="Duration" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../chrono/index.html"><img class="rust-logo" src="../rust-logo.svg" alt="logo"></a><nav class="sub"><div class="theme-picker hidden"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="22" height="22" alt="Pick another theme!" src="../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><div class="main-heading">
<h1 class="fqn"><span class="in-band">Struct <a href="index.html">chrono</a>::<wbr><a class="struct" href="#">Duration</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../src/chrono/oldtime.rs.html#50-53">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span></div><div class="docblock item-decl"><pre class="rust struct"><code>pub struct Duration { /* private fields */ }</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>ISO 8601 time duration with nanosecond precision.
This also allows for the negative duration; see individual methods for details.</p>
</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><div id="implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#67-300">source</a></span><a href="#impl" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.weeks" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#72-75">source</a></span><a href="#method.weeks" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.weeks" class="fnname">weeks</a>(weeks: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Makes a new <code>Duration</code> with given number of weeks.
Equivalent to <code>Duration::seconds(weeks * 7 * 24 * 60 * 60)</code> with overflow checks.
Panics when the duration is out of bounds.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.days" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#81-84">source</a></span><a href="#method.days" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.days" class="fnname">days</a>(days: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Makes a new <code>Duration</code> with given number of days.
Equivalent to <code>Duration::seconds(days * 24 * 60 * 60)</code> with overflow checks.
Panics when the duration is out of bounds.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.hours" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#90-93">source</a></span><a href="#method.hours" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.hours" class="fnname">hours</a>(hours: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Makes a new <code>Duration</code> with given number of hours.
Equivalent to <code>Duration::seconds(hours * 60 * 60)</code> with overflow checks.
Panics when the duration is out of bounds.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.minutes" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#99-102">source</a></span><a href="#method.minutes" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.minutes" class="fnname">minutes</a>(minutes: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Makes a new <code>Duration</code> with given number of minutes.
Equivalent to <code>Duration::seconds(minutes * 60)</code> with overflow checks.
Panics when the duration is out of bounds.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.seconds" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#108-114">source</a></span><a href="#method.seconds" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.seconds" class="fnname">seconds</a>(seconds: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Makes a new <code>Duration</code> with given number of seconds.
Panics when the duration is more than <code>i64::MAX</code> seconds
or less than <code>i64::MIN</code> seconds.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.milliseconds" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#118-122">source</a></span><a href="#method.milliseconds" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.milliseconds" class="fnname">milliseconds</a>(milliseconds: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Makes a new <code>Duration</code> with given number of milliseconds.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.microseconds" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#126-130">source</a></span><a href="#method.microseconds" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.microseconds" class="fnname">microseconds</a>(microseconds: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Makes a new <code>Duration</code> with given number of microseconds.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.nanoseconds" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#134-137">source</a></span><a href="#method.nanoseconds" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.nanoseconds" class="fnname">nanoseconds</a>(nanos: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Makes a new <code>Duration</code> with given number of nanoseconds.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.num_weeks" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#141-143">source</a></span><a href="#method.num_weeks" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.num_weeks" class="fnname">num_weeks</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></h4></section></summary><div class="docblock"><p>Returns the total number of whole weeks in the duration.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.num_days" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#146-148">source</a></span><a href="#method.num_days" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.num_days" class="fnname">num_days</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></h4></section></summary><div class="docblock"><p>Returns the total number of whole days in the duration.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.num_hours" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#152-154">source</a></span><a href="#method.num_hours" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.num_hours" class="fnname">num_hours</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></h4></section></summary><div class="docblock"><p>Returns the total number of whole hours in the duration.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.num_minutes" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#158-160">source</a></span><a href="#method.num_minutes" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.num_minutes" class="fnname">num_minutes</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></h4></section></summary><div class="docblock"><p>Returns the total number of whole minutes in the duration.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.num_seconds" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#163-170">source</a></span><a href="#method.num_seconds" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.num_seconds" class="fnname">num_seconds</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></h4></section></summary><div class="docblock"><p>Returns the total number of whole seconds in the duration.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.num_milliseconds" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#184-190">source</a></span><a href="#method.num_milliseconds" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.num_milliseconds" class="fnname">num_milliseconds</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a></h4></section></summary><div class="docblock"><p>Returns the total number of whole milliseconds in the duration,</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.num_microseconds" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#194-198">source</a></span><a href="#method.num_microseconds" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.num_microseconds" class="fnname">num_microseconds</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>></h4></section></summary><div class="docblock"><p>Returns the total number of whole microseconds in the duration,
or <code>None</code> on overflow (exceeding 2^63 microseconds in either direction).</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.num_nanoseconds" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#202-206">source</a></span><a href="#method.num_nanoseconds" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.num_nanoseconds" class="fnname">num_nanoseconds</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i64.html">i64</a>></h4></section></summary><div class="docblock"><p>Returns the total number of whole nanoseconds in the duration,
or <code>None</code> on overflow (exceeding 2^63 nanoseconds in either direction).</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.checked_add" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#209-224">source</a></span><a href="#method.checked_add" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.checked_add" class="fnname">checked_add</a>(&self, rhs: &<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>></h4></section></summary><div class="docblock"><p>Add two durations, returning <code>None</code> if overflow occurred.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.checked_sub" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#227-242">source</a></span><a href="#method.checked_sub" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.checked_sub" class="fnname">checked_sub</a>(&self, rhs: &<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>></h4></section></summary><div class="docblock"><p>Subtract two durations, returning <code>None</code> if overflow occurred.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.abs" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#246-248">source</a></span><a href="#method.abs" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.abs" class="fnname">abs</a>(&self) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Returns the duration as an absolute (non-negative) value.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.min_value" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#252-254">source</a></span><a href="#method.min_value" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.min_value" class="fnname">min_value</a>() -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class="docblock"><p>The minimum possible <code>Duration</code>: <code>i64::MIN</code> milliseconds.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.max_value" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#258-260">source</a></span><a href="#method.max_value" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.max_value" class="fnname">max_value</a>() -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class="docblock"><p>The maximum possible <code>Duration</code>: <code>i64::MAX</code> milliseconds.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.zero" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#264-266">source</a></span><a href="#method.zero" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.zero" class="fnname">zero</a>() -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class="docblock"><p>A duration where the stored seconds and nanoseconds are equal to zero.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.is_zero" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#270-272">source</a></span><a href="#method.is_zero" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.is_zero" class="fnname">is_zero</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Returns <code>true</code> if the duration equals <code>Duration::zero()</code>.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from_std" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#278-288">source</a></span><a href="#method.from_std" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.from_std" class="fnname">from_std</a>(duration: <a class="struct" href="https://doc.rust-lang.org/nightly/core/time/struct.Duration.html" title="struct core::time::Duration">StdDuration</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>, OutOfRangeError></h4></section></summary><div class="docblock"><p>Creates a <code>time::Duration</code> object from <code>std::time::Duration</code></p>
<p>This function errors when original duration is larger than the maximum
value supported for this type.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.to_std" class="method has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#294-299">source</a></span><a href="#method.to_std" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.to_std" class="fnname">to_std</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/time/struct.Duration.html" title="struct core::time::Duration">StdDuration</a>, OutOfRangeError></h4></section></summary><div class="docblock"><p>Creates a <code>std::time::Duration</code> object from <code>time::Duration</code></p>
<p>This function errors when duration is less than zero. As standard
library implementation is limited to non-negative values.</p>
</div></details></div></details></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Add%3CDuration%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#315-327">source</a></span><a href="#impl-Add%3CDuration%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-1" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-1" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>+</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#318-326">source</a></span><a href="#method.add" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#tymethod.add" class="fnname">add</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class='docblock'><p>Performs the <code>+</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#tymethod.add">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Add%3CDuration%3E-1" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/date.rs.html#1468-1475">source</a></span><a href="#impl-Add%3CDuration%3E-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="naive/struct.NaiveDate.html" title="struct chrono::naive::NaiveDate">NaiveDate</a></h3></section></summary><div class="docblock"><p>An addition of <code>Duration</code> to <code>NaiveDate</code> discards the fractional days,
rounding to the closest integral number of days towards <code>Duration::zero()</code>.</p>
<p>Panics on underflow or overflow.
Use <a href="#method.checked_add_signed"><code>NaiveDate::checked_add_signed</code></a> to detect that.</p>
<h4 id="example"><a href="#example">Example</a></h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use</span> <span class="ident">chrono</span>::{<span class="ident">Duration</span>, <span class="ident">NaiveDate</span>};
<span class="kw">let</span> <span class="ident">from_ymd</span> <span class="op">=</span> <span class="ident">NaiveDate::from_ymd</span>;
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">+</span> <span class="ident">Duration::zero</span>(), <span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="number">86399</span>), <span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="op">-</span><span class="number">86399</span>), <span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">+</span> <span class="ident">Duration::days</span>(<span class="number">1</span>), <span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">2</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">+</span> <span class="ident">Duration::days</span>(<span class="op">-</span><span class="number">1</span>), <span class="ident">from_ymd</span>(<span class="number">2013</span>, <span class="number">12</span>, <span class="number">31</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">+</span> <span class="ident">Duration::days</span>(<span class="number">364</span>), <span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">12</span>, <span class="number">31</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">+</span> <span class="ident">Duration::days</span>(<span class="number">365</span><span class="kw-2">*</span><span class="number">4</span> <span class="op">+</span> <span class="number">1</span>), <span class="ident">from_ymd</span>(<span class="number">2018</span>, <span class="number">1</span>, <span class="number">1</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">+</span> <span class="ident">Duration::days</span>(<span class="number">365</span><span class="kw-2">*</span><span class="number">400</span> <span class="op">+</span> <span class="number">97</span>), <span class="ident">from_ymd</span>(<span class="number">2414</span>, <span class="number">1</span>, <span class="number">1</span>));</code></pre></div>
</div><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-5" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-5" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="naive/struct.NaiveDate.html" title="struct chrono::naive::NaiveDate">NaiveDate</a></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>+</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add-1" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/date.rs.html#1472-1474">source</a></span><a href="#method.add-1" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#tymethod.add" class="fnname">add</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>) -> <a class="struct" href="naive/struct.NaiveDate.html" title="struct chrono::naive::NaiveDate">NaiveDate</a></h4></section></summary><div class='docblock'><p>Performs the <code>+</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#tymethod.add">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Add%3CDuration%3E-2" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/datetime.rs.html#1252-1259">source</a></span><a href="#impl-Add%3CDuration%3E-2" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="naive/struct.NaiveDateTime.html" title="struct chrono::naive::NaiveDateTime">NaiveDateTime</a></h3></section></summary><div class="docblock"><p>An addition of <code>Duration</code> to <code>NaiveDateTime</code> yields another <code>NaiveDateTime</code>.</p>
<p>As a part of Chrono’s <a href="./struct.NaiveTime.html#leap-second-handling">leap second handling</a>,
the addition assumes that <strong>there is no leap second ever</strong>,
except when the <code>NaiveDateTime</code> itself represents a leap second
in which case the assumption becomes that <strong>there is exactly a single leap second ever</strong>.</p>
<p>Panics on underflow or overflow.
Use <a href="#method.checked_add_signed"><code>NaiveDateTime::checked_add_signed</code></a> to detect that.</p>
<h4 id="example-2"><a href="#example-2">Example</a></h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use</span> <span class="ident">chrono</span>::{<span class="ident">Duration</span>, <span class="ident">NaiveDate</span>};
<span class="kw">let</span> <span class="ident">from_ymd</span> <span class="op">=</span> <span class="ident">NaiveDate::from_ymd</span>;
<span class="kw">let</span> <span class="ident">d</span> <span class="op">=</span> <span class="ident">from_ymd</span>(<span class="number">2016</span>, <span class="number">7</span>, <span class="number">8</span>);
<span class="kw">let</span> <span class="ident">hms</span> <span class="op">=</span> <span class="op">|</span><span class="ident">h</span>, <span class="ident">m</span>, <span class="ident">s</span><span class="op">|</span> <span class="ident">d</span>.<span class="ident">and_hms</span>(<span class="ident">h</span>, <span class="ident">m</span>, <span class="ident">s</span>);
<span class="macro">assert_eq!</span>(<span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>) <span class="op">+</span> <span class="ident">Duration::zero</span>(), <span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>));
<span class="macro">assert_eq!</span>(<span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>) <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="number">1</span>), <span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">8</span>));
<span class="macro">assert_eq!</span>(<span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>) <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="op">-</span><span class="number">1</span>), <span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">6</span>));
<span class="macro">assert_eq!</span>(<span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>) <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="number">3600</span> <span class="op">+</span> <span class="number">60</span>), <span class="ident">hms</span>(<span class="number">4</span>, <span class="number">6</span>, <span class="number">7</span>));
<span class="macro">assert_eq!</span>(<span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>) <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="number">86_400</span>),
<span class="ident">from_ymd</span>(<span class="number">2016</span>, <span class="number">7</span>, <span class="number">9</span>).<span class="ident">and_hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>));
<span class="macro">assert_eq!</span>(<span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>) <span class="op">+</span> <span class="ident">Duration::days</span>(<span class="number">365</span>),
<span class="ident">from_ymd</span>(<span class="number">2017</span>, <span class="number">7</span>, <span class="number">8</span>).<span class="ident">and_hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>));
<span class="kw">let</span> <span class="ident">hmsm</span> <span class="op">=</span> <span class="op">|</span><span class="ident">h</span>, <span class="ident">m</span>, <span class="ident">s</span>, <span class="ident">milli</span><span class="op">|</span> <span class="ident">d</span>.<span class="ident">and_hms_milli</span>(<span class="ident">h</span>, <span class="ident">m</span>, <span class="ident">s</span>, <span class="ident">milli</span>);
<span class="macro">assert_eq!</span>(<span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">980</span>) <span class="op">+</span> <span class="ident">Duration::milliseconds</span>(<span class="number">450</span>), <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">8</span>, <span class="number">430</span>));</code></pre></div>
<p>Leap seconds are handled,
but the addition assumes that it is the only leap second happened.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let</span> <span class="ident">leap</span> <span class="op">=</span> <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">1_300</span>);
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::zero</span>(), <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">1_300</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::milliseconds</span>(<span class="op">-</span><span class="number">500</span>), <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">800</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::milliseconds</span>(<span class="number">500</span>), <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">1_800</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::milliseconds</span>(<span class="number">800</span>), <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">6</span>, <span class="number">0</span>, <span class="number">100</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="number">10</span>), <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">6</span>, <span class="number">9</span>, <span class="number">300</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="op">-</span><span class="number">10</span>), <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">50</span>, <span class="number">300</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::days</span>(<span class="number">1</span>),
<span class="ident">from_ymd</span>(<span class="number">2016</span>, <span class="number">7</span>, <span class="number">9</span>).<span class="ident">and_hms_milli</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">300</span>));</code></pre></div>
</div><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-7" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-7" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="naive/struct.NaiveDateTime.html" title="struct chrono::naive::NaiveDateTime">NaiveDateTime</a></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>+</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add-2" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/datetime.rs.html#1256-1258">source</a></span><a href="#method.add-2" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#tymethod.add" class="fnname">add</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>) -> <a class="struct" href="naive/struct.NaiveDateTime.html" title="struct chrono::naive::NaiveDateTime">NaiveDateTime</a></h4></section></summary><div class='docblock'><p>Performs the <code>+</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#tymethod.add">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Add%3CDuration%3E-3" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/time.rs.html#1078-1085">source</a></span><a href="#impl-Add%3CDuration%3E-3" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="naive/struct.NaiveTime.html" title="struct chrono::naive::NaiveTime">NaiveTime</a></h3></section></summary><div class="docblock"><p>An addition of <code>Duration</code> to <code>NaiveTime</code> wraps around and never overflows or underflows.
In particular the addition ignores integral number of days.</p>
<p>As a part of Chrono’s <a href="#leap-second-handling">leap second handling</a>,
the addition assumes that <strong>there is no leap second ever</strong>,
except when the <code>NaiveTime</code> itself represents a leap second
in which case the assumption becomes that <strong>there is exactly a single leap second ever</strong>.</p>
<h4 id="example-4"><a href="#example-4">Example</a></h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use</span> <span class="ident">chrono</span>::{<span class="ident">Duration</span>, <span class="ident">NaiveTime</span>};
<span class="kw">let</span> <span class="ident">from_hmsm</span> <span class="op">=</span> <span class="ident">NaiveTime::from_hms_milli</span>;
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">+</span> <span class="ident">Duration::zero</span>(), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="number">1</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">8</span>, <span class="number">0</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="op">-</span><span class="number">1</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">6</span>, <span class="number">0</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="number">60</span> <span class="op">+</span> <span class="number">4</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">6</span>, <span class="number">11</span>, <span class="number">0</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="number">7</span><span class="kw-2">*</span><span class="number">60</span><span class="kw-2">*</span><span class="number">60</span> <span class="op">-</span> <span class="number">6</span><span class="kw-2">*</span><span class="number">60</span>), <span class="ident">from_hmsm</span>(<span class="number">9</span>, <span class="number">59</span>, <span class="number">7</span>, <span class="number">0</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">+</span> <span class="ident">Duration::milliseconds</span>(<span class="number">80</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">80</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">950</span>) <span class="op">+</span> <span class="ident">Duration::milliseconds</span>(<span class="number">280</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">8</span>, <span class="number">230</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">950</span>) <span class="op">+</span> <span class="ident">Duration::milliseconds</span>(<span class="op">-</span><span class="number">980</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">6</span>, <span class="number">970</span>));</code></pre></div>
<p>The addition wraps around.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="number">22</span><span class="kw-2">*</span><span class="number">60</span><span class="kw-2">*</span><span class="number">60</span>), <span class="ident">from_hmsm</span>(<span class="number">1</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="op">-</span><span class="number">8</span><span class="kw-2">*</span><span class="number">60</span><span class="kw-2">*</span><span class="number">60</span>), <span class="ident">from_hmsm</span>(<span class="number">19</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">+</span> <span class="ident">Duration::days</span>(<span class="number">800</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>));</code></pre></div>
<p>Leap seconds are handled, but the addition assumes that it is the only leap second happened.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let</span> <span class="ident">leap</span> <span class="op">=</span> <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">1_300</span>);
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::zero</span>(), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">1_300</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::milliseconds</span>(<span class="op">-</span><span class="number">500</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">800</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::milliseconds</span>(<span class="number">500</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">1_800</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::milliseconds</span>(<span class="number">800</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">6</span>, <span class="number">0</span>, <span class="number">100</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="number">10</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">6</span>, <span class="number">9</span>, <span class="number">300</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::seconds</span>(<span class="op">-</span><span class="number">10</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">50</span>, <span class="number">300</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">+</span> <span class="ident">Duration::days</span>(<span class="number">1</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">300</span>));</code></pre></div>
</div><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-9" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-9" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="naive/struct.NaiveTime.html" title="struct chrono::naive::NaiveTime">NaiveTime</a></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>+</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add-3" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/time.rs.html#1082-1084">source</a></span><a href="#method.add-3" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#tymethod.add" class="fnname">add</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>) -> <a class="struct" href="naive/struct.NaiveTime.html" title="struct chrono::naive::NaiveTime">NaiveTime</a></h4></section></summary><div class='docblock'><p>Performs the <code>+</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#tymethod.add">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Add%3CDuration%3E-4" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/date.rs.html#440-447">source</a></span><a href="#impl-Add%3CDuration%3E-4" class="anchor"></a><h3 class="code-header in-band">impl<Tz: <a class="trait" href="offset/trait.TimeZone.html" title="trait chrono::offset::TimeZone">TimeZone</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="struct.Date.html" title="struct chrono::Date">Date</a><Tz></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-11" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-11" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.Date.html" title="struct chrono::Date">Date</a><Tz></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>+</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add-4" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/date.rs.html#444-446">source</a></span><a href="#method.add-4" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#tymethod.add" class="fnname">add</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>) -> <a class="struct" href="struct.Date.html" title="struct chrono::Date">Date</a><Tz></h4></section></summary><div class='docblock'><p>Performs the <code>+</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#tymethod.add">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Add%3CDuration%3E-5" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/datetime.rs.html#693-700">source</a></span><a href="#impl-Add%3CDuration%3E-5" class="anchor"></a><h3 class="code-header in-band">impl<Tz: <a class="trait" href="offset/trait.TimeZone.html" title="trait chrono::offset::TimeZone">TimeZone</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="struct.DateTime.html" title="struct chrono::DateTime">DateTime</a><Tz></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-13" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-13" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.DateTime.html" title="struct chrono::DateTime">DateTime</a><Tz></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>+</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add-5" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/datetime.rs.html#697-699">source</a></span><a href="#method.add-5" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#tymethod.add" class="fnname">add</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>) -> <a class="struct" href="struct.DateTime.html" title="struct chrono::DateTime">DateTime</a><Tz></h4></section></summary><div class='docblock'><p>Performs the <code>+</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Add.html#tymethod.add">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-AddAssign%3CDuration%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/date.rs.html#1477-1482">source</a></span><a href="#impl-AddAssign%3CDuration%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.AddAssign.html" title="trait core::ops::arith::AddAssign">AddAssign</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="naive/struct.NaiveDate.html" title="struct chrono::naive::NaiveDate">NaiveDate</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add_assign" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/date.rs.html#1479-1481">source</a></span><a href="#method.add_assign" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.AddAssign.html#tymethod.add_assign" class="fnname">add_assign</a>(&mut self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>)</h4></section></summary><div class='docblock'><p>Performs the <code>+=</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.AddAssign.html#tymethod.add_assign">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-AddAssign%3CDuration%3E-1" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/datetime.rs.html#1261-1266">source</a></span><a href="#impl-AddAssign%3CDuration%3E-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.AddAssign.html" title="trait core::ops::arith::AddAssign">AddAssign</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="naive/struct.NaiveDateTime.html" title="struct chrono::naive::NaiveDateTime">NaiveDateTime</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add_assign-1" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/datetime.rs.html#1263-1265">source</a></span><a href="#method.add_assign-1" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.AddAssign.html#tymethod.add_assign" class="fnname">add_assign</a>(&mut self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>)</h4></section></summary><div class='docblock'><p>Performs the <code>+=</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.AddAssign.html#tymethod.add_assign">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-AddAssign%3CDuration%3E-2" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/time.rs.html#1087-1092">source</a></span><a href="#impl-AddAssign%3CDuration%3E-2" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.AddAssign.html" title="trait core::ops::arith::AddAssign">AddAssign</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="naive/struct.NaiveTime.html" title="struct chrono::naive::NaiveTime">NaiveTime</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add_assign-2" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/time.rs.html#1089-1091">source</a></span><a href="#method.add_assign-2" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.AddAssign.html#tymethod.add_assign" class="fnname">add_assign</a>(&mut self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>)</h4></section></summary><div class='docblock'><p>Performs the <code>+=</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.AddAssign.html#tymethod.add_assign">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Clone" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#impl-Clone" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#method.clone" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone" class="fnname">clone</a>(&self) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class='docblock'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/clone.rs.html#133-135">source</a></span><a href="#method.clone_from" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from" class="fnname">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Self)</h4></section></summary><div class='docblock'><p>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Debug" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#impl-Debug" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#method.fmt" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt" class="fnname">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Display" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#375-404">source</a></span><a href="#impl-Display" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.fmt-1" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#376-403">source</a></span><a href="#method.fmt-1" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html#tymethod.fmt" class="fnname">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html#tymethod.fmt">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Div%3Ci32%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#355-373">source</a></span><a href="#impl-Div%3Ci32%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Div.html" title="trait core::ops::arith::Div">Div</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-4" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-4" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Div.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>/</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.div" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#358-372">source</a></span><a href="#method.div" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Div.html#tymethod.div" class="fnname">div</a>(self, rhs: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class='docblock'><p>Performs the <code>/</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Div.html#tymethod.div">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Mul%3Ci32%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#343-353">source</a></span><a href="#impl-Mul%3Ci32%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Mul.html" title="trait core::ops::arith::Mul">Mul</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-3" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-3" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Mul.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>*</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.mul" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#346-352">source</a></span><a href="#method.mul" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Mul.html#tymethod.mul" class="fnname">mul</a>(self, rhs: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.i32.html">i32</a>) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class='docblock'><p>Performs the <code>*</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Mul.html#tymethod.mul">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Neg" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#302-313">source</a></span><a href="#impl-Neg" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Neg.html" title="trait core::ops::arith::Neg">Neg</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Neg.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>-</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.neg" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#306-312">source</a></span><a href="#method.neg" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Neg.html#tymethod.neg" class="fnname">neg</a>(self) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class='docblock'><p>Performs the unary <code>-</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Neg.html#tymethod.neg">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Ord" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#impl-Ord" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#method.cmp" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#tymethod.cmp" class="fnname">cmp</a>(&self, other: &<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a></h4></section></summary><div class='docblock'><p>This method returns an <a href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="Ordering"><code>Ordering</code></a> between <code>self</code> and <code>other</code>. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#tymethod.cmp">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.max" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.21.0">1.21.0</span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#796-798">source</a></span><a href="#method.max" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max" class="fnname">max</a>(self, other: Self) -> Self</h4></section></summary><div class='docblock'><p>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.min" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.21.0">1.21.0</span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#816-818">source</a></span><a href="#method.min" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.min" class="fnname">min</a>(self, other: Self) -> Self</h4></section></summary><div class='docblock'><p>Compares and returns the minimum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.min">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clamp" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.50.0">1.50.0</span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#841-843">source</a></span><a href="#method.clamp" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.clamp" class="fnname">clamp</a>(self, min: Self, max: Self) -> Self</h4></section></summary><div class='docblock'><p>Restrict a value to a certain interval. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.clamp">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-PartialEq%3CDuration%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#impl-PartialEq%3CDuration%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#method.eq" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.eq" class="fnname">eq</a>(&self, other: &<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'><p>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used
by <code>==</code>. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.eq">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#method.ne" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class="fnname">ne</a>(&self, other: &<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'><p>This method tests for <code>!=</code>.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CDuration%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#impl-PartialOrd%3CDuration%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.partial_cmp" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#method.partial_cmp" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp" class="fnname">partial_cmp</a>(&self, other: &<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>></h4></section></summary><div class='docblock'><p>This method returns an ordering between <code>self</code> and <code>other</code> values if one exists. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.lt" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1100">source</a></span><a href="#method.lt" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.lt" class="fnname">lt</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Rhs) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'><p>This method tests less than (for <code>self</code> and <code>other</code>) and is used by the <code><</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.lt">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.le" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1120">source</a></span><a href="#method.le" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le" class="fnname">le</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Rhs) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'><p>This method tests less than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code><=</code>
operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.gt" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1143">source</a></span><a href="#method.gt" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.gt" class="fnname">gt</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Rhs) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'><p>This method tests greater than (for <code>self</code> and <code>other</code>) and is used by the <code>></code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.gt">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.ge" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1163">source</a></span><a href="#method.ge" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge" class="fnname">ge</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Rhs) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'><p>This method tests greater than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>>=</code>
operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Sub%3CDuration%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#329-341">source</a></span><a href="#impl-Sub%3CDuration%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-2" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-2" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>-</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.sub" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#332-340">source</a></span><a href="#method.sub" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#tymethod.sub" class="fnname">sub</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>) -> <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h4></section></summary><div class='docblock'><p>Performs the <code>-</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#tymethod.sub">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Sub%3CDuration%3E-1" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/date.rs.html#1509-1516">source</a></span><a href="#impl-Sub%3CDuration%3E-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="naive/struct.NaiveDate.html" title="struct chrono::naive::NaiveDate">NaiveDate</a></h3></section></summary><div class="docblock"><p>A subtraction of <code>Duration</code> from <code>NaiveDate</code> discards the fractional days,
rounding to the closest integral number of days towards <code>Duration::zero()</code>.
It is the same as the addition with a negated <code>Duration</code>.</p>
<p>Panics on underflow or overflow.
Use <a href="#method.checked_sub_signed"><code>NaiveDate::checked_sub_signed</code></a> to detect that.</p>
<h4 id="example-1"><a href="#example-1">Example</a></h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use</span> <span class="ident">chrono</span>::{<span class="ident">Duration</span>, <span class="ident">NaiveDate</span>};
<span class="kw">let</span> <span class="ident">from_ymd</span> <span class="op">=</span> <span class="ident">NaiveDate::from_ymd</span>;
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">-</span> <span class="ident">Duration::zero</span>(), <span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">-</span> <span class="ident">Duration::seconds</span>(<span class="number">86399</span>), <span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">-</span> <span class="ident">Duration::seconds</span>(<span class="op">-</span><span class="number">86399</span>), <span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">-</span> <span class="ident">Duration::days</span>(<span class="number">1</span>), <span class="ident">from_ymd</span>(<span class="number">2013</span>, <span class="number">12</span>, <span class="number">31</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">-</span> <span class="ident">Duration::days</span>(<span class="op">-</span><span class="number">1</span>), <span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">2</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">-</span> <span class="ident">Duration::days</span>(<span class="number">364</span>), <span class="ident">from_ymd</span>(<span class="number">2013</span>, <span class="number">1</span>, <span class="number">2</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">-</span> <span class="ident">Duration::days</span>(<span class="number">365</span><span class="kw-2">*</span><span class="number">4</span> <span class="op">+</span> <span class="number">1</span>), <span class="ident">from_ymd</span>(<span class="number">2010</span>, <span class="number">1</span>, <span class="number">1</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_ymd</span>(<span class="number">2014</span>, <span class="number">1</span>, <span class="number">1</span>) <span class="op">-</span> <span class="ident">Duration::days</span>(<span class="number">365</span><span class="kw-2">*</span><span class="number">400</span> <span class="op">+</span> <span class="number">97</span>), <span class="ident">from_ymd</span>(<span class="number">1614</span>, <span class="number">1</span>, <span class="number">1</span>));</code></pre></div>
</div><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-6" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-6" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="naive/struct.NaiveDate.html" title="struct chrono::naive::NaiveDate">NaiveDate</a></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>-</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.sub-1" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/date.rs.html#1513-1515">source</a></span><a href="#method.sub-1" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#tymethod.sub" class="fnname">sub</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>) -> <a class="struct" href="naive/struct.NaiveDate.html" title="struct chrono::naive::NaiveDate">NaiveDate</a></h4></section></summary><div class='docblock'><p>Performs the <code>-</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#tymethod.sub">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Sub%3CDuration%3E-2" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/datetime.rs.html#1320-1327">source</a></span><a href="#impl-Sub%3CDuration%3E-2" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="naive/struct.NaiveDateTime.html" title="struct chrono::naive::NaiveDateTime">NaiveDateTime</a></h3></section></summary><div class="docblock"><p>A subtraction of <code>Duration</code> from <code>NaiveDateTime</code> yields another <code>NaiveDateTime</code>.
It is the same as the addition with a negated <code>Duration</code>.</p>
<p>As a part of Chrono’s <a href="./struct.NaiveTime.html#leap-second-handling">leap second handling</a>,
the addition assumes that <strong>there is no leap second ever</strong>,
except when the <code>NaiveDateTime</code> itself represents a leap second
in which case the assumption becomes that <strong>there is exactly a single leap second ever</strong>.</p>
<p>Panics on underflow or overflow.
Use <a href="#method.checked_sub_signed"><code>NaiveDateTime::checked_sub_signed</code></a> to detect that.</p>
<h4 id="example-3"><a href="#example-3">Example</a></h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use</span> <span class="ident">chrono</span>::{<span class="ident">Duration</span>, <span class="ident">NaiveDate</span>};
<span class="kw">let</span> <span class="ident">from_ymd</span> <span class="op">=</span> <span class="ident">NaiveDate::from_ymd</span>;
<span class="kw">let</span> <span class="ident">d</span> <span class="op">=</span> <span class="ident">from_ymd</span>(<span class="number">2016</span>, <span class="number">7</span>, <span class="number">8</span>);
<span class="kw">let</span> <span class="ident">hms</span> <span class="op">=</span> <span class="op">|</span><span class="ident">h</span>, <span class="ident">m</span>, <span class="ident">s</span><span class="op">|</span> <span class="ident">d</span>.<span class="ident">and_hms</span>(<span class="ident">h</span>, <span class="ident">m</span>, <span class="ident">s</span>);
<span class="macro">assert_eq!</span>(<span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>) <span class="op">-</span> <span class="ident">Duration::zero</span>(), <span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>));
<span class="macro">assert_eq!</span>(<span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>) <span class="op">-</span> <span class="ident">Duration::seconds</span>(<span class="number">1</span>), <span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">6</span>));
<span class="macro">assert_eq!</span>(<span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>) <span class="op">-</span> <span class="ident">Duration::seconds</span>(<span class="op">-</span><span class="number">1</span>), <span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">8</span>));
<span class="macro">assert_eq!</span>(<span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>) <span class="op">-</span> <span class="ident">Duration::seconds</span>(<span class="number">3600</span> <span class="op">+</span> <span class="number">60</span>), <span class="ident">hms</span>(<span class="number">2</span>, <span class="number">4</span>, <span class="number">7</span>));
<span class="macro">assert_eq!</span>(<span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>) <span class="op">-</span> <span class="ident">Duration::seconds</span>(<span class="number">86_400</span>),
<span class="ident">from_ymd</span>(<span class="number">2016</span>, <span class="number">7</span>, <span class="number">7</span>).<span class="ident">and_hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>));
<span class="macro">assert_eq!</span>(<span class="ident">hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>) <span class="op">-</span> <span class="ident">Duration::days</span>(<span class="number">365</span>),
<span class="ident">from_ymd</span>(<span class="number">2015</span>, <span class="number">7</span>, <span class="number">9</span>).<span class="ident">and_hms</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>));
<span class="kw">let</span> <span class="ident">hmsm</span> <span class="op">=</span> <span class="op">|</span><span class="ident">h</span>, <span class="ident">m</span>, <span class="ident">s</span>, <span class="ident">milli</span><span class="op">|</span> <span class="ident">d</span>.<span class="ident">and_hms_milli</span>(<span class="ident">h</span>, <span class="ident">m</span>, <span class="ident">s</span>, <span class="ident">milli</span>);
<span class="macro">assert_eq!</span>(<span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">450</span>) <span class="op">-</span> <span class="ident">Duration::milliseconds</span>(<span class="number">670</span>), <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">6</span>, <span class="number">780</span>));</code></pre></div>
<p>Leap seconds are handled,
but the subtraction assumes that it is the only leap second happened.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let</span> <span class="ident">leap</span> <span class="op">=</span> <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">1_300</span>);
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">-</span> <span class="ident">Duration::zero</span>(), <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">1_300</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">-</span> <span class="ident">Duration::milliseconds</span>(<span class="number">200</span>), <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">1_100</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">-</span> <span class="ident">Duration::milliseconds</span>(<span class="number">500</span>), <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">800</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">-</span> <span class="ident">Duration::seconds</span>(<span class="number">60</span>), <span class="ident">hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">0</span>, <span class="number">300</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">-</span> <span class="ident">Duration::days</span>(<span class="number">1</span>),
<span class="ident">from_ymd</span>(<span class="number">2016</span>, <span class="number">7</span>, <span class="number">7</span>).<span class="ident">and_hms_milli</span>(<span class="number">3</span>, <span class="number">6</span>, <span class="number">0</span>, <span class="number">300</span>));</code></pre></div>
</div><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-8" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-8" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="naive/struct.NaiveDateTime.html" title="struct chrono::naive::NaiveDateTime">NaiveDateTime</a></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>-</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.sub-2" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/datetime.rs.html#1324-1326">source</a></span><a href="#method.sub-2" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#tymethod.sub" class="fnname">sub</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>) -> <a class="struct" href="naive/struct.NaiveDateTime.html" title="struct chrono::naive::NaiveDateTime">NaiveDateTime</a></h4></section></summary><div class='docblock'><p>Performs the <code>-</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#tymethod.sub">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Sub%3CDuration%3E-3" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/time.rs.html#1145-1152">source</a></span><a href="#impl-Sub%3CDuration%3E-3" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="naive/struct.NaiveTime.html" title="struct chrono::naive::NaiveTime">NaiveTime</a></h3></section></summary><div class="docblock"><p>A subtraction of <code>Duration</code> from <code>NaiveTime</code> wraps around and never overflows or underflows.
In particular the addition ignores integral number of days.
It is the same as the addition with a negated <code>Duration</code>.</p>
<p>As a part of Chrono’s <a href="#leap-second-handling">leap second handling</a>,
the addition assumes that <strong>there is no leap second ever</strong>,
except when the <code>NaiveTime</code> itself represents a leap second
in which case the assumption becomes that <strong>there is exactly a single leap second ever</strong>.</p>
<h4 id="example-5"><a href="#example-5">Example</a></h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use</span> <span class="ident">chrono</span>::{<span class="ident">Duration</span>, <span class="ident">NaiveTime</span>};
<span class="kw">let</span> <span class="ident">from_hmsm</span> <span class="op">=</span> <span class="ident">NaiveTime::from_hms_milli</span>;
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">-</span> <span class="ident">Duration::zero</span>(), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">-</span> <span class="ident">Duration::seconds</span>(<span class="number">1</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">6</span>, <span class="number">0</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">-</span> <span class="ident">Duration::seconds</span>(<span class="number">60</span> <span class="op">+</span> <span class="number">5</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">4</span>, <span class="number">2</span>, <span class="number">0</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">-</span> <span class="ident">Duration::seconds</span>(<span class="number">2</span><span class="kw-2">*</span><span class="number">60</span><span class="kw-2">*</span><span class="number">60</span> <span class="op">+</span> <span class="number">6</span><span class="kw-2">*</span><span class="number">60</span>), <span class="ident">from_hmsm</span>(<span class="number">0</span>, <span class="number">59</span>, <span class="number">7</span>, <span class="number">0</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">-</span> <span class="ident">Duration::milliseconds</span>(<span class="number">80</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">6</span>, <span class="number">920</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">950</span>) <span class="op">-</span> <span class="ident">Duration::milliseconds</span>(<span class="number">280</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">670</span>));</code></pre></div>
<p>The subtraction wraps around.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">-</span> <span class="ident">Duration::seconds</span>(<span class="number">8</span><span class="kw-2">*</span><span class="number">60</span><span class="kw-2">*</span><span class="number">60</span>), <span class="ident">from_hmsm</span>(<span class="number">19</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>));
<span class="macro">assert_eq!</span>(<span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>) <span class="op">-</span> <span class="ident">Duration::days</span>(<span class="number">800</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">7</span>, <span class="number">0</span>));</code></pre></div>
<p>Leap seconds are handled, but the subtraction assumes that it is the only leap second happened.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let</span> <span class="ident">leap</span> <span class="op">=</span> <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">1_300</span>);
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">-</span> <span class="ident">Duration::zero</span>(), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">1_300</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">-</span> <span class="ident">Duration::milliseconds</span>(<span class="number">200</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">1_100</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">-</span> <span class="ident">Duration::milliseconds</span>(<span class="number">500</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">59</span>, <span class="number">800</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">-</span> <span class="ident">Duration::seconds</span>(<span class="number">60</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">5</span>, <span class="number">0</span>, <span class="number">300</span>));
<span class="macro">assert_eq!</span>(<span class="ident">leap</span> <span class="op">-</span> <span class="ident">Duration::days</span>(<span class="number">1</span>), <span class="ident">from_hmsm</span>(<span class="number">3</span>, <span class="number">6</span>, <span class="number">0</span>, <span class="number">300</span>));</code></pre></div>
</div><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-10" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-10" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="naive/struct.NaiveTime.html" title="struct chrono::naive::NaiveTime">NaiveTime</a></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>-</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.sub-3" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/time.rs.html#1149-1151">source</a></span><a href="#method.sub-3" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#tymethod.sub" class="fnname">sub</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>) -> <a class="struct" href="naive/struct.NaiveTime.html" title="struct chrono::naive::NaiveTime">NaiveTime</a></h4></section></summary><div class='docblock'><p>Performs the <code>-</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#tymethod.sub">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Sub%3CDuration%3E-4" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/date.rs.html#449-456">source</a></span><a href="#impl-Sub%3CDuration%3E-4" class="anchor"></a><h3 class="code-header in-band">impl<Tz: <a class="trait" href="offset/trait.TimeZone.html" title="trait chrono::offset::TimeZone">TimeZone</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="struct.Date.html" title="struct chrono::Date">Date</a><Tz></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-12" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-12" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.Date.html" title="struct chrono::Date">Date</a><Tz></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>-</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.sub-4" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/date.rs.html#453-455">source</a></span><a href="#method.sub-4" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#tymethod.sub" class="fnname">sub</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>) -> <a class="struct" href="struct.Date.html" title="struct chrono::Date">Date</a><Tz></h4></section></summary><div class='docblock'><p>Performs the <code>-</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#tymethod.sub">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Sub%3CDuration%3E-5" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/datetime.rs.html#702-709">source</a></span><a href="#impl-Sub%3CDuration%3E-5" class="anchor"></a><h3 class="code-header in-band">impl<Tz: <a class="trait" href="offset/trait.TimeZone.html" title="trait chrono::offset::TimeZone">TimeZone</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="struct.DateTime.html" title="struct chrono::DateTime">DateTime</a><Tz></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Output-14" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output-14" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.DateTime.html" title="struct chrono::DateTime">DateTime</a><Tz></h4></section></summary><div class='docblock'><p>The resulting type after applying the <code>-</code> operator.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.sub-5" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/datetime.rs.html#706-708">source</a></span><a href="#method.sub-5" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#tymethod.sub" class="fnname">sub</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>) -> <a class="struct" href="struct.DateTime.html" title="struct chrono::DateTime">DateTime</a><Tz></h4></section></summary><div class='docblock'><p>Performs the <code>-</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.Sub.html#tymethod.sub">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-SubAssign%3CDuration%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/date.rs.html#1518-1523">source</a></span><a href="#impl-SubAssign%3CDuration%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.SubAssign.html" title="trait core::ops::arith::SubAssign">SubAssign</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="naive/struct.NaiveDate.html" title="struct chrono::naive::NaiveDate">NaiveDate</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.sub_assign" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/date.rs.html#1520-1522">source</a></span><a href="#method.sub_assign" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.SubAssign.html#tymethod.sub_assign" class="fnname">sub_assign</a>(&mut self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>)</h4></section></summary><div class='docblock'><p>Performs the <code>-=</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.SubAssign.html#tymethod.sub_assign">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-SubAssign%3CDuration%3E-1" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/datetime.rs.html#1329-1334">source</a></span><a href="#impl-SubAssign%3CDuration%3E-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.SubAssign.html" title="trait core::ops::arith::SubAssign">SubAssign</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="naive/struct.NaiveDateTime.html" title="struct chrono::naive::NaiveDateTime">NaiveDateTime</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.sub_assign-1" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/datetime.rs.html#1331-1333">source</a></span><a href="#method.sub_assign-1" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.SubAssign.html#tymethod.sub_assign" class="fnname">sub_assign</a>(&mut self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>)</h4></section></summary><div class='docblock'><p>Performs the <code>-=</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.SubAssign.html#tymethod.sub_assign">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-SubAssign%3CDuration%3E-2" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/time.rs.html#1154-1159">source</a></span><a href="#impl-SubAssign%3CDuration%3E-2" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.SubAssign.html" title="trait core::ops::arith::SubAssign">SubAssign</a><<a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a>> for <a class="struct" href="naive/struct.NaiveTime.html" title="struct chrono::naive::NaiveTime">NaiveTime</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.sub_assign-2" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/naive/time.rs.html#1156-1158">source</a></span><a href="#method.sub_assign-2" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.SubAssign.html#tymethod.sub_assign" class="fnname">sub_assign</a>(&mut self, rhs: <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">OldDuration</a>)</h4></section></summary><div class='docblock'><p>Performs the <code>-=</code> operation. <a href="https://doc.rust-lang.org/nightly/core/ops/arith/trait.SubAssign.html#tymethod.sub_assign">Read more</a></p>
</div></details></div></details><section id="impl-Copy" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#impl-Copy" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section><section id="impl-Eq" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#impl-Eq" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section><section id="impl-StructuralEq" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#impl-StructuralEq" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.StructuralEq.html" title="trait core::marker::StructuralEq">StructuralEq</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section><section id="impl-StructuralPartialEq" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/chrono/oldtime.rs.html#49">source</a></span><a href="#impl-StructuralPartialEq" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.StructuralPartialEq.html" title="trait core::marker::StructuralPartialEq">StructuralPartialEq</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe" class="impl has-srclink"><a href="#impl-RefUnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section><section id="impl-Send" class="impl has-srclink"><a href="#impl-Send" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section><section id="impl-Sync" class="impl has-srclink"><a href="#impl-Sync" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section><section id="impl-Unpin" class="impl has-srclink"><a href="#impl-Unpin" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section><section id="impl-UnwindSafe" class="impl has-srclink"><a href="#impl-UnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Duration.html" title="struct chrono::Duration">Duration</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Any" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#132-136">source</a></span><a href="#impl-Any" class="anchor"></a><h3 class="code-header in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br> T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#133">source</a></span><a href="#method.type_id" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id" class="fnname">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#209-214">source</a></span><a href="#impl-Borrow%3CT%3E" class="anchor"></a><h3 class="code-header in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T <span class="where fmt-newline">where<br> T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/91522" title="Tracking issue for const_borrow">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#211">source</a></span><a href="#method.borrow" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow" class="fnname">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>T</h4></section></summary><div class='docblock'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#218-222">source</a></span><a href="#impl-BorrowMut%3CT%3E" class="anchor"></a><h3 class="code-header in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T <span class="where fmt-newline">where<br> T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/91522" title="Tracking issue for const_borrow">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#219">source</a></span><a href="#method.borrow_mut" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fnname">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>T</h4></section></summary><div class='docblock'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-From%3CT%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#557-562">source</a></span><a href="#impl-From%3CT%3E" class="anchor"></a><h3 class="code-header in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#559">source</a></span><a href="#method.from" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#541-552">source</a></span><a href="#impl-Into%3CU%3E" class="anchor"></a><h3 class="code-header in-band">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T <span class="where fmt-newline">where<br> U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>, </span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.into" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#549">source</a></span><a href="#method.into" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html#tymethod.into" class="fnname">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
<p>That is, this conversion is whatever the implementation of
<code><a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="From">From</a><T> for U</code> chooses to do.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-ToOwned" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#84-96">source</a></span><a href="#impl-ToOwned" class="anchor"></a><h3 class="code-header in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T <span class="where fmt-newline">where<br> T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>, </span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Owned" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'><p>The resulting type after obtaining ownership.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#89">source</a></span><a href="#method.to_owned" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fnname">to_owned</a>(&self) -> T</h4></section></summary><div class='docblock'><p>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#93">source</a></span><a href="#method.clone_into" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fnname">clone_into</a>(&self, target: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>T)</h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span> This is a nightly-only experimental API. (<code>toowned_clone_into</code>)</div></span><div class='docblock'><p>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-ToString" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/alloc/string.rs.html#2467-2481">source</a></span><a href="#impl-ToString" class="anchor"></a><h3 class="code-header in-band">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html" title="trait alloc::string::ToString">ToString</a> for T <span class="where fmt-newline">where<br> T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.to_string" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/alloc/string.rs.html#2473">source</a></span><a href="#method.to_string" class="anchor"></a><h4 class="code-header">default fn <a href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html#tymethod.to_string" class="fnname">to_string</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></h4></section></summary><div class='docblock'><p>Converts the given value to a <code>String</code>. <a href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html#tymethod.to_string">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#598-607">source</a></span><a href="#impl-TryFrom%3CU%3E" class="anchor"></a><h3 class="code-header in-band">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T <span class="where fmt-newline">where<br> U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>, </span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#604">source</a></span><a href="#method.try_from" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#tymethod.try_from" class="fnname">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#583-592">source</a></span><a href="#impl-TryInto%3CU%3E" class="anchor"></a><h3 class="code-header in-band">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T <span class="where fmt-newline">where<br> U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>, </span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error-1" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#589">source</a></span><a href="#method.try_into" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#tymethod.try_into" class="fnname">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details></div></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../" data-current-crate="chrono" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.62.0-nightly (de1bc0008 2022-04-21)" ></div>
</body></html>