kanidm/docs/v1.1.0-alpha.9/rustdoc/kanidmd_lib/prelude/struct.Duration.html
2023-03-13 03:34:14 +00:00

482 lines
204 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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="A `Duration` type to represent a span of time, typically used for system timeouts."><meta name="keywords" content="rust, rustlang, rust-lang, Duration"><title>Duration in kanidmd_lib::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-1f7d512b176f0f72.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-124a1ca42af929b6.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-93196c7a1c3542a8.css" id="mainThemeStyle"><link rel="stylesheet" id="themeStyle" href="../../static.files/light-4743e13df3dfe8c4.css"><link rel="stylesheet" disabled href="../../static.files/dark-0e1b889528bd466b.css"><link rel="stylesheet" disabled href="../../static.files/ayu-65289d5d067c7c66.css"><script id="default-settings" ></script><script src="../../static.files/storage-d43fa987303ecbbb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-3367e395607fafc1.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-13285aec31fa243e.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.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">&#9776;</button><a class="logo-container" href="../../kanidmd_lib/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2></h2></nav><nav class="sidebar"><a class="logo-container" href="../../kanidmd_lib/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Duration</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Associated Constants</a></h3><ul class="block"><li><a href="#associatedconstant.MAX">MAX</a></li><li><a href="#associatedconstant.MICROSECOND">MICROSECOND</a></li><li><a href="#associatedconstant.MILLISECOND">MILLISECOND</a></li><li><a href="#associatedconstant.NANOSECOND">NANOSECOND</a></li><li><a href="#associatedconstant.SECOND">SECOND</a></li><li><a href="#associatedconstant.ZERO">ZERO</a></li></ul><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.as_micros">as_micros</a></li><li><a href="#method.as_millis">as_millis</a></li><li><a href="#method.as_nanos">as_nanos</a></li><li><a href="#method.as_secs">as_secs</a></li><li><a href="#method.as_secs_f32">as_secs_f32</a></li><li><a href="#method.as_secs_f64">as_secs_f64</a></li><li><a href="#method.checked_add">checked_add</a></li><li><a href="#method.checked_div">checked_div</a></li><li><a href="#method.checked_mul">checked_mul</a></li><li><a href="#method.checked_sub">checked_sub</a></li><li><a href="#method.div_duration_f32">div_duration_f32</a></li><li><a href="#method.div_duration_f64">div_duration_f64</a></li><li><a href="#method.div_f32">div_f32</a></li><li><a href="#method.div_f64">div_f64</a></li><li><a href="#method.from_micros">from_micros</a></li><li><a href="#method.from_millis">from_millis</a></li><li><a href="#method.from_nanos">from_nanos</a></li><li><a href="#method.from_secs">from_secs</a></li><li><a href="#method.from_secs_f32">from_secs_f32</a></li><li><a href="#method.from_secs_f64">from_secs_f64</a></li><li><a href="#method.is_zero">is_zero</a></li><li><a href="#method.mul_f32">mul_f32</a></li><li><a href="#method.mul_f64">mul_f64</a></li><li><a href="#method.new">new</a></li><li><a href="#method.saturating_add">saturating_add</a></li><li><a href="#method.saturating_mul">saturating_mul</a></li><li><a href="#method.saturating_sub">saturating_sub</a></li><li><a href="#method.subsec_micros">subsec_micros</a></li><li><a href="#method.subsec_millis">subsec_millis</a></li><li><a href="#method.subsec_nanos">subsec_nanos</a></li><li><a href="#method.try_from_secs_f32">try_from_secs_f32</a></li><li><a href="#method.try_from_secs_f64">try_from_secs_f64</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Add%3CDuration%3E-for-Duration">Add&lt;Duration&gt;</a></li><li><a href="#impl-Add%3CDuration%3E-for-Duration-1">Add&lt;Duration&gt;</a></li><li><a href="#impl-Add%3CDuration%3E-for-Duration-2">Add&lt;Duration&gt;</a></li><li><a href="#impl-AddAssign%3CDuration%3E-for-Duration">AddAssign&lt;Duration&gt;</a></li><li><a href="#impl-AddAssign%3CDuration%3E-for-Duration-1">AddAssign&lt;Duration&gt;</a></li><li><a href="#impl-Clone-for-Duration">Clone</a></li><li><a href="#impl-Copy-for-Duration">Copy</a></li><li><a href="#impl-Debug-for-Duration">Debug</a></li><li><a href="#impl-Default-for-Duration">Default</a></li><li><a href="#impl-Deserialize%3C%27de%3E-for-Duration">Deserialize&lt;&#39;de&gt;</a></li><li><a href="#impl-Div%3CDuration%3E-for-Duration">Div&lt;Duration&gt;</a></li><li><a href="#impl-Div%3CDuration%3E-for-Duration-1">Div&lt;Duration&gt;</a></li><li><a href="#impl-Div%3Cu32%3E-for-Duration">Div&lt;u32&gt;</a></li><li><a href="#impl-DivAssign%3Cu32%3E-for-Duration">DivAssign&lt;u32&gt;</a></li><li><a href="#impl-Eq-for-Duration">Eq</a></li><li><a href="#impl-From%3CCrackTimeSeconds%3E-for-Duration">From&lt;CrackTimeSeconds&gt;</a></li><li><a href="#impl-Hash-for-Duration">Hash</a></li><li><a href="#impl-Mul%3Cu32%3E-for-Duration">Mul&lt;u32&gt;</a></li><li><a href="#impl-MulAssign%3Cu32%3E-for-Duration">MulAssign&lt;u32&gt;</a></li><li><a href="#impl-Ord-for-Duration">Ord</a></li><li><a href="#impl-PartialEq%3CDuration%3E-for-Duration">PartialEq&lt;Duration&gt;</a></li><li><a href="#impl-PartialEq%3CDuration%3E-for-Duration-1">PartialEq&lt;Duration&gt;</a></li><li><a href="#impl-PartialEq%3CDuration%3E-for-Duration-2">PartialEq&lt;Duration&gt;</a></li><li><a href="#impl-PartialOrd%3CDuration%3E-for-Duration">PartialOrd&lt;Duration&gt;</a></li><li><a href="#impl-PartialOrd%3CDuration%3E-for-Duration-1">PartialOrd&lt;Duration&gt;</a></li><li><a href="#impl-PartialOrd%3CDuration%3E-for-Duration-2">PartialOrd&lt;Duration&gt;</a></li><li><a href="#impl-SampleUniform-for-Duration">SampleUniform</a></li><li><a href="#impl-SampleUniform-for-Duration-1">SampleUniform</a></li><li><a href="#impl-Serialize-for-Duration">Serialize</a></li><li><a href="#impl-StructuralEq-for-Duration">StructuralEq</a></li><li><a href="#impl-StructuralPartialEq-for-Duration">StructuralPartialEq</a></li><li><a href="#impl-Sub%3CDuration%3E-for-Duration">Sub&lt;Duration&gt;</a></li><li><a href="#impl-Sub%3CDuration%3E-for-Duration-1">Sub&lt;Duration&gt;</a></li><li><a href="#impl-Sub%3CDuration%3E-for-Duration-2">Sub&lt;Duration&gt;</a></li><li><a href="#impl-SubAssign%3CDuration%3E-for-Duration">SubAssign&lt;Duration&gt;</a></li><li><a href="#impl-SubAssign%3CDuration%3E-for-Duration-1">SubAssign&lt;Duration&gt;</a></li><li><a href="#impl-SubAssign%3CDuration%3E-for-Duration-2">SubAssign&lt;Duration&gt;</a></li><li><a href="#impl-Sum%3C%26%27a%20Duration%3E-for-Duration">Sum&lt;&amp;&#39;a Duration&gt;</a></li><li><a href="#impl-Sum%3CDuration%3E-for-Duration">Sum&lt;Duration&gt;</a></li><li><a href="#impl-TryFrom%3CDuration%3E-for-Duration">TryFrom&lt;Duration&gt;</a></li><li><a href="#impl-TryFrom%3CDuration%3E-for-Duration-1">TryFrom&lt;Duration&gt;</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Duration">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Duration">Send</a></li><li><a href="#impl-Sync-for-Duration">Sync</a></li><li><a href="#impl-Unpin-for-Duration">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Duration">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Duration">Any</a></li><li><a href="#impl-AsTaggedExplicit%3C%27a%3E-for-Duration">AsTaggedExplicit&lt;&#39;a&gt;</a></li><li><a href="#impl-AsTaggedImplicit%3C%27a%3E-for-Duration">AsTaggedImplicit&lt;&#39;a&gt;</a></li><li><a href="#impl-Borrow%3CT%3E-for-Duration">Borrow&lt;T&gt;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Duration">BorrowMut&lt;T&gt;</a></li><li><a href="#impl-CallHasher-for-Duration">CallHasher</a></li><li><a href="#impl-DeserializeOwned-for-Duration">DeserializeOwned</a></li><li><a href="#impl-DynClone-for-Duration">DynClone</a></li><li><a href="#impl-From%3CT%3E-for-Duration">From&lt;T&gt;</a></li><li><a href="#impl-Instrument-for-Duration">Instrument</a></li><li><a href="#impl-Into%3CU%3E-for-Duration">Into&lt;U&gt;</a></li><li><a href="#impl-Pointable-for-Duration">Pointable</a></li><li><a href="#impl-Same%3CT%3E-for-Duration">Same&lt;T&gt;</a></li><li><a href="#impl-SampleBorrow%3CBorrowed%3E-for-Duration">SampleBorrow&lt;Borrowed&gt;</a></li><li><a href="#impl-SampleBorrow%3CBorrowed%3E-for-Duration-1">SampleBorrow&lt;Borrowed&gt;</a></li><li><a href="#impl-Serialize-for-Duration-1">Serialize</a></li><li><a href="#impl-ToOwned-for-Duration">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-Duration">TryFrom&lt;U&gt;</a></li><li><a href="#impl-TryInto%3CU%3E-for-Duration">TryInto&lt;U&gt;</a></li><li><a href="#impl-VZip%3CV%3E-for-Duration">VZip&lt;V&gt;</a></li><li><a href="#impl-WithSubscriber-for-Duration">WithSubscriber</a></li></ul></section><h2><a href="index.html">In kanidmd_lib::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-5ec35bf9ca753509.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="../index.html">kanidmd_lib</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="struct" href="#">Duration</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><span class="since" title="Stable since Rust version 1.3.0">1.3.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#86">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><div class="item-decl"><pre class="rust"><code>pub struct Duration { /* private fields */ }</code></pre></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A <code>Duration</code> type to represent a span of time, typically used for system
timeouts.</p>
<p>Each <code>Duration</code> is composed of a whole number of seconds and a fractional part
represented in nanoseconds. If the underlying system does not support
nanosecond-level precision, APIs binding a system timeout will typically round up
the number of nanoseconds.</p>
<p><a href="struct.Duration.html" title="Duration"><code>Duration</code></a>s implement many common traits, including <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html" title="Add"><code>Add</code></a>, <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html" title="Sub"><code>Sub</code></a>, and other
<a href="https://doc.rust-lang.org/1.68.0/core/ops/index.html"><code>ops</code></a> traits. It implements <a href="https://doc.rust-lang.org/1.68.0/core/default/trait.Default.html" title="Default"><code>Default</code></a> by returning a zero-length <code>Duration</code>.</p>
<h2 id="examples"><a href="#examples">Examples</a></h2>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>five_seconds = Duration::new(<span class="number">5</span>, <span class="number">0</span>);
<span class="kw">let </span>five_seconds_and_five_nanos = five_seconds + Duration::new(<span class="number">0</span>, <span class="number">5</span>);
<span class="macro">assert_eq!</span>(five_seconds_and_five_nanos.as_secs(), <span class="number">5</span>);
<span class="macro">assert_eq!</span>(five_seconds_and_five_nanos.subsec_nanos(), <span class="number">5</span>);
<span class="kw">let </span>ten_millis = Duration::from_millis(<span class="number">10</span>);</code></pre></div>
<h2 id="formatting-duration-values"><a href="#formatting-duration-values">Formatting <code>Duration</code> values</a></h2>
<p><code>Duration</code> intentionally does not have a <code>Display</code> impl, as there are a
variety of ways to format spans of time for human readability. <code>Duration</code>
provides a <code>Debug</code> impl that shows the full precision of the value.</p>
<p>The <code>Debug</code> output uses the non-ASCII “µs” suffix for microseconds. If your
program output may appear in contexts that cannot rely on full Unicode
compatibility, you may wish to format <code>Duration</code> objects yourself or use a
crate to do so.</p>
</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#91">source</a><a href="#impl-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedconstant.SECOND" class="associatedconstant has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#103">source</a><h4 class="code-header">pub const <a href="#associatedconstant.SECOND" class="constant">SECOND</a>: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a> = Duration::from_secs(1)</h4></section><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>duration_constants</code>)</span></div></span></summary><div class="docblock"><p>The duration of one second.</p>
<h5 id="examples-1"><a href="#examples-1">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(duration_constants)]
</span><span class="kw">use </span>std::time::Duration;
<span class="macro">assert_eq!</span>(Duration::SECOND, Duration::from_secs(<span class="number">1</span>));</code></pre></div>
</div></details><details class="toggle" open><summary><section id="associatedconstant.MILLISECOND" class="associatedconstant has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#116">source</a><h4 class="code-header">pub const <a href="#associatedconstant.MILLISECOND" class="constant">MILLISECOND</a>: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a> = Duration::from_millis(1)</h4></section><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>duration_constants</code>)</span></div></span></summary><div class="docblock"><p>The duration of one millisecond.</p>
<h5 id="examples-2"><a href="#examples-2">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(duration_constants)]
</span><span class="kw">use </span>std::time::Duration;
<span class="macro">assert_eq!</span>(Duration::MILLISECOND, Duration::from_millis(<span class="number">1</span>));</code></pre></div>
</div></details><details class="toggle" open><summary><section id="associatedconstant.MICROSECOND" class="associatedconstant has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#129">source</a><h4 class="code-header">pub const <a href="#associatedconstant.MICROSECOND" class="constant">MICROSECOND</a>: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a> = Duration::from_micros(1)</h4></section><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>duration_constants</code>)</span></div></span></summary><div class="docblock"><p>The duration of one microsecond.</p>
<h5 id="examples-3"><a href="#examples-3">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(duration_constants)]
</span><span class="kw">use </span>std::time::Duration;
<span class="macro">assert_eq!</span>(Duration::MICROSECOND, Duration::from_micros(<span class="number">1</span>));</code></pre></div>
</div></details><details class="toggle" open><summary><section id="associatedconstant.NANOSECOND" class="associatedconstant has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#142">source</a><h4 class="code-header">pub const <a href="#associatedconstant.NANOSECOND" class="constant">NANOSECOND</a>: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a> = Duration::from_nanos(1)</h4></section><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>duration_constants</code>)</span></div></span></summary><div class="docblock"><p>The duration of one nanosecond.</p>
<h5 id="examples-4"><a href="#examples-4">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(duration_constants)]
</span><span class="kw">use </span>std::time::Duration;
<span class="macro">assert_eq!</span>(Duration::NANOSECOND, Duration::from_nanos(<span class="number">1</span>));</code></pre></div>
</div></details><details class="toggle" open><summary><section id="associatedconstant.ZERO" class="associatedconstant has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.53.0">1.53.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#156">source</a></span><h4 class="code-header">pub const <a href="#associatedconstant.ZERO" class="constant">ZERO</a>: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a> = Duration::from_nanos(0)</h4></section></summary><div class="docblock"><p>A duration of zero time.</p>
<h5 id="examples-5"><a href="#examples-5">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>duration = Duration::ZERO;
<span class="macro">assert!</span>(duration.is_zero());
<span class="macro">assert_eq!</span>(duration.as_nanos(), <span class="number">0</span>);</code></pre></div>
</div></details><details class="toggle" open><summary><section id="associatedconstant.MAX" class="associatedconstant has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.53.0">1.53.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#175">source</a></span><h4 class="code-header">pub const <a href="#associatedconstant.MAX" class="constant">MAX</a>: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a> = Duration::new(u64::MAX, NANOS_PER_SEC - 1)</h4></section></summary><div class="docblock"><p>The maximum duration.</p>
<p>May vary by platform as necessary. Must be able to contain the difference between
two instances of <a href="../../std/time/struct.Instant.html"><code>Instant</code></a> or two instances of <a href="../../std/time/struct.SystemTime.html"><code>SystemTime</code></a>.
This constraint gives it a value of about 584,942,417,355 years in practice,
which is currently used on all platforms.</p>
<h5 id="examples-6"><a href="#examples-6">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="macro">assert_eq!</span>(Duration::MAX, Duration::new(u64::MAX, <span class="number">1_000_000_000 </span>- <span class="number">1</span>));</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.new" class="method has-srclink"><span class="rightside"><span class="since" title="const since 1.58.0">const: 1.58.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#199">source</a></span><h4 class="code-header">pub const fn <a href="#method.new" class="fn">new</a>(secs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u64.html">u64</a>, nanos: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Creates a new <code>Duration</code> from the specified number of whole seconds and
additional nanoseconds.</p>
<p>If the number of nanoseconds is greater than 1 billion (the number of
nanoseconds in a second), then it will carry over into the seconds provided.</p>
<h5 id="panics"><a href="#panics">Panics</a></h5>
<p>This constructor will panic if the carry from the nanoseconds overflows
the seconds counter.</p>
<h5 id="examples-7"><a href="#examples-7">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>five_seconds = Duration::new(<span class="number">5</span>, <span class="number">0</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.from_secs" class="method has-srclink"><span class="rightside"><span class="since" title="const since 1.32.0">const: 1.32.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#225">source</a></span><h4 class="code-header">pub const fn <a href="#method.from_secs" class="fn">from_secs</a>(secs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u64.html">u64</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Creates a new <code>Duration</code> from the specified number of whole seconds.</p>
<h5 id="examples-8"><a href="#examples-8">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>duration = Duration::from_secs(<span class="number">5</span>);
<span class="macro">assert_eq!</span>(<span class="number">5</span>, duration.as_secs());
<span class="macro">assert_eq!</span>(<span class="number">0</span>, duration.subsec_nanos());</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.from_millis" class="method has-srclink"><span class="rightside"><span class="since" title="const since 1.32.0">const: 1.32.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#245">source</a></span><h4 class="code-header">pub const fn <a href="#method.from_millis" class="fn">from_millis</a>(millis: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u64.html">u64</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Creates a new <code>Duration</code> from the specified number of milliseconds.</p>
<h5 id="examples-9"><a href="#examples-9">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>duration = Duration::from_millis(<span class="number">2569</span>);
<span class="macro">assert_eq!</span>(<span class="number">2</span>, duration.as_secs());
<span class="macro">assert_eq!</span>(<span class="number">569_000_000</span>, duration.subsec_nanos());</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.from_micros" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.27.0, const since 1.32.0">1.27.0 (const: 1.32.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#265">source</a></span><h4 class="code-header">pub const fn <a href="#method.from_micros" class="fn">from_micros</a>(micros: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u64.html">u64</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Creates a new <code>Duration</code> from the specified number of microseconds.</p>
<h5 id="examples-10"><a href="#examples-10">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>duration = Duration::from_micros(<span class="number">1_000_002</span>);
<span class="macro">assert_eq!</span>(<span class="number">1</span>, duration.as_secs());
<span class="macro">assert_eq!</span>(<span class="number">2000</span>, duration.subsec_nanos());</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.from_nanos" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.27.0, const since 1.32.0">1.27.0 (const: 1.32.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#285">source</a></span><h4 class="code-header">pub const fn <a href="#method.from_nanos" class="fn">from_nanos</a>(nanos: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u64.html">u64</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Creates a new <code>Duration</code> from the specified number of nanoseconds.</p>
<h5 id="examples-11"><a href="#examples-11">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>duration = Duration::from_nanos(<span class="number">1_000_000_123</span>);
<span class="macro">assert_eq!</span>(<span class="number">1</span>, duration.as_secs());
<span class="macro">assert_eq!</span>(<span class="number">123</span>, duration.subsec_nanos());</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.is_zero" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.53.0, const since 1.53.0">1.53.0 (const: 1.53.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#309">source</a></span><h4 class="code-header">pub const fn <a href="#method.is_zero" class="fn">is_zero</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Returns true if this <code>Duration</code> spans no time.</p>
<h5 id="examples-12"><a href="#examples-12">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="macro">assert!</span>(Duration::ZERO.is_zero());
<span class="macro">assert!</span>(Duration::new(<span class="number">0</span>, <span class="number">0</span>).is_zero());
<span class="macro">assert!</span>(Duration::from_nanos(<span class="number">0</span>).is_zero());
<span class="macro">assert!</span>(Duration::from_secs(<span class="number">0</span>).is_zero());
<span class="macro">assert!</span>(!Duration::new(<span class="number">1</span>, <span class="number">1</span>).is_zero());
<span class="macro">assert!</span>(!Duration::from_nanos(<span class="number">1</span>).is_zero());
<span class="macro">assert!</span>(!Duration::from_secs(<span class="number">1</span>).is_zero());</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.as_secs" class="method has-srclink"><span class="rightside"><span class="since" title="const since 1.32.0">const: 1.32.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#337">source</a></span><h4 class="code-header">pub const fn <a href="#method.as_secs" class="fn">as_secs</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u64.html">u64</a></h4></section></summary><div class="docblock"><p>Returns the number of <em>whole</em> seconds contained by this <code>Duration</code>.</p>
<p>The returned value does not include the fractional (nanosecond) part of the
duration, which can be obtained using <a href="struct.Duration.html#method.subsec_nanos"><code>subsec_nanos</code></a>.</p>
<h5 id="examples-13"><a href="#examples-13">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>duration = Duration::new(<span class="number">5</span>, <span class="number">730023852</span>);
<span class="macro">assert_eq!</span>(duration.as_secs(), <span class="number">5</span>);</code></pre></div>
<p>To determine the total number of seconds represented by the <code>Duration</code>
including the fractional part, use <a href="struct.Duration.html#method.as_secs_f64"><code>as_secs_f64</code></a> or <a href="struct.Duration.html#method.as_secs_f32"><code>as_secs_f32</code></a></p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.subsec_millis" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.27.0, const since 1.32.0">1.27.0 (const: 1.32.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#360">source</a></span><h4 class="code-header">pub const fn <a href="#method.subsec_millis" class="fn">subsec_millis</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a></h4></section></summary><div class="docblock"><p>Returns the fractional part of this <code>Duration</code>, in whole milliseconds.</p>
<p>This method does <strong>not</strong> return the length of the duration when
represented by milliseconds. The returned number always represents a
fractional portion of a second (i.e., it is less than one thousand).</p>
<h5 id="examples-14"><a href="#examples-14">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>duration = Duration::from_millis(<span class="number">5432</span>);
<span class="macro">assert_eq!</span>(duration.as_secs(), <span class="number">5</span>);
<span class="macro">assert_eq!</span>(duration.subsec_millis(), <span class="number">432</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.subsec_micros" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.27.0, const since 1.32.0">1.27.0 (const: 1.32.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#383">source</a></span><h4 class="code-header">pub const fn <a href="#method.subsec_micros" class="fn">subsec_micros</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a></h4></section></summary><div class="docblock"><p>Returns the fractional part of this <code>Duration</code>, in whole microseconds.</p>
<p>This method does <strong>not</strong> return the length of the duration when
represented by microseconds. The returned number always represents a
fractional portion of a second (i.e., it is less than one million).</p>
<h5 id="examples-15"><a href="#examples-15">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>duration = Duration::from_micros(<span class="number">1_234_567</span>);
<span class="macro">assert_eq!</span>(duration.as_secs(), <span class="number">1</span>);
<span class="macro">assert_eq!</span>(duration.subsec_micros(), <span class="number">234_567</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.subsec_nanos" class="method has-srclink"><span class="rightside"><span class="since" title="const since 1.32.0">const: 1.32.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#406">source</a></span><h4 class="code-header">pub const fn <a href="#method.subsec_nanos" class="fn">subsec_nanos</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a></h4></section></summary><div class="docblock"><p>Returns the fractional part of this <code>Duration</code>, in nanoseconds.</p>
<p>This method does <strong>not</strong> return the length of the duration when
represented by nanoseconds. The returned number always represents a
fractional portion of a second (i.e., it is less than one billion).</p>
<h5 id="examples-16"><a href="#examples-16">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>duration = Duration::from_millis(<span class="number">5010</span>);
<span class="macro">assert_eq!</span>(duration.as_secs(), <span class="number">5</span>);
<span class="macro">assert_eq!</span>(duration.subsec_nanos(), <span class="number">10_000_000</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.as_millis" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.33.0, const since 1.33.0">1.33.0 (const: 1.33.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#424">source</a></span><h4 class="code-header">pub const fn <a href="#method.as_millis" class="fn">as_millis</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u128.html">u128</a></h4></section></summary><div class="docblock"><p>Returns the total number of whole milliseconds contained by this <code>Duration</code>.</p>
<h5 id="examples-17"><a href="#examples-17">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>duration = Duration::new(<span class="number">5</span>, <span class="number">730023852</span>);
<span class="macro">assert_eq!</span>(duration.as_millis(), <span class="number">5730</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.as_micros" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.33.0, const since 1.33.0">1.33.0 (const: 1.33.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#442">source</a></span><h4 class="code-header">pub const fn <a href="#method.as_micros" class="fn">as_micros</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u128.html">u128</a></h4></section></summary><div class="docblock"><p>Returns the total number of whole microseconds contained by this <code>Duration</code>.</p>
<h5 id="examples-18"><a href="#examples-18">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>duration = Duration::new(<span class="number">5</span>, <span class="number">730023852</span>);
<span class="macro">assert_eq!</span>(duration.as_micros(), <span class="number">5730023</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.as_nanos" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.33.0, const since 1.33.0">1.33.0 (const: 1.33.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#460">source</a></span><h4 class="code-header">pub const fn <a href="#method.as_nanos" class="fn">as_nanos</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u128.html">u128</a></h4></section></summary><div class="docblock"><p>Returns the total number of nanoseconds contained by this <code>Duration</code>.</p>
<h5 id="examples-19"><a href="#examples-19">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>duration = Duration::new(<span class="number">5</span>, <span class="number">730023852</span>);
<span class="macro">assert_eq!</span>(duration.as_nanos(), <span class="number">5730023852</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.checked_add" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.16.0, const since 1.58.0">1.16.0 (const: 1.58.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#482">source</a></span><h4 class="code-header">pub const fn <a href="#method.checked_add" class="fn">checked_add</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt;</h4></section></summary><div class="docblock"><p>Checked <code>Duration</code> addition. Computes <code>self + other</code>, returning <a href="https://doc.rust-lang.org/1.68.0/core/option/enum.Option.html#variant.None" title="None"><code>None</code></a>
if overflow occurred.</p>
<h5 id="examples-20"><a href="#examples-20">Examples</a></h5>
<p>Basic usage:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">0</span>, <span class="number">0</span>).checked_add(Duration::new(<span class="number">0</span>, <span class="number">1</span>)), <span class="prelude-val">Some</span>(Duration::new(<span class="number">0</span>, <span class="number">1</span>)));
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">1</span>, <span class="number">0</span>).checked_add(Duration::new(u64::MAX, <span class="number">0</span>)), <span class="prelude-val">None</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.saturating_add" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.53.0, const since 1.58.0">1.53.0 (const: 1.58.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#517">source</a></span><h4 class="code-header">pub const fn <a href="#method.saturating_add" class="fn">saturating_add</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Saturating <code>Duration</code> addition. Computes <code>self + other</code>, returning <a href="struct.Duration.html#associatedconstant.MAX" title="Duration::MAX"><code>Duration::MAX</code></a>
if overflow occurred.</p>
<h5 id="examples-21"><a href="#examples-21">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(duration_constants)]
</span><span class="kw">use </span>std::time::Duration;
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">0</span>, <span class="number">0</span>).saturating_add(Duration::new(<span class="number">0</span>, <span class="number">1</span>)), Duration::new(<span class="number">0</span>, <span class="number">1</span>));
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">1</span>, <span class="number">0</span>).saturating_add(Duration::new(u64::MAX, <span class="number">0</span>)), Duration::MAX);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.checked_sub" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.16.0, const since 1.58.0">1.16.0 (const: 1.58.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#542">source</a></span><h4 class="code-header">pub const fn <a href="#method.checked_sub" class="fn">checked_sub</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt;</h4></section></summary><div class="docblock"><p>Checked <code>Duration</code> subtraction. Computes <code>self - other</code>, returning <a href="https://doc.rust-lang.org/1.68.0/core/option/enum.Option.html#variant.None" title="None"><code>None</code></a>
if the result would be negative or if overflow occurred.</p>
<h5 id="examples-22"><a href="#examples-22">Examples</a></h5>
<p>Basic usage:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">0</span>, <span class="number">1</span>).checked_sub(Duration::new(<span class="number">0</span>, <span class="number">0</span>)), <span class="prelude-val">Some</span>(Duration::new(<span class="number">0</span>, <span class="number">1</span>)));
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">0</span>, <span class="number">0</span>).checked_sub(Duration::new(<span class="number">0</span>, <span class="number">1</span>)), <span class="prelude-val">None</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.saturating_sub" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.53.0, const since 1.58.0">1.53.0 (const: 1.58.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#575">source</a></span><h4 class="code-header">pub const fn <a href="#method.saturating_sub" class="fn">saturating_sub</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Saturating <code>Duration</code> subtraction. Computes <code>self - other</code>, returning <a href="struct.Duration.html#associatedconstant.ZERO" title="Duration::ZERO"><code>Duration::ZERO</code></a>
if the result would be negative or if overflow occurred.</p>
<h5 id="examples-23"><a href="#examples-23">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">0</span>, <span class="number">1</span>).saturating_sub(Duration::new(<span class="number">0</span>, <span class="number">0</span>)), Duration::new(<span class="number">0</span>, <span class="number">1</span>));
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">0</span>, <span class="number">0</span>).saturating_sub(Duration::new(<span class="number">0</span>, <span class="number">1</span>)), Duration::ZERO);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.checked_mul" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.16.0, const since 1.58.0">1.16.0 (const: 1.58.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#600">source</a></span><h4 class="code-header">pub const fn <a href="#method.checked_mul" class="fn">checked_mul</a>(self, rhs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt;</h4></section></summary><div class="docblock"><p>Checked <code>Duration</code> multiplication. Computes <code>self * other</code>, returning
<a href="https://doc.rust-lang.org/1.68.0/core/option/enum.Option.html#variant.None" title="None"><code>None</code></a> if overflow occurred.</p>
<h5 id="examples-24"><a href="#examples-24">Examples</a></h5>
<p>Basic usage:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">0</span>, <span class="number">500_000_001</span>).checked_mul(<span class="number">2</span>), <span class="prelude-val">Some</span>(Duration::new(<span class="number">1</span>, <span class="number">2</span>)));
<span class="macro">assert_eq!</span>(Duration::new(u64::MAX - <span class="number">1</span>, <span class="number">0</span>).checked_mul(<span class="number">2</span>), <span class="prelude-val">None</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.saturating_mul" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.53.0, const since 1.58.0">1.53.0 (const: 1.58.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#631">source</a></span><h4 class="code-header">pub const fn <a href="#method.saturating_mul" class="fn">saturating_mul</a>(self, rhs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Saturating <code>Duration</code> multiplication. Computes <code>self * other</code>, returning
<a href="struct.Duration.html#associatedconstant.MAX" title="Duration::MAX"><code>Duration::MAX</code></a> if overflow occurred.</p>
<h5 id="examples-25"><a href="#examples-25">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(duration_constants)]
</span><span class="kw">use </span>std::time::Duration;
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">0</span>, <span class="number">500_000_001</span>).saturating_mul(<span class="number">2</span>), Duration::new(<span class="number">1</span>, <span class="number">2</span>));
<span class="macro">assert_eq!</span>(Duration::new(u64::MAX - <span class="number">1</span>, <span class="number">0</span>).saturating_mul(<span class="number">2</span>), Duration::MAX);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.checked_div" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.16.0, const since 1.58.0">1.16.0 (const: 1.58.0)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#657">source</a></span><h4 class="code-header">pub const fn <a href="#method.checked_div" class="fn">checked_div</a>(self, rhs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt;</h4></section></summary><div class="docblock"><p>Checked <code>Duration</code> division. Computes <code>self / other</code>, returning <a href="https://doc.rust-lang.org/1.68.0/core/option/enum.Option.html#variant.None" title="None"><code>None</code></a>
if <code>other == 0</code>.</p>
<h5 id="examples-26"><a href="#examples-26">Examples</a></h5>
<p>Basic usage:</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">2</span>, <span class="number">0</span>).checked_div(<span class="number">2</span>), <span class="prelude-val">Some</span>(Duration::new(<span class="number">1</span>, <span class="number">0</span>)));
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">1</span>, <span class="number">0</span>).checked_div(<span class="number">2</span>), <span class="prelude-val">Some</span>(Duration::new(<span class="number">0</span>, <span class="number">500_000_000</span>)));
<span class="macro">assert_eq!</span>(Duration::new(<span class="number">2</span>, <span class="number">0</span>).checked_div(<span class="number">0</span>), <span class="prelude-val">None</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.as_secs_f64" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.38.0, const unstable">1.38.0 (const: <a href="https://github.com/rust-lang/rust/issues/72440" title="Tracking issue for duration_consts_float">unstable</a>)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#685">source</a></span><h4 class="code-header">pub fn <a href="#method.as_secs_f64" class="fn">as_secs_f64</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f64.html">f64</a></h4></section></summary><div class="docblock"><p>Returns the number of seconds contained by this <code>Duration</code> as <code>f64</code>.</p>
<p>The returned value does include the fractional (nanosecond) part of the duration.</p>
<h5 id="examples-27"><a href="#examples-27">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>dur = Duration::new(<span class="number">2</span>, <span class="number">700_000_000</span>);
<span class="macro">assert_eq!</span>(dur.as_secs_f64(), <span class="number">2.7</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.as_secs_f32" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.38.0, const unstable">1.38.0 (const: <a href="https://github.com/rust-lang/rust/issues/72440" title="Tracking issue for duration_consts_float">unstable</a>)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#704">source</a></span><h4 class="code-header">pub fn <a href="#method.as_secs_f32" class="fn">as_secs_f32</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f32.html">f32</a></h4></section></summary><div class="docblock"><p>Returns the number of seconds contained by this <code>Duration</code> as <code>f32</code>.</p>
<p>The returned value does include the fractional (nanosecond) part of the duration.</p>
<h5 id="examples-28"><a href="#examples-28">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>dur = Duration::new(<span class="number">2</span>, <span class="number">700_000_000</span>);
<span class="macro">assert_eq!</span>(dur.as_secs_f32(), <span class="number">2.7</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.from_secs_f64" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.38.0, const unstable">1.38.0 (const: <a href="https://github.com/rust-lang/rust/issues/72440" title="Tracking issue for duration_consts_float">unstable</a>)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#739">source</a></span><h4 class="code-header">pub fn <a href="#method.from_secs_f64" class="fn">from_secs_f64</a>(secs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f64.html">f64</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Creates a new <code>Duration</code> from the specified number of seconds represented
as <code>f64</code>.</p>
<h5 id="panics-1"><a href="#panics-1">Panics</a></h5>
<p>This constructor will panic if <code>secs</code> is negative, overflows <code>Duration</code> or not finite.</p>
<h5 id="examples-29"><a href="#examples-29">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>res = Duration::from_secs_f64(<span class="number">0.0</span>);
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">0</span>, <span class="number">0</span>));
<span class="kw">let </span>res = Duration::from_secs_f64(<span class="number">1e-20</span>);
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">0</span>, <span class="number">0</span>));
<span class="kw">let </span>res = Duration::from_secs_f64(<span class="number">4.2e-7</span>);
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">0</span>, <span class="number">420</span>));
<span class="kw">let </span>res = Duration::from_secs_f64(<span class="number">2.7</span>);
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">2</span>, <span class="number">700_000_000</span>));
<span class="kw">let </span>res = Duration::from_secs_f64(<span class="number">3e10</span>);
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">30_000_000_000</span>, <span class="number">0</span>));
<span class="comment">// subnormal float
</span><span class="kw">let </span>res = Duration::from_secs_f64(f64::from_bits(<span class="number">1</span>));
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">0</span>, <span class="number">0</span>));
<span class="comment">// conversion uses rounding
</span><span class="kw">let </span>res = Duration::from_secs_f64(<span class="number">0.999e-9</span>);
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">0</span>, <span class="number">1</span>));</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.from_secs_f32" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.38.0, const unstable">1.38.0 (const: <a href="https://github.com/rust-lang/rust/issues/72440" title="Tracking issue for duration_consts_float">unstable</a>)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#777">source</a></span><h4 class="code-header">pub fn <a href="#method.from_secs_f32" class="fn">from_secs_f32</a>(secs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f32.html">f32</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Creates a new <code>Duration</code> from the specified number of seconds represented
as <code>f32</code>.</p>
<h5 id="panics-2"><a href="#panics-2">Panics</a></h5>
<p>This constructor will panic if <code>secs</code> is negative, overflows <code>Duration</code> or not finite.</p>
<h5 id="examples-30"><a href="#examples-30">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>res = Duration::from_secs_f32(<span class="number">0.0</span>);
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">0</span>, <span class="number">0</span>));
<span class="kw">let </span>res = Duration::from_secs_f32(<span class="number">1e-20</span>);
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">0</span>, <span class="number">0</span>));
<span class="kw">let </span>res = Duration::from_secs_f32(<span class="number">4.2e-7</span>);
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">0</span>, <span class="number">420</span>));
<span class="kw">let </span>res = Duration::from_secs_f32(<span class="number">2.7</span>);
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">2</span>, <span class="number">700_000_048</span>));
<span class="kw">let </span>res = Duration::from_secs_f32(<span class="number">3e10</span>);
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">30_000_001_024</span>, <span class="number">0</span>));
<span class="comment">// subnormal float
</span><span class="kw">let </span>res = Duration::from_secs_f32(f32::from_bits(<span class="number">1</span>));
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">0</span>, <span class="number">0</span>));
<span class="comment">// conversion uses rounding
</span><span class="kw">let </span>res = Duration::from_secs_f32(<span class="number">0.999e-9</span>);
<span class="macro">assert_eq!</span>(res, Duration::new(<span class="number">0</span>, <span class="number">1</span>));</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.mul_f64" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.38.0, const unstable">1.38.0 (const: <a href="https://github.com/rust-lang/rust/issues/72440" title="Tracking issue for duration_consts_float">unstable</a>)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#802">source</a></span><h4 class="code-header">pub fn <a href="#method.mul_f64" class="fn">mul_f64</a>(self, rhs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f64.html">f64</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Multiplies <code>Duration</code> by <code>f64</code>.</p>
<h5 id="panics-3"><a href="#panics-3">Panics</a></h5>
<p>This method will panic if result is negative, overflows <code>Duration</code> or not finite.</p>
<h5 id="examples-31"><a href="#examples-31">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>dur = Duration::new(<span class="number">2</span>, <span class="number">700_000_000</span>);
<span class="macro">assert_eq!</span>(dur.mul_f64(<span class="number">3.14</span>), Duration::new(<span class="number">8</span>, <span class="number">478_000_000</span>));
<span class="macro">assert_eq!</span>(dur.mul_f64(<span class="number">3.14e5</span>), Duration::new(<span class="number">847_800</span>, <span class="number">0</span>));</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.mul_f32" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.38.0, const unstable">1.38.0 (const: <a href="https://github.com/rust-lang/rust/issues/72440" title="Tracking issue for duration_consts_float">unstable</a>)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#824">source</a></span><h4 class="code-header">pub fn <a href="#method.mul_f32" class="fn">mul_f32</a>(self, rhs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f32.html">f32</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Multiplies <code>Duration</code> by <code>f32</code>.</p>
<h5 id="panics-4"><a href="#panics-4">Panics</a></h5>
<p>This method will panic if result is negative, overflows <code>Duration</code> or not finite.</p>
<h5 id="examples-32"><a href="#examples-32">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>dur = Duration::new(<span class="number">2</span>, <span class="number">700_000_000</span>);
<span class="macro">assert_eq!</span>(dur.mul_f32(<span class="number">3.14</span>), Duration::new(<span class="number">8</span>, <span class="number">478_000_641</span>));
<span class="macro">assert_eq!</span>(dur.mul_f32(<span class="number">3.14e5</span>), Duration::new(<span class="number">847800</span>, <span class="number">0</span>));</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.div_f64" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.38.0, const unstable">1.38.0 (const: <a href="https://github.com/rust-lang/rust/issues/72440" title="Tracking issue for duration_consts_float">unstable</a>)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#846">source</a></span><h4 class="code-header">pub fn <a href="#method.div_f64" class="fn">div_f64</a>(self, rhs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f64.html">f64</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Divide <code>Duration</code> by <code>f64</code>.</p>
<h5 id="panics-5"><a href="#panics-5">Panics</a></h5>
<p>This method will panic if result is negative, overflows <code>Duration</code> or not finite.</p>
<h5 id="examples-33"><a href="#examples-33">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>dur = Duration::new(<span class="number">2</span>, <span class="number">700_000_000</span>);
<span class="macro">assert_eq!</span>(dur.div_f64(<span class="number">3.14</span>), Duration::new(<span class="number">0</span>, <span class="number">859_872_611</span>));
<span class="macro">assert_eq!</span>(dur.div_f64(<span class="number">3.14e5</span>), Duration::new(<span class="number">0</span>, <span class="number">8_599</span>));</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.div_f32" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.38.0, const unstable">1.38.0 (const: <a href="https://github.com/rust-lang/rust/issues/72440" title="Tracking issue for duration_consts_float">unstable</a>)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#870">source</a></span><h4 class="code-header">pub fn <a href="#method.div_f32" class="fn">div_f32</a>(self, rhs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f32.html">f32</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class="docblock"><p>Divide <code>Duration</code> by <code>f32</code>.</p>
<h5 id="panics-6"><a href="#panics-6">Panics</a></h5>
<p>This method will panic if result is negative, overflows <code>Duration</code> or not finite.</p>
<h5 id="examples-34"><a href="#examples-34">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>dur = Duration::new(<span class="number">2</span>, <span class="number">700_000_000</span>);
<span class="comment">// note that due to rounding errors result is slightly
// different from 0.859_872_611
</span><span class="macro">assert_eq!</span>(dur.div_f32(<span class="number">3.14</span>), Duration::new(<span class="number">0</span>, <span class="number">859_872_580</span>));
<span class="macro">assert_eq!</span>(dur.div_f32(<span class="number">3.14e5</span>), Duration::new(<span class="number">0</span>, <span class="number">8_599</span>));</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.div_duration_f64" class="method has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/72440" title="Tracking issue for duration_consts_float">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#890">source</a></span><h4 class="code-header">pub fn <a href="#method.div_duration_f64" class="fn">div_duration_f64</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f64.html">f64</a></h4></section><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>div_duration</code>)</span></div></span></summary><div class="docblock"><p>Divide <code>Duration</code> by <code>Duration</code> and return <code>f64</code>.</p>
<h5 id="examples-35"><a href="#examples-35">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(div_duration)]
</span><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>dur1 = Duration::new(<span class="number">2</span>, <span class="number">700_000_000</span>);
<span class="kw">let </span>dur2 = Duration::new(<span class="number">5</span>, <span class="number">400_000_000</span>);
<span class="macro">assert_eq!</span>(dur1.div_duration_f64(dur2), <span class="number">0.5</span>);</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.div_duration_f32" class="method has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/72440" title="Tracking issue for duration_consts_float">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#910">source</a></span><h4 class="code-header">pub fn <a href="#method.div_duration_f32" class="fn">div_duration_f32</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f32.html">f32</a></h4></section><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>div_duration</code>)</span></div></span></summary><div class="docblock"><p>Divide <code>Duration</code> by <code>Duration</code> and return <code>f32</code>.</p>
<h5 id="examples-36"><a href="#examples-36">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="attr">#![feature(div_duration)]
</span><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>dur1 = Duration::new(<span class="number">2</span>, <span class="number">700_000_000</span>);
<span class="kw">let </span>dur2 = Duration::new(<span class="number">5</span>, <span class="number">400_000_000</span>);
<span class="macro">assert_eq!</span>(dur1.div_duration_f32(dur2), <span class="number">0.5</span>);</code></pre></div>
</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Duration-1" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#1348">source</a><a href="#impl-Duration-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.try_from_secs_f32" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.66.0, const unstable">1.66.0 (const: <a href="https://github.com/rust-lang/rust/issues/72440" title="Tracking issue for duration_consts_float">unstable</a>)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#1407">source</a></span><h4 class="code-header">pub fn <a href="#method.try_from_secs_f32" class="fn">try_from_secs_f32</a>(secs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f32.html">f32</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>, <a class="struct" href="https://doc.rust-lang.org/1.68.0/core/time/struct.TryFromFloatSecsError.html" title="struct core::time::TryFromFloatSecsError">TryFromFloatSecsError</a>&gt;</h4></section></summary><div class="docblock"><p>The checked version of <a href="struct.Duration.html#method.from_secs_f32"><code>from_secs_f32</code></a>.</p>
<p>This constructor will return an <code>Err</code> if <code>secs</code> is negative, overflows <code>Duration</code> or not finite.</p>
<h5 id="examples-37"><a href="#examples-37">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>res = Duration::try_from_secs_f32(<span class="number">0.0</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">0</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f32(<span class="number">1e-20</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">0</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f32(<span class="number">4.2e-7</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">420</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f32(<span class="number">2.7</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">2</span>, <span class="number">700_000_048</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f32(<span class="number">3e10</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">30_000_001_024</span>, <span class="number">0</span>)));
<span class="comment">// subnormal float:
</span><span class="kw">let </span>res = Duration::try_from_secs_f32(f32::from_bits(<span class="number">1</span>));
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">0</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f32(-<span class="number">5.0</span>);
<span class="macro">assert!</span>(res.is_err());
<span class="kw">let </span>res = Duration::try_from_secs_f32(f32::NAN);
<span class="macro">assert!</span>(res.is_err());
<span class="kw">let </span>res = Duration::try_from_secs_f32(<span class="number">2e19</span>);
<span class="macro">assert!</span>(res.is_err());
<span class="comment">// the conversion uses rounding with tie resolution to even
</span><span class="kw">let </span>res = Duration::try_from_secs_f32(<span class="number">0.999e-9</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">1</span>)));
<span class="comment">// this float represents exactly 976562.5e-9
</span><span class="kw">let </span>val = f32::from_bits(<span class="number">0x3A80_0000</span>);
<span class="kw">let </span>res = Duration::try_from_secs_f32(val);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">976_562</span>)));
<span class="comment">// this float represents exactly 2929687.5e-9
</span><span class="kw">let </span>val = f32::from_bits(<span class="number">0x3B40_0000</span>);
<span class="kw">let </span>res = Duration::try_from_secs_f32(val);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">2_929_688</span>)));
<span class="comment">// this float represents exactly 1.000_976_562_5
</span><span class="kw">let </span>val = f32::from_bits(<span class="number">0x3F802000</span>);
<span class="kw">let </span>res = Duration::try_from_secs_f32(val);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">1</span>, <span class="number">976_562</span>)));
<span class="comment">// this float represents exactly 1.002_929_687_5
</span><span class="kw">let </span>val = f32::from_bits(<span class="number">0x3F806000</span>);
<span class="kw">let </span>res = Duration::try_from_secs_f32(val);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">1</span>, <span class="number">2_929_688</span>)));</code></pre></div>
</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_secs_f64" class="method has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.66.0, const unstable">1.66.0 (const: <a href="https://github.com/rust-lang/rust/issues/72440" title="Tracking issue for duration_consts_float">unstable</a>)</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#1484">source</a></span><h4 class="code-header">pub fn <a href="#method.try_from_secs_f64" class="fn">try_from_secs_f64</a>(secs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f64.html">f64</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>, <a class="struct" href="https://doc.rust-lang.org/1.68.0/core/time/struct.TryFromFloatSecsError.html" title="struct core::time::TryFromFloatSecsError">TryFromFloatSecsError</a>&gt;</h4></section></summary><div class="docblock"><p>The checked version of <a href="struct.Duration.html#method.from_secs_f64"><code>from_secs_f64</code></a>.</p>
<p>This constructor will return an <code>Err</code> if <code>secs</code> is negative, overflows <code>Duration</code> or not finite.</p>
<h5 id="examples-38"><a href="#examples-38">Examples</a></h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>std::time::Duration;
<span class="kw">let </span>res = Duration::try_from_secs_f64(<span class="number">0.0</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">0</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f64(<span class="number">1e-20</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">0</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f64(<span class="number">4.2e-7</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">420</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f64(<span class="number">2.7</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">2</span>, <span class="number">700_000_000</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f64(<span class="number">3e10</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">30_000_000_000</span>, <span class="number">0</span>)));
<span class="comment">// subnormal float
</span><span class="kw">let </span>res = Duration::try_from_secs_f64(f64::from_bits(<span class="number">1</span>));
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">0</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f64(-<span class="number">5.0</span>);
<span class="macro">assert!</span>(res.is_err());
<span class="kw">let </span>res = Duration::try_from_secs_f64(f64::NAN);
<span class="macro">assert!</span>(res.is_err());
<span class="kw">let </span>res = Duration::try_from_secs_f64(<span class="number">2e19</span>);
<span class="macro">assert!</span>(res.is_err());
<span class="comment">// the conversion uses rounding with tie resolution to even
</span><span class="kw">let </span>res = Duration::try_from_secs_f64(<span class="number">0.999e-9</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">1</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f64(<span class="number">0.999_999_999_499</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">999_999_999</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f64(<span class="number">0.999_999_999_501</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">1</span>, <span class="number">0</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f64(<span class="number">42.999_999_999_499</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">42</span>, <span class="number">999_999_999</span>)));
<span class="kw">let </span>res = Duration::try_from_secs_f64(<span class="number">42.999_999_999_501</span>);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">43</span>, <span class="number">0</span>)));
<span class="comment">// this float represents exactly 976562.5e-9
</span><span class="kw">let </span>val = f64::from_bits(<span class="number">0x3F50_0000_0000_0000</span>);
<span class="kw">let </span>res = Duration::try_from_secs_f64(val);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">976_562</span>)));
<span class="comment">// this float represents exactly 2929687.5e-9
</span><span class="kw">let </span>val = f64::from_bits(<span class="number">0x3F68_0000_0000_0000</span>);
<span class="kw">let </span>res = Duration::try_from_secs_f64(val);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">0</span>, <span class="number">2_929_688</span>)));
<span class="comment">// this float represents exactly 1.000_976_562_5
</span><span class="kw">let </span>val = f64::from_bits(<span class="number">0x3FF0_0400_0000_0000</span>);
<span class="kw">let </span>res = Duration::try_from_secs_f64(val);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">1</span>, <span class="number">976_562</span>)));
<span class="comment">// this float represents exactly 1.002_929_687_5
</span><span class="kw">let </span>val = f64::from_bits(<span class="number">0x3_FF00_C000_0000_000</span>);
<span class="kw">let </span>res = Duration::try_from_secs_f64(val);
<span class="macro">assert_eq!</span>(res, <span class="prelude-val">Ok</span>(Duration::new(<span class="number">1</span>, <span class="number">2_929_688</span>)));</code></pre></div>
</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="toggle implementors-toggle" open><summary><section id="impl-Add%3CDuration%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#916">source</a><a href="#impl-Add%3CDuration%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="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/1.68.0/core/ops/arith/trait.Add.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class='docblock'>The resulting type after applying the <code>+</code> operator.</div></details><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#919">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html#tymethod.add" class="fn">add</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class='docblock'>Performs the <code>+</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html#tymethod.add">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CDuration%3E-for-Duration-1" class="impl has-srclink"><a href="#impl-Add%3CDuration%3E-for-Duration-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="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/1.68.0/core/ops/arith/trait.Add.html#associatedtype.Output" class="associatedtype">Output</a> = Duration</h4></section></summary><div class='docblock'>The resulting type after applying the <code>+</code> operator.</div></details><details class="toggle method-toggle" open><summary><section id="method.add-1" class="method trait-impl has-srclink"><a href="#method.add-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html#tymethod.add" class="fn">add</a>(self, rhs: Duration) -&gt; &lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a> as <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a>&lt;Duration&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html#associatedtype.Output" title="type core::ops::arith::Add::Output">Output</a></h4></section></summary><div class='docblock'>Performs the <code>+</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html#tymethod.add">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CDuration%3E-for-Duration-2" class="impl has-srclink"><a href="#impl-Add%3CDuration%3E-for-Duration-2" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="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/1.68.0/core/ops/arith/trait.Add.html#associatedtype.Output" class="associatedtype">Output</a> = Duration</h4></section></summary><div class='docblock'>The resulting type after applying the <code>+</code> operator.</div></details><details class="toggle method-toggle" open><summary><section id="method.add-2" class="method trait-impl has-srclink"><a href="#method.add-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html#tymethod.add" class="fn">add</a>(self, rhs: Duration) -&gt; &lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a> as <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html" title="trait core::ops::arith::Add">Add</a>&lt;Duration&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html#associatedtype.Output" title="type core::ops::arith::Add::Output">Output</a></h4></section></summary><div class='docblock'>Performs the <code>+</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Add.html#tymethod.add">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-AddAssign%3CDuration%3E-for-Duration" class="impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.9.0">1.9.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#925">source</a></span><a href="#impl-AddAssign%3CDuration%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.AddAssign.html" title="trait core::ops::arith::AddAssign">AddAssign</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add_assign" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#926">source</a><a href="#method.add_assign" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.AddAssign.html#tymethod.add_assign" class="fn">add_assign</a>(&amp;mut self, rhs: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>)</h4></section></summary><div class='docblock'>Performs the <code>+=</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.AddAssign.html#tymethod.add_assign">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-AddAssign%3CDuration%3E-for-Duration-1" class="impl has-srclink"><a href="#impl-AddAssign%3CDuration%3E-for-Duration-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.AddAssign.html" title="trait core::ops::arith::AddAssign">AddAssign</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add_assign-1" class="method trait-impl has-srclink"><a href="#method.add_assign-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.AddAssign.html#tymethod.add_assign" class="fn">add_assign</a>(&amp;mut self, rhs: Duration)</h4></section></summary><div class='docblock'>Performs the <code>+=</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.AddAssign.html#tymethod.add_assign">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#impl-Clone-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&amp;self) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.68.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="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/1.68.0/src/core/clone.rs.html#132-134">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&amp;mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Self)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.68.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-Duration" class="impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.27.0">1.27.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#1029">source</a></span><a href="#impl-Debug-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#1030">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.68.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/1.68.0/core/fmt/struct.Error.html" title="struct core::fmt::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.68.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Default-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#impl-Default-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/default/trait.Default.html" title="trait core::default::Default">Default</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.default" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#method.default" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/default/trait.Default.html#tymethod.default" class="fn">default</a>() -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class='docblock'>Returns the “default value” for a type. <a href="https://doc.rust-lang.org/1.68.0/core/default/trait.Default.html#tymethod.default">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Deserialize%3C%27de%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/serde/1.0.155/src/serde/de/impls.rs.html#1966">source</a><a href="#impl-Deserialize%3C%27de%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;'de&gt; <a class="trait" href="https://docs.rs/serde/1.0.155/serde/de/trait.Deserialize.html" title="trait serde::de::Deserialize">Deserialize</a>&lt;'de&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.deserialize" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/serde/1.0.155/src/serde/de/impls.rs.html#1967-1969">source</a><a href="#method.deserialize" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/serde/1.0.155/serde/de/trait.Deserialize.html#tymethod.deserialize" class="fn">deserialize</a>&lt;D&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;deserializer: D<br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>, &lt;D as <a class="trait" href="https://docs.rs/serde/1.0.155/serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a>&lt;'de&gt;&gt;::<a class="associatedtype" href="https://docs.rs/serde/1.0.155/serde/de/trait.Deserializer.html#associatedtype.Error" title="type serde::de::Deserializer::Error">Error</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;D: <a class="trait" href="https://docs.rs/serde/1.0.155/serde/de/trait.Deserializer.html" title="trait serde::de::Deserializer">Deserializer</a>&lt;'de&gt;,</span></h4></section></summary><div class='docblock'>Deserialize this value from the given Serde deserializer. <a href="https://docs.rs/serde/1.0.155/serde/de/trait.Deserialize.html#tymethod.deserialize">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Div%3CDuration%3E-for-Duration" class="impl has-srclink"><a href="#impl-Div%3CDuration%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html" title="trait core::ops::arith::Div">Div</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="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/1.68.0/core/ops/arith/trait.Div.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f64.html">f64</a></h4></section></summary><div class='docblock'>The resulting type after applying the <code>/</code> operator.</div></details><details class="toggle method-toggle" open><summary><section id="method.div-1" class="method trait-impl has-srclink"><a href="#method.div-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html#tymethod.div" class="fn">div</a>(self, rhs: Duration) -&gt; &lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a> as <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html" title="trait core::ops::arith::Div">Div</a>&lt;Duration&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html#associatedtype.Output" title="type core::ops::arith::Div::Output">Output</a></h4></section></summary><div class='docblock'>Performs the <code>/</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html#tymethod.div">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Div%3CDuration%3E-for-Duration-1" class="impl has-srclink"><a href="#impl-Div%3CDuration%3E-for-Duration-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html" title="trait core::ops::arith::Div">Div</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="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/1.68.0/core/ops/arith/trait.Div.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.f64.html">f64</a></h4></section></summary><div class='docblock'>The resulting type after applying the <code>/</code> operator.</div></details><details class="toggle method-toggle" open><summary><section id="method.div-2" class="method trait-impl has-srclink"><a href="#method.div-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html#tymethod.div" class="fn">div</a>(self, rhs: Duration) -&gt; &lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a> as <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html" title="trait core::ops::arith::Div">Div</a>&lt;Duration&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html#associatedtype.Output" title="type core::ops::arith::Div::Output">Output</a></h4></section></summary><div class='docblock'>Performs the <code>/</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html#tymethod.div">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Div%3Cu32%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#973">source</a><a href="#impl-Div%3Cu32%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html" title="trait core::ops::arith::Div">Div</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="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/1.68.0/core/ops/arith/trait.Div.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class='docblock'>The resulting type after applying the <code>/</code> operator.</div></details><details class="toggle method-toggle" open><summary><section id="method.div" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#976">source</a><a href="#method.div" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html#tymethod.div" class="fn">div</a>(self, rhs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class='docblock'>Performs the <code>/</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Div.html#tymethod.div">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-DivAssign%3Cu32%3E-for-Duration" class="impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.9.0">1.9.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#982">source</a></span><a href="#impl-DivAssign%3Cu32%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.DivAssign.html" title="trait core::ops::arith::DivAssign">DivAssign</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.div_assign" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#983">source</a><a href="#method.div_assign" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.DivAssign.html#tymethod.div_assign" class="fn">div_assign</a>(&amp;mut self, rhs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>)</h4></section></summary><div class='docblock'>Performs the <code>/=</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.DivAssign.html#tymethod.div_assign">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CCrackTimeSeconds%3E-for-Duration" class="impl has-srclink"><a href="#impl-From%3CCrackTimeSeconds%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;CrackTimeSeconds&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl has-srclink"><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(s: CrackTimeSeconds) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Hash-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#impl-Hash-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/hash/trait.Hash.html" title="trait core::hash::Hash">Hash</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.hash" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#method.hash" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/hash/trait.Hash.html#tymethod.hash" class="fn">hash</a>&lt;__H&gt;(&amp;self, state: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;mut </a>__H)<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;__H: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,</span></h4></section></summary><div class='docblock'>Feeds this value into the given <a href="https://doc.rust-lang.org/1.68.0/core/hash/trait.Hasher.html" title="Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/1.68.0/core/hash/trait.Hash.html#tymethod.hash">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.hash_slice" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/hash/mod.rs.html#239-241">source</a><a href="#method.hash_slice" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/hash/trait.Hash.html#method.hash_slice" class="fn">hash_slice</a>&lt;H&gt;(data: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.slice.html">[Self]</a>, state: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;mut </a>H)<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;H: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h4></section></summary><div class='docblock'>Feeds a slice of this type into the given <a href="https://doc.rust-lang.org/1.68.0/core/hash/trait.Hasher.html" title="Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/1.68.0/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mul%3Cu32%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#948">source</a><a href="#impl-Mul%3Cu32%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Mul.html" title="trait core::ops::arith::Mul">Mul</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="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/1.68.0/core/ops/arith/trait.Mul.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class='docblock'>The resulting type after applying the <code>*</code> operator.</div></details><details class="toggle method-toggle" open><summary><section id="method.mul" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#951">source</a><a href="#method.mul" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Mul.html#tymethod.mul" class="fn">mul</a>(self, rhs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class='docblock'>Performs the <code>*</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Mul.html#tymethod.mul">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-MulAssign%3Cu32%3E-for-Duration" class="impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.9.0">1.9.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#966">source</a></span><a href="#impl-MulAssign%3Cu32%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.MulAssign.html" title="trait core::ops::arith::MulAssign">MulAssign</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mul_assign" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#967">source</a><a href="#method.mul_assign" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.MulAssign.html#tymethod.mul_assign" class="fn">mul_assign</a>(&amp;mut self, rhs: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>)</h4></section></summary><div class='docblock'>Performs the <code>*=</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.MulAssign.html#tymethod.mul_assign">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Ord-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#impl-Ord-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.Ord.html#tymethod.cmp" class="fn">cmp</a>(&amp;self, other: &amp;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a></h4></section></summary><div class='docblock'>This method returns an <a href="https://doc.rust-lang.org/1.68.0/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/1.68.0/core/cmp/trait.Ord.html#tymethod.cmp">Read more</a></div></details><details class="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/1.68.0/src/core/cmp.rs.html#796-799">source</a></span><a href="#method.max" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.Ord.html#method.max" class="fn">max</a>(self, other: Self) -&gt; Self<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h4></section></summary><div class='docblock'>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.Ord.html#method.max">Read more</a></div></details><details class="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/1.68.0/src/core/cmp.rs.html#826-829">source</a></span><a href="#method.min" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.Ord.html#method.min" class="fn">min</a>(self, other: Self) -&gt; Self<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h4></section></summary><div class='docblock'>Compares and returns the minimum of two values. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.Ord.html#method.min">Read more</a></div></details><details class="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/1.68.0/src/core/cmp.rs.html#861-865">source</a></span><a href="#method.clamp" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.Ord.html#method.clamp" class="fn">clamp</a>(self, min: Self, max: Self) -&gt; Self<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a> + <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a>&lt;Self&gt;,</span></h4></section></summary><div class='docblock'>Restrict a value to a certain interval. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.Ord.html#method.clamp">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq%3CDuration%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#impl-PartialEq%3CDuration%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialEq.html#tymethod.eq" class="fn">eq</a>(&amp;self, other: &amp;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used
by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" 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/1.68.0/src/core/cmp.rs.html#227">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialEq.html#method.ne" class="fn">ne</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>!=</code>. The default implementation is almost always
sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq%3CDuration%3E-for-Duration-1" class="impl has-srclink"><a href="#impl-PartialEq%3CDuration%3E-for-Duration-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq-1" class="method trait-impl has-srclink"><a href="#method.eq-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialEq.html#tymethod.eq" class="fn">eq</a>(&amp;self, rhs: &amp;Duration) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used
by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-1" 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/1.68.0/src/core/cmp.rs.html#227">source</a></span><a href="#method.ne-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialEq.html#method.ne" class="fn">ne</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>!=</code>. The default implementation is almost always
sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq%3CDuration%3E-for-Duration-2" class="impl has-srclink"><a href="#impl-PartialEq%3CDuration%3E-for-Duration-2" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq-2" class="method trait-impl has-srclink"><a href="#method.eq-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialEq.html#tymethod.eq" class="fn">eq</a>(&amp;self, rhs: &amp;Duration) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used
by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-2" 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/1.68.0/src/core/cmp.rs.html#227">source</a></span><a href="#method.ne-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialEq.html#method.ne" class="fn">ne</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>!=</code>. The default implementation is almost always
sufficient, and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CDuration%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#impl-PartialOrd%3CDuration%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.partial_cmp" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#method.partial_cmp" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp" class="fn">partial_cmp</a>(&amp;self, other: &amp;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.68.0/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>&gt;</h4></section></summary><div class='docblock'>This method returns an ordering between <code>self</code> and <code>other</code> values if one exists. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp">Read more</a></div></details><details class="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/1.68.0/src/core/cmp.rs.html#1096">source</a></span><a href="#method.lt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.lt" class="fn">lt</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests less than (for <code>self</code> and <code>other</code>) and is used by the <code>&lt;</code> operator. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.lt">Read more</a></div></details><details class="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/1.68.0/src/core/cmp.rs.html#1115">source</a></span><a href="#method.le" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.le" class="fn">le</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests less than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>&lt;=</code>
operator. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="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/1.68.0/src/core/cmp.rs.html#1133">source</a></span><a href="#method.gt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.gt" class="fn">gt</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests greater than (for <code>self</code> and <code>other</code>) and is used by the <code>&gt;</code> operator. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.gt">Read more</a></div></details><details class="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/1.68.0/src/core/cmp.rs.html#1152">source</a></span><a href="#method.ge" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.ge" class="fn">ge</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests greater than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>&gt;=</code>
operator. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CDuration%3E-for-Duration-1" class="impl has-srclink"><a href="#impl-PartialOrd%3CDuration%3E-for-Duration-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-1" class="method trait-impl has-srclink"><a href="#method.partial_cmp-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp" class="fn">partial_cmp</a>(&amp;self, rhs: &amp;Duration) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.68.0/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>&gt;</h4></section></summary><div class='docblock'>This method returns an ordering between <code>self</code> and <code>other</code> values if one exists. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.lt-1" 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/1.68.0/src/core/cmp.rs.html#1096">source</a></span><a href="#method.lt-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.lt" class="fn">lt</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests less than (for <code>self</code> and <code>other</code>) and is used by the <code>&lt;</code> operator. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.lt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.le-1" 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/1.68.0/src/core/cmp.rs.html#1115">source</a></span><a href="#method.le-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.le" class="fn">le</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests less than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>&lt;=</code>
operator. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt-1" 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/1.68.0/src/core/cmp.rs.html#1133">source</a></span><a href="#method.gt-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.gt" class="fn">gt</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests greater than (for <code>self</code> and <code>other</code>) and is used by the <code>&gt;</code> operator. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.gt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.ge-1" 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/1.68.0/src/core/cmp.rs.html#1152">source</a></span><a href="#method.ge-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.ge" class="fn">ge</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests greater than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>&gt;=</code>
operator. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd%3CDuration%3E-for-Duration-2" class="impl has-srclink"><a href="#impl-PartialOrd%3CDuration%3E-for-Duration-2" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-2" class="method trait-impl has-srclink"><a href="#method.partial_cmp-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp" class="fn">partial_cmp</a>(&amp;self, rhs: &amp;Duration) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.68.0/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>&gt;</h4></section></summary><div class='docblock'>This method returns an ordering between <code>self</code> and <code>other</code> values if one exists. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.lt-2" 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/1.68.0/src/core/cmp.rs.html#1096">source</a></span><a href="#method.lt-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.lt" class="fn">lt</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests less than (for <code>self</code> and <code>other</code>) and is used by the <code>&lt;</code> operator. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.lt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.le-2" 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/1.68.0/src/core/cmp.rs.html#1115">source</a></span><a href="#method.le-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.le" class="fn">le</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests less than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>&lt;=</code>
operator. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt-2" 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/1.68.0/src/core/cmp.rs.html#1133">source</a></span><a href="#method.gt-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.gt" class="fn">gt</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests greater than (for <code>self</code> and <code>other</code>) and is used by the <code>&gt;</code> operator. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.gt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.ge-2" 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/1.68.0/src/core/cmp.rs.html#1152">source</a></span><a href="#method.ge-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.ge" class="fn">ge</a>(&amp;self, other: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Rhs) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests greater than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>&gt;=</code>
operator. <a href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-SampleUniform-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://rust-random.github.io/rand/src/rand/distributions/uniform.rs.html#1046">source</a><a href="#impl-SampleUniform-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://rust-random.github.io/rand/rand/distributions/uniform/trait.SampleUniform.html" title="trait rand::distributions::uniform::SampleUniform">SampleUniform</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Sampler" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Sampler" class="anchor">§</a><h4 class="code-header">type <a href="https://rust-random.github.io/rand/rand/distributions/uniform/trait.SampleUniform.html#associatedtype.Sampler" class="associatedtype">Sampler</a> = <a class="struct" href="https://rust-random.github.io/rand/rand/distributions/uniform/struct.UniformDuration.html" title="struct rand::distributions::uniform::UniformDuration">UniformDuration</a></h4></section></summary><div class='docblock'>The <code>UniformSampler</code> implementation supporting type <code>X</code>.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-SampleUniform-for-Duration-1" class="impl has-srclink"><a class="srclink rightside" href="https://rust-random.github.io/rand/src/rand/distributions/uniform.rs.html#861">source</a><a href="#impl-SampleUniform-for-Duration-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://rust-random.github.io/rand/rand/distributions/uniform/trait.SampleUniform.html" title="trait rand::distributions::uniform::SampleUniform">SampleUniform</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Sampler-1" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Sampler-1" class="anchor">§</a><h4 class="code-header">type <a href="https://rust-random.github.io/rand/rand/distributions/uniform/trait.SampleUniform.html#associatedtype.Sampler" class="associatedtype">Sampler</a> = <a class="struct" href="https://rust-random.github.io/rand/rand/distributions/uniform/struct.UniformDuration.html" title="struct rand::distributions::uniform::UniformDuration">UniformDuration</a></h4></section></summary><div class='docblock'>The <code>UniformSampler</code> implementation supporting type <code>X</code>.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Serialize-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/serde/1.0.155/src/serde/ser/impls.rs.html#632">source</a><a href="#impl-Serialize-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://docs.rs/serde/1.0.155/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.serialize" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/serde/1.0.155/src/serde/ser/impls.rs.html#633-635">source</a><a href="#method.serialize" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/serde/1.0.155/serde/ser/trait.Serialize.html#tymethod.serialize" class="fn">serialize</a>&lt;S&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;self,<br>&nbsp;&nbsp;&nbsp;&nbsp;serializer: S<br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;&lt;S as <a class="trait" href="https://docs.rs/serde/1.0.155/serde/ser/trait.Serializer.html" title="trait serde::ser::Serializer">Serializer</a>&gt;::<a class="associatedtype" href="https://docs.rs/serde/1.0.155/serde/ser/trait.Serializer.html#associatedtype.Ok" title="type serde::ser::Serializer::Ok">Ok</a>, &lt;S as <a class="trait" href="https://docs.rs/serde/1.0.155/serde/ser/trait.Serializer.html" title="trait serde::ser::Serializer">Serializer</a>&gt;::<a class="associatedtype" href="https://docs.rs/serde/1.0.155/serde/ser/trait.Serializer.html#associatedtype.Error" title="type serde::ser::Serializer::Error">Error</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;S: <a class="trait" href="https://docs.rs/serde/1.0.155/serde/ser/trait.Serializer.html" title="trait serde::ser::Serializer">Serializer</a>,</span></h4></section></summary><div class='docblock'>Serialize this value into the given Serde serializer. <a href="https://docs.rs/serde/1.0.155/serde/ser/trait.Serialize.html#tymethod.serialize">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Sub%3CDuration%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#932">source</a><a href="#impl-Sub%3CDuration%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="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/1.68.0/core/ops/arith/trait.Sub.html#associatedtype.Output" class="associatedtype">Output</a> = <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class='docblock'>The resulting type after applying the <code>-</code> operator.</div></details><details class="toggle method-toggle" open><summary><section id="method.sub" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#935">source</a><a href="#method.sub" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html#tymethod.sub" class="fn">sub</a>(self, rhs: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h4></section></summary><div class='docblock'>Performs the <code>-</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html#tymethod.sub">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Sub%3CDuration%3E-for-Duration-1" class="impl has-srclink"><a href="#impl-Sub%3CDuration%3E-for-Duration-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="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/1.68.0/core/ops/arith/trait.Sub.html#associatedtype.Output" class="associatedtype">Output</a> = Duration</h4></section></summary><div class='docblock'>The resulting type after applying the <code>-</code> operator.</div></details><details class="toggle method-toggle" open><summary><section id="method.sub-1" class="method trait-impl has-srclink"><a href="#method.sub-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html#tymethod.sub" class="fn">sub</a>(self, rhs: Duration) -&gt; &lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a> as <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a>&lt;Duration&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html#associatedtype.Output" title="type core::ops::arith::Sub::Output">Output</a></h4></section></summary><div class='docblock'>Performs the <code>-</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html#tymethod.sub">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Sub%3CDuration%3E-for-Duration-2" class="impl has-srclink"><a href="#impl-Sub%3CDuration%3E-for-Duration-2" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="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/1.68.0/core/ops/arith/trait.Sub.html#associatedtype.Output" class="associatedtype">Output</a> = Duration</h4></section></summary><div class='docblock'>The resulting type after applying the <code>-</code> operator.</div></details><details class="toggle method-toggle" open><summary><section id="method.sub-2" class="method trait-impl has-srclink"><a href="#method.sub-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html#tymethod.sub" class="fn">sub</a>(self, rhs: Duration) -&gt; &lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a> as <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html" title="trait core::ops::arith::Sub">Sub</a>&lt;Duration&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html#associatedtype.Output" title="type core::ops::arith::Sub::Output">Output</a></h4></section></summary><div class='docblock'>Performs the <code>-</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.Sub.html#tymethod.sub">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-SubAssign%3CDuration%3E-for-Duration" class="impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.9.0">1.9.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#941">source</a></span><a href="#impl-SubAssign%3CDuration%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.SubAssign.html" title="trait core::ops::arith::SubAssign">SubAssign</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.sub_assign" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#942">source</a><a href="#method.sub_assign" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.SubAssign.html#tymethod.sub_assign" class="fn">sub_assign</a>(&amp;mut self, rhs: <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>)</h4></section></summary><div class='docblock'>Performs the <code>-=</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.SubAssign.html#tymethod.sub_assign">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-SubAssign%3CDuration%3E-for-Duration-1" class="impl has-srclink"><a href="#impl-SubAssign%3CDuration%3E-for-Duration-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.SubAssign.html" title="trait core::ops::arith::SubAssign">SubAssign</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.sub_assign-1" class="method trait-impl has-srclink"><a href="#method.sub_assign-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.SubAssign.html#tymethod.sub_assign" class="fn">sub_assign</a>(&amp;mut self, rhs: Duration)</h4></section></summary><div class='docblock'>Performs the <code>-=</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.SubAssign.html#tymethod.sub_assign">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-SubAssign%3CDuration%3E-for-Duration-2" class="impl has-srclink"><a href="#impl-SubAssign%3CDuration%3E-for-Duration-2" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.SubAssign.html" title="trait core::ops::arith::SubAssign">SubAssign</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.sub_assign-2" class="method trait-impl has-srclink"><a href="#method.sub_assign-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.SubAssign.html#tymethod.sub_assign" class="fn">sub_assign</a>(&amp;mut self, rhs: Duration)</h4></section></summary><div class='docblock'>Performs the <code>-=</code> operation. <a href="https://doc.rust-lang.org/1.68.0/core/ops/arith/trait.SubAssign.html#tymethod.sub_assign">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Sum%3C%26%27a%20Duration%3E-for-Duration" class="impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.16.0">1.16.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#1022">source</a></span><a href="#impl-Sum%3C%26%27a%20Duration%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;'a&gt; <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a>&lt;&amp;'a <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.sum-1" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#1023">source</a><a href="#method.sum-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/iter/traits/accum/trait.Sum.html#tymethod.sum" class="fn">sum</a>&lt;I&gt;(iter: I) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a><span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = &amp;'a <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt;,</span></h4></section></summary><div class='docblock'>Method which takes an iterator and generates <code>Self</code> from the elements by
“summing up” the items.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Sum%3CDuration%3E-for-Duration" class="impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.16.0">1.16.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#1015">source</a></span><a href="#impl-Sum%3CDuration%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.sum" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#1016">source</a><a href="#method.sum" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/iter/traits/accum/trait.Sum.html#tymethod.sum" class="fn">sum</a>&lt;I&gt;(iter: I) -&gt; <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a><span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>&gt;,</span></h4></section></summary><div class='docblock'>Method which takes an iterator and generates <code>Self</code> from the elements by
“summing up” the items.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-TryFrom%3CDuration%3E-for-Duration" class="impl has-srclink"><a href="#impl-TryFrom%3CDuration%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="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/1.68.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = ConversionRange</h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl has-srclink"><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(duration: Duration) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>, ConversionRange&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-TryFrom%3CDuration%3E-for-Duration-1" class="impl has-srclink"><a href="#impl-TryFrom%3CDuration%3E-for-Duration-1" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;Duration&gt; for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section></summary><div class="impl-items"><details class="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/1.68.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = ConversionRange</h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from-1" class="method trait-impl has-srclink"><a href="#method.try_from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(duration: Duration) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a>, ConversionRange&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><section id="impl-Copy-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#impl-Copy-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section><section id="impl-Eq-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#impl-Eq-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section><section id="impl-StructuralEq-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#impl-StructuralEq-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.StructuralEq.html" title="trait core::marker::StructuralEq">StructuralEq</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section><section id="impl-StructuralPartialEq-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/time.rs.html#84">source</a><a href="#impl-StructuralPartialEq-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.StructuralPartialEq.html" title="trait core::marker::StructuralPartialEq">StructuralPartialEq</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::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-for-Duration" class="impl has-srclink"><a href="#impl-RefUnwindSafe-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/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 kanidmd_lib::prelude::Duration">Duration</a></h3></section><section id="impl-Send-for-Duration" class="impl has-srclink"><a href="#impl-Send-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section><section id="impl-Sync-for-Duration" class="impl has-srclink"><a href="#impl-Sync-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section><section id="impl-Unpin-for-Duration" class="impl has-srclink"><a href="#impl-Unpin-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Duration.html" title="struct kanidmd_lib::prelude::Duration">Duration</a></h3></section><section id="impl-UnwindSafe-for-Duration" class="impl has-srclink"><a href="#impl-UnwindSafe-for-Duration" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.68.0/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 kanidmd_lib::prelude::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="toggle implementors-toggle"><summary><section id="impl-Any-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/any.rs.html#200">source</a><a href="#impl-Any-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/any.rs.html#201">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.68.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.68.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-AsTaggedExplicit%3C%27a%3E-for-Duration" class="impl has-srclink"><a href="#impl-AsTaggedExplicit%3C%27a%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;'a, T&gt; AsTaggedExplicit&lt;'a&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'a,</span></h3></section></summary><div class="impl-items"><section id="method.explicit" class="method trait-impl has-srclink"><a href="#method.explicit" class="anchor">§</a><h4 class="code-header">fn <a class="fn">explicit</a>(self, class: Class, tag: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a>) -&gt; TaggedParser&lt;'a, Explicit, Self&gt;</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-AsTaggedImplicit%3C%27a%3E-for-Duration" class="impl has-srclink"><a href="#impl-AsTaggedImplicit%3C%27a%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;'a, T&gt; AsTaggedImplicit&lt;'a&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'a,</span></h3></section></summary><div class="impl-items"><section id="method.implicit" class="method trait-impl has-srclink"><a href="#method.implicit" class="anchor">§</a><h4 class="code-header">fn <a class="fn">implicit</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;self,<br>&nbsp;&nbsp;&nbsp;&nbsp;class: Class,<br>&nbsp;&nbsp;&nbsp;&nbsp;constructed: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.bool.html">bool</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;tag: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u32.html">u32</a><br>) -&gt; TaggedParser&lt;'a, Implicit, Self&gt;</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/borrow.rs.html#211">source</a><a href="#impl-Borrow%3CT%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="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/1.68.0/src/core/borrow.rs.html#213">source</a></span><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>T</h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.68.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/borrow.rs.html#220">source</a><a href="#impl-BorrowMut%3CT%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="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/1.68.0/src/core/borrow.rs.html#221">source</a></span><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;mut </a>T</h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.68.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-CallHasher-for-Duration" class="impl has-srclink"><a href="#impl-CallHasher-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; CallHasher for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/hash/trait.Hash.html" title="trait core::hash::Hash">Hash</a> + ?<a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><section id="method.get_hash" class="method trait-impl has-srclink"><a href="#method.get_hash" class="anchor">§</a><h4 class="code-header">fn <a class="fn">get_hash</a>&lt;H, B&gt;(value: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>H, build_hasher: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>B) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.u64.html">u64</a><span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;H: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/hash/trait.Hash.html" title="trait core::hash::Hash">Hash</a> + ?<a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;B: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/hash/trait.BuildHasher.html" title="trait core::hash::BuildHasher">BuildHasher</a>,</span></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-DynClone-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/dyn_clone/1.0.11/src/dyn_clone/lib.rs.html#188">source</a><a href="#impl-DynClone-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://docs.rs/dyn_clone/1.0.11/dyn_clone/trait.DynClone.html" title="trait dyn_clone::DynClone">DynClone</a> for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</span></h3></section></summary><div class="impl-items"><section id="method.__clone_box" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/dyn_clone/1.0.11/src/dyn_clone/lib.rs.html#192">source</a><a href="#method.__clone_box" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/dyn_clone/1.0.11/dyn_clone/trait.DynClone.html#tymethod.__clone_box" class="fn">__clone_box</a>(&amp;self, _: Private) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.pointer.html">*mut </a><a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.unit.html">()</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/convert/mod.rs.html#733">source</a><a href="#impl-From%3CT%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" 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/1.68.0/src/core/convert/mod.rs.html#736">source</a></span><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -&gt; T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Instrument-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#276">source</a><a href="#impl-Instrument-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html" title="trait tracing::instrument::Instrument">Instrument</a> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.instrument" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#82">source</a><a href="#method.instrument" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html#method.instrument" class="fn">instrument</a>(self, span: <a class="struct" href="https://docs.rs/tracing/0.1.37/tracing/span/struct.Span.html" title="struct tracing::span::Span">Span</a>) -&gt; <a class="struct" href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.Instrumented.html" title="struct tracing::instrument::Instrumented">Instrumented</a>&lt;Self&gt;</h4></section></summary><div class='docblock'>Instruments this type with the provided <a href="https://docs.rs/tracing/0.1.37/tracing/span/struct.Span.html" title="Span"><code>Span</code></a>, returning an
<code>Instrumented</code> wrapper. <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html#method.instrument">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.in_current_span" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#121">source</a><a href="#method.in_current_span" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html#method.in_current_span" class="fn">in_current_span</a>(self) -&gt; <a class="struct" href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.Instrumented.html" title="struct tracing::instrument::Instrumented">Instrumented</a>&lt;Self&gt;</h4></section></summary><div class='docblock'>Instruments this type with the <a href="https://docs.rs/tracing/0.1.37/tracing/span/struct.Span.html#method.current">current</a> <a href="https://docs.rs/tracing/0.1.37/tracing/span/struct.Span.html"><code>Span</code></a>, returning an
<code>Instrumented</code> wrapper. <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html#method.in_current_span">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/convert/mod.rs.html#717">source</a><a href="#impl-Into%3CU%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,</span></h3></section></summary><div class="impl-items"><details class="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/1.68.0/src/core/convert/mod.rs.html#725">source</a></span><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -&gt; 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/1.68.0/core/convert/trait.From.html" title="From">From</a>&lt;T&gt; for U</code> chooses to do.</p>
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Pointable-for-Duration" class="impl has-srclink"><a href="#impl-Pointable-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; Pointable for T</h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedconstant.ALIGN" class="associatedconstant trait-impl has-srclink"><a href="#associatedconstant.ALIGN" class="anchor">§</a><h4 class="code-header">const <a class="constant">ALIGN</a>: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.usize.html">usize</a> = mem::align_of::&lt;T&gt;()</h4></section></summary><div class='docblock'>The alignment of pointer.</div></details><details class="toggle" open><summary><section id="associatedtype.Init" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Init" class="anchor">§</a><h4 class="code-header">type <a class="associatedtype">Init</a> = T</h4></section></summary><div class='docblock'>The type for initializers.</div></details><details class="toggle method-toggle" open><summary><section id="method.init" class="method trait-impl has-srclink"><a href="#method.init" class="anchor">§</a><h4 class="code-header">unsafe fn <a class="fn">init</a>(init: &lt;T as Pointable&gt;::Init) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Initializes a with the given initializer. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.deref" class="method trait-impl has-srclink"><a href="#method.deref" class="anchor">§</a><h4 class="code-header">unsafe fn <a class="fn">deref</a>&lt;'a&gt;(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;'a </a>T</h4></section></summary><div class='docblock'>Dereferences the given pointer. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.deref_mut" class="method trait-impl has-srclink"><a href="#method.deref_mut" class="anchor">§</a><h4 class="code-header">unsafe fn <a class="fn">deref_mut</a>&lt;'a&gt;(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;'a mut </a>T</h4></section></summary><div class='docblock'>Mutably dereferences the given pointer. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.drop" class="method trait-impl has-srclink"><a href="#method.drop" class="anchor">§</a><h4 class="code-header">unsafe fn <a class="fn">drop</a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.usize.html">usize</a>)</h4></section></summary><div class='docblock'>Drops the object pointed to by the given pointer. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Same%3CT%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/typenum/1.16.0/src/typenum/type_operators.rs.html#34">source</a><a href="#impl-Same%3CT%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://docs.rs/typenum/1.16.0/typenum/type_operators/trait.Same.html" title="trait typenum::type_operators::Same">Same</a>&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="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://docs.rs/typenum/1.16.0/typenum/type_operators/trait.Same.html#associatedtype.Output" class="associatedtype">Output</a> = T</h4></section></summary><div class='docblock'>Should always be <code>Self</code></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SampleBorrow%3CBorrowed%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://rust-random.github.io/rand/src/rand/distributions/uniform.rs.html#328">source</a><a href="#impl-SampleBorrow%3CBorrowed%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;Borrowed&gt; <a class="trait" href="https://rust-random.github.io/rand/rand/distributions/uniform/trait.SampleBorrow.html" title="trait rand::distributions::uniform::SampleBorrow">SampleBorrow</a>&lt;Borrowed&gt; for Borrowed<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Borrowed: <a class="trait" href="https://rust-random.github.io/rand/rand/distributions/uniform/trait.SampleUniform.html" title="trait rand::distributions::uniform::SampleUniform">SampleUniform</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow-1" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://rust-random.github.io/rand/src/rand/distributions/uniform.rs.html#332">source</a><a href="#method.borrow-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://rust-random.github.io/rand/rand/distributions/uniform/trait.SampleBorrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Borrowed</h4></section></summary><div class='docblock'>Immutably borrows from an owned value. See <a href="https://doc.rust-lang.org/1.68.0/core/borrow/trait.Borrow.html#tymethod.borrow"><code>Borrow::borrow</code></a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SampleBorrow%3CBorrowed%3E-for-Duration-1" class="impl has-srclink"><a class="srclink rightside" href="https://rust-random.github.io/rand/src/rand/distributions/uniform.rs.html#293">source</a><a href="#impl-SampleBorrow%3CBorrowed%3E-for-Duration-1" class="anchor">§</a><h3 class="code-header">impl&lt;Borrowed&gt; <a class="trait" href="https://rust-random.github.io/rand/rand/distributions/uniform/trait.SampleBorrow.html" title="trait rand::distributions::uniform::SampleBorrow">SampleBorrow</a>&lt;Borrowed&gt; for Borrowed<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Borrowed: <a class="trait" href="https://rust-random.github.io/rand/rand/distributions/uniform/trait.SampleUniform.html" title="trait rand::distributions::uniform::SampleUniform">SampleUniform</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow-2" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://rust-random.github.io/rand/src/rand/distributions/uniform.rs.html#297">source</a><a href="#method.borrow-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://rust-random.github.io/rand/rand/distributions/uniform/trait.SampleBorrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;</a>Borrowed</h4></section></summary><div class='docblock'>Immutably borrows from an owned value. See <a href="https://doc.rust-lang.org/1.68.0/core/borrow/trait.Borrow.html#tymethod.borrow"><code>Borrow::borrow</code></a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Serialize-for-Duration-1" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/erased-serde/0.3.24/src/erased_serde/ser.rs.html#238">source</a><a href="#impl-Serialize-for-Duration-1" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://docs.rs/erased-serde/0.3.24/erased_serde/ser/trait.Serialize.html" title="trait erased_serde::ser::Serialize">Serialize</a> for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://docs.rs/serde/1.0.155/serde/ser/trait.Serialize.html" title="trait serde::ser::Serialize">Serialize</a> + ?<a class="trait" href="https://doc.rust-lang.org/1.68.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><section id="method.erased_serialize" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/erased-serde/0.3.24/src/erased_serde/ser.rs.html#242">source</a><a href="#method.erased_serialize" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/erased-serde/0.3.24/erased_serde/ser/trait.Serialize.html#tymethod.erased_serialize" class="fn">erased_serialize</a>(&amp;self, serializer: &amp;mut dyn <a class="trait" href="https://docs.rs/erased-serde/0.3.24/erased_serde/ser/trait.Serializer.html" title="trait erased_serde::ser::Serializer">Serializer</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Ok, <a class="struct" href="https://docs.rs/erased-serde/0.3.24/erased_serde/error/struct.Error.html" title="struct erased_serde::error::Error">Error</a>&gt;</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToOwned-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/alloc/borrow.rs.html#82">source</a><a href="#impl-ToOwned-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.68.0/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</span></h3></section></summary><div class="impl-items"><details class="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/1.68.0/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/alloc/borrow.rs.html#87">source</a><a href="#method.to_owned" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&amp;self) -&gt; T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.68.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/alloc/borrow.rs.html#91">source</a><a href="#method.clone_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&amp;self, target: <a class="primitive" href="https://doc.rust-lang.org/1.68.0/std/primitive.reference.html">&amp;mut </a>T)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/1.68.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/convert/mod.rs.html#775">source</a><a href="#impl-TryFrom%3CU%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-2" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error-2" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from-2" 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/1.68.0/src/core/convert/mod.rs.html#781">source</a></span><a href="#method.try_from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.68.0/src/core/convert/mod.rs.html#760">source</a><a href="#impl-TryInto%3CU%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-3" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error-3" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="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/1.68.0/src/core/convert/mod.rs.html#766">source</a></span><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.68.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;U, &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-VZip%3CV%3E-for-Duration" class="impl has-srclink"><a href="#impl-VZip%3CV%3E-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;V, T&gt; VZip&lt;V&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;V: MultiLane&lt;T&gt;,</span></h3></section></summary><div class="impl-items"><section id="method.vzip" class="method trait-impl has-srclink"><a href="#method.vzip" class="anchor">§</a><h4 class="code-header">fn <a class="fn">vzip</a>(self) -&gt; V</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-WithSubscriber-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#334">source</a><a href="#impl-WithSubscriber-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.WithSubscriber.html" title="trait tracing::instrument::WithSubscriber">WithSubscriber</a> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.with_subscriber" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#169-171">source</a><a href="#method.with_subscriber" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.WithSubscriber.html#method.with_subscriber" class="fn">with_subscriber</a>&lt;S&gt;(self, subscriber: S) -&gt; <a class="struct" href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.WithDispatch.html" title="struct tracing::instrument::WithDispatch">WithDispatch</a>&lt;Self&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;S: <a class="trait" href="https://doc.rust-lang.org/1.68.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;<a class="struct" href="https://docs.rs/tracing-core/0.1.22/tracing_core/dispatcher/struct.Dispatch.html" title="struct tracing_core::dispatcher::Dispatch">Dispatch</a>&gt;,</span></h4></section></summary><div class='docblock'>Attaches the provided <a href="https://docs.rs/tracing-core/0.1.22/tracing_core/subscriber/trait.Subscriber.html"><code>Subscriber</code></a> to this type, returning a
<a href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.WithDispatch.html" title="WithDispatch"><code>WithDispatch</code></a> wrapper. <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.WithSubscriber.html#method.with_subscriber">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_current_subscriber" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#221">source</a><a href="#method.with_current_subscriber" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.WithSubscriber.html#method.with_current_subscriber" class="fn">with_current_subscriber</a>(self) -&gt; <a class="struct" href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.WithDispatch.html" title="struct tracing::instrument::WithDispatch">WithDispatch</a>&lt;Self&gt;</h4></section></summary><div class='docblock'>Attaches the current <a href="https://docs.rs/tracing/0.1.37/tracing/dispatcher/index.html#setting-the-default-subscriber">default</a> <a href="https://docs.rs/tracing-core/0.1.22/tracing_core/subscriber/trait.Subscriber.html"><code>Subscriber</code></a> to this type, returning a
<a href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.WithDispatch.html" title="WithDispatch"><code>WithDispatch</code></a> wrapper. <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.WithSubscriber.html#method.with_current_subscriber">Read more</a></div></details></div></details><section id="impl-DeserializeOwned-for-Duration" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/serde/1.0.155/src/serde/de/mod.rs.html#604">source</a><a href="#impl-DeserializeOwned-for-Duration" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://docs.rs/serde/1.0.155/serde/de/trait.DeserializeOwned.html" title="trait serde::de::DeserializeOwned">DeserializeOwned</a> for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: for&lt;'de&gt; <a class="trait" href="https://docs.rs/serde/1.0.155/serde/de/trait.Deserialize.html" title="trait serde::de::Deserialize">Deserialize</a>&lt;'de&gt;,</span></h3></section></div></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="kanidmd_lib" data-themes="" data-resource-suffix="" data-rustdoc-version="1.68.0 (2c8cc3432 2023-03-06)" data-search-js="search-98d53477a794af0b.js" data-settings-js="settings-c3c521c753752a1a.js" data-settings-css="settings-08ddfdda51b8ee2e.css" ></div></body></html>