oxipng/doc/bitflags/__core/time/struct.Instant.html
2016-05-04 10:41:29 -04:00

184 lines
No EOL
21 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="API documentation for the Rust `Instant` struct in crate `bitflags`.">
<meta name="keywords" content="rust, rustlang, rust-lang, Instant">
<title>bitflags::__core::time::Instant - Rust</title>
<link rel="stylesheet" type="text/css" href="../../../rustdoc.css">
<link rel="stylesheet" type="text/css" href="../../../main.css">
</head>
<body class="rustdoc">
<!--[if lte IE 8]>
<div class="warning">
This old browser is unsupported and will most likely display funky
things.
</div>
<![endif]-->
<nav class="sidebar">
<p class='location'><a href='../../index.html'>bitflags</a>::<wbr><a href='../index.html'>__core</a>::<wbr><a href='index.html'>time</a></p><script>window.sidebarCurrent = {name: 'Instant', ty: 'struct', relpath: ''};</script><script defer src="sidebar-items.js"></script>
</nav>
<nav class="sub">
<form class="search-form js-only">
<div class="search-container">
<input class="search-input" name="search"
autocomplete="off"
placeholder="Click or press S to search, ? for more options…"
type="search">
</div>
</form>
</nav>
<section id='main' class="content struct">
<h1 class='fqn'><span class='in-band'>Struct <a href='../../index.html'>bitflags</a>::<wbr><a href='../index.html'>__core</a>::<wbr><a href='index.html'>time</a>::<wbr><a class='struct' href=''>Instant</a></span><span class='out-of-band'><span id='render-detail'>
<a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">
[<span class='inner'>&#x2212;</span>]
</a>
</span><a id='src-10617' class='srclink' href='https://doc.rust-lang.org/nightly/std/time/struct.Instant.html?gotosrc=10617' title='goto source code'>[src]</a></span></h1>
<pre class='rust struct'>pub struct Instant(_);</pre><span class="since">1.8.0</span><div class='docblock'><p>A measurement of a monotonically increasing clock.
Opaque and useful only with <code>Duration</code>.</p>
<p>Instants are always guaranteed to be greater than any previously measured
instant when created, and are often useful for tasks such as measuring
benchmarks or timing how long an operation takes.</p>
<p>Note, however, that instants are not guaranteed to be <strong>steady</strong>. In other
words, each tick of the underlying clock may not be the same length (e.g.
some seconds may be longer than others). An instant may jump forwards or
experience time dilation (slow down or speed up), but it will never go
backwards.</p>
<p>Instants are opaque types that can only be compared to one another. There is
no method to get &quot;the number of seconds&quot; from an instant. Instead, it only
allows measuring the duration between two instants (or comparing two
instants).</p>
<p>Example:</p>
<pre class='rust rust-example-rendered'>
<span class='kw'>use</span> <span class='ident'>std</span>::<span class='ident'>time</span>::{<span class='ident'>Duration</span>, <span class='ident'>Instant</span>};
<span class='kw'>use</span> <span class='ident'>std</span>::<span class='ident'>thread</span>::<span class='ident'>sleep</span>;
<span class='kw'>fn</span> <span class='ident'>main</span>() {
<span class='kw'>let</span> <span class='ident'>now</span> <span class='op'>=</span> <span class='ident'>Instant</span>::<span class='ident'>now</span>();
<span class='comment'>// we sleep for 2 seconds</span>
<span class='ident'>sleep</span>(<span class='ident'>Duration</span>::<span class='ident'>new</span>(<span class='number'>2</span>, <span class='number'>0</span>));
<span class='comment'>// it prints &#39;2&#39;</span>
<span class='macro'>println</span><span class='macro'>!</span>(<span class='string'>&quot;{}&quot;</span>, <span class='ident'>now</span>.<span class='ident'>elapsed</span>().<span class='ident'>as_secs</span>());
}</pre>
</div><h2 id='methods'>Methods</h2><h3 class='impl'><code>impl <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h3><div class='impl-items'><h4 id='method.now' class='method'><code>fn <a href='#method.now' class='fnname'>now</a>() -&gt; <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h4>
<div class='docblock'><p>Returns an instant corresponding to &quot;now&quot;.</p>
</div><h4 id='method.duration_since' class='method'><code>fn <a href='#method.duration_since' class='fnname'>duration_since</a>(&amp;self, earlier: <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>) -&gt; <a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a></code></h4>
<div class='docblock'><p>Returns the amount of time elapsed from another instant to this one.</p>
<h1 id='panics' class='section-header'><a href='#panics'>Panics</a></h1>
<p>This function will panic if <code>earlier</code> is later than <code>self</code>, which should
only be possible if <code>earlier</code> was created after <code>self</code>. Because
<code>Instant</code> is monotonic, the only time that this should happen should be
a bug.</p>
</div><h4 id='method.duration_from_earlier' class='method'><code>fn <a href='#method.duration_from_earlier' class='fnname'>duration_from_earlier</a>(&amp;self, earlier: <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>) -&gt; <a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a></code></h4>
<div class='stability'><em class='stab deprecated'>Deprecated since 1.8.0<p>: renamed to duration_since</p>
</em></div><div class='stability'><em class='stab unstable'>Unstable (<code>time2_old</code>)<p>: renamed to duration_since</p>
</em></div><div class='docblock'><p>Deprecated, renamed to <code>duration_since</code></p>
</div><h4 id='method.elapsed' class='method'><code>fn <a href='#method.elapsed' class='fnname'>elapsed</a>(&amp;self) -&gt; <a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a></code></h4>
<div class='docblock'><p>Returns the amount of time elapsed since this instant was created.</p>
<h1 id='panics-1' class='section-header'><a href='#panics-1'>Panics</a></h1>
<p>This function may panic if the current time is earlier than this
instant, which is something that can happen if an <code>Instant</code> is
produced synthetically.</p>
</div></div><h2 id='implementations'>Trait Implementations</h2><h3 class='impl'><code>impl <a class='trait' href='../../../bitflags/__core/ops/trait.Add.html' title='bitflags::__core::ops::Add'>Add</a>&lt;<a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a>&gt; for <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h3><div class='impl-items'><h4 id='associatedtype.Output' class='type'><code>type <a href='../../../bitflags/__core/ops/trait.Add.html#associatedtype.Output' class='type'>Output</a> = <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h4>
<h4 id='method.add' class='method'><code>fn <a href='../../../bitflags/__core/ops/trait.Add.html#tymethod.add' class='fnname'>add</a>(self, other: <a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a>) -&gt; <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h4>
</div><h3 class='impl'><code>impl <a class='trait' href='../../../bitflags/__core/ops/trait.AddAssign.html' title='bitflags::__core::ops::AddAssign'>AddAssign</a>&lt;<a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a>&gt; for <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code><span class="since">1.9.0</span></h3><div class='impl-items'><h4 id='method.add_assign' class='method'><code>fn <a href='../../../bitflags/__core/ops/trait.AddAssign.html#tymethod.add_assign' class='fnname'>add_assign</a>(&amp;mut self, other: <a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a>)</code></h4>
</div><h3 class='impl'><code>impl <a class='trait' href='../../../bitflags/__core/ops/trait.Sub.html' title='bitflags::__core::ops::Sub'>Sub</a>&lt;<a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a>&gt; for <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h3><div class='impl-items'><h4 id='associatedtype.Output-1' class='type'><code>type <a href='../../../bitflags/__core/ops/trait.Sub.html#associatedtype.Output' class='type'>Output</a> = <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h4>
<h4 id='method.sub' class='method'><code>fn <a href='../../../bitflags/__core/ops/trait.Sub.html#tymethod.sub' class='fnname'>sub</a>(self, other: <a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a>) -&gt; <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h4>
</div><h3 class='impl'><code>impl <a class='trait' href='../../../bitflags/__core/ops/trait.SubAssign.html' title='bitflags::__core::ops::SubAssign'>SubAssign</a>&lt;<a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a>&gt; for <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code><span class="since">1.9.0</span></h3><div class='impl-items'><h4 id='method.sub_assign' class='method'><code>fn <a href='../../../bitflags/__core/ops/trait.SubAssign.html#tymethod.sub_assign' class='fnname'>sub_assign</a>(&amp;mut self, other: <a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a>)</code></h4>
</div><h3 class='impl'><code>impl <a class='trait' href='../../../bitflags/__core/ops/trait.Sub.html' title='bitflags::__core::ops::Sub'>Sub</a>&lt;<a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>&gt; for <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h3><div class='impl-items'><h4 id='associatedtype.Output-2' class='type'><code>type <a href='../../../bitflags/__core/ops/trait.Sub.html#associatedtype.Output' class='type'>Output</a> = <a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a></code></h4>
<h4 id='method.sub-1' class='method'><code>fn <a href='../../../bitflags/__core/ops/trait.Sub.html#tymethod.sub' class='fnname'>sub</a>(self, other: <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>) -&gt; <a class='struct' href='../../../bitflags/__core/time/struct.Duration.html' title='bitflags::__core::time::Duration'>Duration</a></code></h4>
</div><h3 class='impl'><code>impl <a class='trait' href='../../../bitflags/__core/fmt/trait.Debug.html' title='bitflags::__core::fmt::Debug'>Debug</a> for <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h3><div class='impl-items'><h4 id='method.fmt' class='method'><code>fn <a href='../../../bitflags/__core/fmt/trait.Debug.html#tymethod.fmt' class='fnname'>fmt</a>(&amp;self, f: &amp;mut <a class='struct' href='../../../bitflags/__core/fmt/struct.Formatter.html' title='bitflags::__core::fmt::Formatter'>Formatter</a>) -&gt; <a class='enum' href='../../../bitflags/__core/result/enum.Result.html' title='bitflags::__core::result::Result'>Result</a>&lt;<a class='primitive' href='https://doc.rust-lang.org/nightly/bitflags/primitive.tuple.html'>()</a>, <a class='struct' href='../../../bitflags/__core/fmt/struct.Error.html' title='bitflags::__core::fmt::Error'>Error</a>&gt;</code></h4>
</div><h3 id='derived_implementations'>Derived Implementations </h3><h3 class='impl'><code>impl <a class='trait' href='../../../bitflags/__core/cmp/trait.Ord.html' title='bitflags::__core::cmp::Ord'>Ord</a> for <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h3><div class='impl-items'><h4 id='method.cmp' class='method'><code>fn <a href='../../../bitflags/__core/cmp/trait.Ord.html#tymethod.cmp' class='fnname'>cmp</a>(&amp;self, __arg_0: &amp;<a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>) -&gt; <a class='enum' href='../../../bitflags/__core/cmp/enum.Ordering.html' title='bitflags::__core::cmp::Ordering'>Ordering</a></code></h4>
</div><h3 class='impl'><code>impl <a class='trait' href='../../../bitflags/__core/cmp/trait.PartialOrd.html' title='bitflags::__core::cmp::PartialOrd'>PartialOrd</a>&lt;<a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>&gt; for <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h3><div class='impl-items'><h4 id='method.partial_cmp' class='method'><code>fn <a href='../../../bitflags/__core/cmp/trait.PartialOrd.html#tymethod.partial_cmp' class='fnname'>partial_cmp</a>(&amp;self, __arg_0: &amp;<a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>) -&gt; <a class='enum' href='../../../bitflags/__core/option/enum.Option.html' title='bitflags::__core::option::Option'>Option</a>&lt;<a class='enum' href='../../../bitflags/__core/cmp/enum.Ordering.html' title='bitflags::__core::cmp::Ordering'>Ordering</a>&gt;</code></h4>
<h4 id='method.lt' class='method'><code>fn <a href='../../../bitflags/__core/cmp/trait.PartialOrd.html#method.lt' class='fnname'>lt</a>(&amp;self, __arg_0: &amp;<a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>) -&gt; <a class='primitive' href='https://doc.rust-lang.org/nightly/bitflags/primitive.bool.html'>bool</a></code></h4>
<h4 id='method.le' class='method'><code>fn <a href='../../../bitflags/__core/cmp/trait.PartialOrd.html#method.le' class='fnname'>le</a>(&amp;self, __arg_0: &amp;<a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>) -&gt; <a class='primitive' href='https://doc.rust-lang.org/nightly/bitflags/primitive.bool.html'>bool</a></code></h4>
<h4 id='method.gt' class='method'><code>fn <a href='../../../bitflags/__core/cmp/trait.PartialOrd.html#method.gt' class='fnname'>gt</a>(&amp;self, __arg_0: &amp;<a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>) -&gt; <a class='primitive' href='https://doc.rust-lang.org/nightly/bitflags/primitive.bool.html'>bool</a></code></h4>
<h4 id='method.ge' class='method'><code>fn <a href='../../../bitflags/__core/cmp/trait.PartialOrd.html#method.ge' class='fnname'>ge</a>(&amp;self, __arg_0: &amp;<a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>) -&gt; <a class='primitive' href='https://doc.rust-lang.org/nightly/bitflags/primitive.bool.html'>bool</a></code></h4>
</div><h3 class='impl'><code>impl <a class='trait' href='../../../bitflags/__core/cmp/trait.Eq.html' title='bitflags::__core::cmp::Eq'>Eq</a> for <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h3><div class='impl-items'></div><h3 class='impl'><code>impl <a class='trait' href='../../../bitflags/__core/cmp/trait.PartialEq.html' title='bitflags::__core::cmp::PartialEq'>PartialEq</a>&lt;<a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>&gt; for <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h3><div class='impl-items'><h4 id='method.eq' class='method'><code>fn <a href='../../../bitflags/__core/cmp/trait.PartialEq.html#tymethod.eq' class='fnname'>eq</a>(&amp;self, __arg_0: &amp;<a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>) -&gt; <a class='primitive' href='https://doc.rust-lang.org/nightly/bitflags/primitive.bool.html'>bool</a></code></h4>
<h4 id='method.ne' class='method'><code>fn <a href='../../../bitflags/__core/cmp/trait.PartialEq.html#method.ne' class='fnname'>ne</a>(&amp;self, __arg_0: &amp;<a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a>) -&gt; <a class='primitive' href='https://doc.rust-lang.org/nightly/bitflags/primitive.bool.html'>bool</a></code></h4>
</div><h3 class='impl'><code>impl <a class='trait' href='../../../bitflags/__core/clone/trait.Clone.html' title='bitflags::__core::clone::Clone'>Clone</a> for <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h3><div class='impl-items'><h4 id='method.clone' class='method'><code>fn <a href='../../../bitflags/__core/clone/trait.Clone.html#tymethod.clone' class='fnname'>clone</a>(&amp;self) -&gt; <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h4>
<h4 id='method.clone_from' class='method'><code>fn <a href='../../../bitflags/__core/clone/trait.Clone.html#method.clone_from' class='fnname'>clone_from</a>(&amp;mut self, source: &amp;Self)</code><span class="since">1.0.0</span></h4>
</div><h3 class='impl'><code>impl <a class='trait' href='../../../bitflags/__core/marker/trait.Copy.html' title='bitflags::__core::marker::Copy'>Copy</a> for <a class='struct' href='../../../bitflags/__core/time/struct.Instant.html' title='bitflags::__core::time::Instant'>Instant</a></code></h3><div class='impl-items'></div></section>
<section id='search' class="content hidden"></section>
<section class="footer"></section>
<aside id="help" class="hidden">
<div>
<h1 class="hidden">Help</h1>
<div class="shortcuts">
<h2>Keyboard Shortcuts</h2>
<dl>
<dt>?</dt>
<dd>Show this help dialog</dd>
<dt>S</dt>
<dd>Focus the search field</dd>
<dt>&larrb;</dt>
<dd>Move up in search results</dd>
<dt>&rarrb;</dt>
<dd>Move down in search results</dd>
<dt>&#9166;</dt>
<dd>Go to active search result</dd>
</dl>
</div>
<div class="infos">
<h2>Search Tricks</h2>
<p>
Prefix searches with a type followed by a colon (e.g.
<code>fn:</code>) to restrict the search to a given type.
</p>
<p>
Accepted types are: <code>fn</code>, <code>mod</code>,
<code>struct</code>, <code>enum</code>,
<code>trait</code>, <code>type</code>, <code>macro</code>,
and <code>const</code>.
</p>
<p>
Search functions by type signature (e.g.
<code>vec -> usize</code> or <code>* -> vec</code>)
</p>
</div>
</div>
</aside>
<script>
window.rootPath = "../../../";
window.currentCrate = "bitflags";
window.playgroundUrl = "";
</script>
<script src="../../../jquery.js"></script>
<script src="../../../main.js"></script>
<script defer src="../../../search-index.js"></script>
</body>
</html>