rtic/dev/api/rp2040_pac/struct.USBCTRL_REGS.html
2024-10-24 05:57:30 +00:00

65 lines
No EOL
51 KiB
HTML

<!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="USB FS/LS controller device registers"><title>USBCTRL_REGS in rp2040_pac - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-46f98efaafac5295.ttf.woff2,FiraSans-Regular-018c141bf0843ffd.woff2,FiraSans-Medium-8f9a781e4970d388.woff2,SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2,SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-492a78a4a87dcc01.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="rp2040_pac" data-themes="" data-resource-suffix="" data-rustdoc-version="1.82.0 (f6e511eec 2024-10-15)" data-channel="1.82.0" data-search-js="search-a99f1315e7cc5121.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../static.files/storage-118b08c4c78b968e.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-921df33f47b8780c.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-3b12f09e550e0385.css"></noscript><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" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../rp2040_pac/index.html">rp2040_<wbr>pac</a><span class="version">0.6.0</span></h2></div><h2 class="location"><a href="#">USBCTR<wbr>L_<wbr>REGS</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Associated Constants</a></h3><ul class="block associatedconstant"><li><a href="#associatedconstant.PTR">PTR</a></li></ul><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.ptr">ptr</a></li><li><a href="#method.steal">steal</a></li></ul><h3><a href="#deref-methods-RegisterBlock">Methods from Deref&lt;<wbr>Target=<wbr>Register<wbr>Block&gt;</a></h3><ul class="block deref-methods"><li><a href="#method.addr_endp">addr_endp</a></li><li><a href="#method.buff_cpu_should_handle">buff_cpu_should_handle</a></li><li><a href="#method.buff_status">buff_status</a></li><li><a href="#method.ep_abort">ep_abort</a></li><li><a href="#method.ep_abort_done">ep_abort_done</a></li><li><a href="#method.ep_stall_arm">ep_stall_arm</a></li><li><a href="#method.ep_status_stall_nak">ep_status_stall_nak</a></li><li><a href="#method.host_addr_endp">host_addr_endp</a></li><li><a href="#method.host_addr_endp1">host_addr_endp1</a></li><li><a href="#method.host_addr_endp10">host_addr_endp10</a></li><li><a href="#method.host_addr_endp11">host_addr_endp11</a></li><li><a href="#method.host_addr_endp12">host_addr_endp12</a></li><li><a href="#method.host_addr_endp13">host_addr_endp13</a></li><li><a href="#method.host_addr_endp14">host_addr_endp14</a></li><li><a href="#method.host_addr_endp15">host_addr_endp15</a></li><li><a href="#method.host_addr_endp2">host_addr_endp2</a></li><li><a href="#method.host_addr_endp3">host_addr_endp3</a></li><li><a href="#method.host_addr_endp4">host_addr_endp4</a></li><li><a href="#method.host_addr_endp5">host_addr_endp5</a></li><li><a href="#method.host_addr_endp6">host_addr_endp6</a></li><li><a href="#method.host_addr_endp7">host_addr_endp7</a></li><li><a href="#method.host_addr_endp8">host_addr_endp8</a></li><li><a href="#method.host_addr_endp9">host_addr_endp9</a></li><li><a href="#method.host_addr_endp_iter">host_addr_endp_iter</a></li><li><a href="#method.int_ep_ctrl">int_ep_ctrl</a></li><li><a href="#method.inte">inte</a></li><li><a href="#method.intf">intf</a></li><li><a href="#method.intr">intr</a></li><li><a href="#method.ints">ints</a></li><li><a href="#method.main_ctrl">main_ctrl</a></li><li><a href="#method.nak_poll">nak_poll</a></li><li><a href="#method.sie_ctrl">sie_ctrl</a></li><li><a href="#method.sie_status">sie_status</a></li><li><a href="#method.sof_rd">sof_rd</a></li><li><a href="#method.sof_wr">sof_wr</a></li><li><a href="#method.usb_muxing">usb_muxing</a></li><li><a href="#method.usb_pwr">usb_pwr</a></li><li><a href="#method.usbphy_direct">usbphy_direct</a></li><li><a href="#method.usbphy_direct_override">usbphy_direct_override</a></li><li><a href="#method.usbphy_trim">usbphy_trim</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Debug-for-USBCTRL_REGS">Debug</a></li><li><a href="#impl-Deref-for-USBCTRL_REGS">Deref</a></li><li><a href="#impl-Send-for-USBCTRL_REGS">Send</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-Sync-for-USBCTRL_REGS">!Sync</a></li><li><a href="#impl-Freeze-for-USBCTRL_REGS">Freeze</a></li><li><a href="#impl-RefUnwindSafe-for-USBCTRL_REGS">RefUnwindSafe</a></li><li><a href="#impl-Unpin-for-USBCTRL_REGS">Unpin</a></li><li><a href="#impl-UnwindSafe-for-USBCTRL_REGS">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T">Borrow&#60;T&#62;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T">BorrowMut&#60;T&#62;</a></li><li><a href="#impl-From%3CT%3E-for-T">From&#60;T&#62;</a></li><li><a href="#impl-Into%3CU%3E-for-T">Into&#60;U&#62;</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T">TryFrom&#60;U&#62;</a></li><li><a href="#impl-TryInto%3CU%3E-for-T">TryInto&#60;U&#62;</a></li></ul></section><h2><a href="index.html">In crate rp2040_<wbr>pac</a></h2></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">rp2040_pac</a>::<wbr><a class="struct" href="#">USBCTRL_REGS</a><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><span class="out-of-band"><a class="src" href="../src/rp2040_pac/lib.rs.html#2001-2003">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub struct USBCTRL_REGS { <span class="comment">/* private fields */</span> }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>USB FS/LS controller device registers</p>
</div></details><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-USBCTRL_REGS" class="impl"><a class="src rightside" href="../src/rp2040_pac/lib.rs.html#2005-2031">source</a><a href="#impl-USBCTRL_REGS" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.USBCTRL_REGS.html" title="struct rp2040_pac::USBCTRL_REGS">USBCTRL_REGS</a></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedconstant.PTR" class="associatedconstant"><a class="src rightside" href="../src/rp2040_pac/lib.rs.html#2007">source</a><h4 class="code-header">pub const <a href="#associatedconstant.PTR" class="constant">PTR</a>: <a class="primitive" href="https://doc.rust-lang.org/1.82.0/core/primitive.pointer.html">*const </a><a class="struct" href="usbctrl_regs/struct.RegisterBlock.html" title="struct rp2040_pac::usbctrl_regs::RegisterBlock">RegisterBlock</a> = {0x50110000 as *const usbctrl_regs::RegisterBlock}</h4></section></summary><div class="docblock"><p>Pointer to the register block</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.ptr" class="method"><a class="src rightside" href="../src/rp2040_pac/lib.rs.html#2010-2012">source</a><h4 class="code-header">pub const fn <a href="#method.ptr" class="fn">ptr</a>() -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.82.0/core/primitive.pointer.html">*const </a><a class="struct" href="usbctrl_regs/struct.RegisterBlock.html" title="struct rp2040_pac::usbctrl_regs::RegisterBlock">RegisterBlock</a></h4></section></summary><div class="docblock"><p>Return the pointer to the register block</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.steal" class="method"><a class="src rightside" href="../src/rp2040_pac/lib.rs.html#2026-2030">source</a><h4 class="code-header">pub unsafe fn <a href="#method.steal" class="fn">steal</a>() -&gt; Self</h4></section></summary><div class="docblock"><p>Steal an instance of this peripheral</p>
<h5 id="safety"><a class="doc-anchor" href="#safety">§</a>Safety</h5>
<p>Ensure that the new instance of the peripheral cannot be used in a way
that may race with any existing instances, for example by only
accessing read-only or write-only registers, or by consuming the
original peripheral and using critical sections to coordinate
access between multiple new instances.</p>
<p>Additionally, other software such as HALs may rely on only one
peripheral instance existing to ensure memory safety; ensure
no stolen instances are passed to such software.</p>
</div></details></div></details></div><h2 id="deref-methods-RegisterBlock" class="section-header"><span>Methods from <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>&lt;Target = <a class="struct" href="usbctrl_regs/struct.RegisterBlock.html" title="struct rp2040_pac::usbctrl_regs::RegisterBlock">RegisterBlock</a>&gt;</span><a href="#deref-methods-RegisterBlock" class="anchor">§</a></h2><div id="deref-methods-RegisterBlock-1" class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.addr_endp" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#33-35">source</a><h4 class="code-header">pub fn <a href="#method.addr_endp" class="fn">addr_endp</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::ADDR_ENDP">ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x00 - Device address and endpoint control</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#38-40">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp" class="fn">host_addr_endp</a>(&amp;self, n: <a class="primitive" href="https://doc.rust-lang.org/1.82.0/core/primitive.usize.html">usize</a>) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x04..0x40 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp_iter" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#44-46">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp_iter" class="fn">host_addr_endp_iter</a>(&amp;self) -&gt; impl <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>&lt;Item = &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a>&gt;</h4></section></summary><div class="docblock"><p>Iterator for array of:
0x04..0x40 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp1" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#49-51">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp1" class="fn">host_addr_endp1</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x04 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp2" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#54-56">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp2" class="fn">host_addr_endp2</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x08 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp3" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#59-61">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp3" class="fn">host_addr_endp3</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x0c - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp4" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#64-66">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp4" class="fn">host_addr_endp4</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x10 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp5" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#69-71">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp5" class="fn">host_addr_endp5</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x14 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp6" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#74-76">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp6" class="fn">host_addr_endp6</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x18 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp7" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#79-81">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp7" class="fn">host_addr_endp7</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x1c - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp8" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#84-86">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp8" class="fn">host_addr_endp8</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x20 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp9" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#89-91">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp9" class="fn">host_addr_endp9</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x24 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp10" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#94-96">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp10" class="fn">host_addr_endp10</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x28 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp11" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#99-101">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp11" class="fn">host_addr_endp11</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x2c - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp12" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#104-106">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp12" class="fn">host_addr_endp12</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x30 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp13" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#109-111">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp13" class="fn">host_addr_endp13</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x34 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp14" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#114-116">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp14" class="fn">host_addr_endp14</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x38 - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.host_addr_endp15" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#119-121">source</a><h4 class="code-header">pub fn <a href="#method.host_addr_endp15" class="fn">host_addr_endp15</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.HOST_ADDR_ENDP.html" title="type rp2040_pac::usbctrl_regs::HOST_ADDR_ENDP">HOST_ADDR_ENDP</a></h4></section></summary><div class="docblock"><p>0x3c - Interrupt endpoints. Only valid in HOST mode.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.main_ctrl" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#124-126">source</a><h4 class="code-header">pub fn <a href="#method.main_ctrl" class="fn">main_ctrl</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.MAIN_CTRL.html" title="type rp2040_pac::usbctrl_regs::MAIN_CTRL">MAIN_CTRL</a></h4></section></summary><div class="docblock"><p>0x40 - Main control register</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.sof_wr" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#129-131">source</a><h4 class="code-header">pub fn <a href="#method.sof_wr" class="fn">sof_wr</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.SOF_WR.html" title="type rp2040_pac::usbctrl_regs::SOF_WR">SOF_WR</a></h4></section></summary><div class="docblock"><p>0x44 - Set the SOF (Start of Frame) frame number in the host controller. The SOF packet is sent every 1ms and the host will increment the frame number by 1 each time.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.sof_rd" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#134-136">source</a><h4 class="code-header">pub fn <a href="#method.sof_rd" class="fn">sof_rd</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.SOF_RD.html" title="type rp2040_pac::usbctrl_regs::SOF_RD">SOF_RD</a></h4></section></summary><div class="docblock"><p>0x48 - Read the last SOF (Start of Frame) frame number seen. In device mode the last SOF received from the host. In host mode the last SOF sent by the host.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.sie_ctrl" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#139-141">source</a><h4 class="code-header">pub fn <a href="#method.sie_ctrl" class="fn">sie_ctrl</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.SIE_CTRL.html" title="type rp2040_pac::usbctrl_regs::SIE_CTRL">SIE_CTRL</a></h4></section></summary><div class="docblock"><p>0x4c - SIE control register</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.sie_status" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#144-146">source</a><h4 class="code-header">pub fn <a href="#method.sie_status" class="fn">sie_status</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.SIE_STATUS.html" title="type rp2040_pac::usbctrl_regs::SIE_STATUS">SIE_STATUS</a></h4></section></summary><div class="docblock"><p>0x50 - SIE status register</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.int_ep_ctrl" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#149-151">source</a><h4 class="code-header">pub fn <a href="#method.int_ep_ctrl" class="fn">int_ep_ctrl</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.INT_EP_CTRL.html" title="type rp2040_pac::usbctrl_regs::INT_EP_CTRL">INT_EP_CTRL</a></h4></section></summary><div class="docblock"><p>0x54 - interrupt endpoint control register</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.buff_status" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#154-156">source</a><h4 class="code-header">pub fn <a href="#method.buff_status" class="fn">buff_status</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.BUFF_STATUS.html" title="type rp2040_pac::usbctrl_regs::BUFF_STATUS">BUFF_STATUS</a></h4></section></summary><div class="docblock"><p>0x58 - Buffer status register. A bit set here indicates that a buffer has completed on the endpoint (if the buffer interrupt is enabled). It is possible for 2 buffers to be completed, so clearing the buffer status bit may instantly re set it on the next clock cycle.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.buff_cpu_should_handle" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#159-161">source</a><h4 class="code-header">pub fn <a href="#method.buff_cpu_should_handle" class="fn">buff_cpu_should_handle</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.BUFF_CPU_SHOULD_HANDLE.html" title="type rp2040_pac::usbctrl_regs::BUFF_CPU_SHOULD_HANDLE">BUFF_CPU_SHOULD_HANDLE</a></h4></section></summary><div class="docblock"><p>0x5c - Which of the double buffers should be handled. Only valid if using an interrupt per buffer (i.e. not per 2 buffers). Not valid for host interrupt endpoint polling because they are only single buffered.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.ep_abort" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#164-166">source</a><h4 class="code-header">pub fn <a href="#method.ep_abort" class="fn">ep_abort</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.EP_ABORT.html" title="type rp2040_pac::usbctrl_regs::EP_ABORT">EP_ABORT</a></h4></section></summary><div class="docblock"><p>0x60 - Device only: Can be set to ignore the buffer control register for this endpoint in case you would like to revoke a buffer. A NAK will be sent for every access to the endpoint until this bit is cleared. A corresponding bit in <code>EP_ABORT_DONE</code> is set when it is safe to modify the buffer control register.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.ep_abort_done" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#169-171">source</a><h4 class="code-header">pub fn <a href="#method.ep_abort_done" class="fn">ep_abort_done</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.EP_ABORT_DONE.html" title="type rp2040_pac::usbctrl_regs::EP_ABORT_DONE">EP_ABORT_DONE</a></h4></section></summary><div class="docblock"><p>0x64 - Device only: Used in conjunction with <code>EP_ABORT</code>. Set once an endpoint is idle so the programmer knows it is safe to modify the buffer control register.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.ep_stall_arm" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#174-176">source</a><h4 class="code-header">pub fn <a href="#method.ep_stall_arm" class="fn">ep_stall_arm</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.EP_STALL_ARM.html" title="type rp2040_pac::usbctrl_regs::EP_STALL_ARM">EP_STALL_ARM</a></h4></section></summary><div class="docblock"><p>0x68 - Device: this bit must be set in conjunction with the <code>STALL</code> bit in the buffer control register to send a STALL on EP0. The device controller clears these bits when a SETUP packet is received because the USB spec requires that a STALL condition is cleared when a SETUP packet is received.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.nak_poll" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#179-181">source</a><h4 class="code-header">pub fn <a href="#method.nak_poll" class="fn">nak_poll</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.NAK_POLL.html" title="type rp2040_pac::usbctrl_regs::NAK_POLL">NAK_POLL</a></h4></section></summary><div class="docblock"><p>0x6c - Used by the host controller. Sets the wait time in microseconds before trying again if the device replies with a NAK.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.ep_status_stall_nak" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#184-186">source</a><h4 class="code-header">pub fn <a href="#method.ep_status_stall_nak" class="fn">ep_status_stall_nak</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.EP_STATUS_STALL_NAK.html" title="type rp2040_pac::usbctrl_regs::EP_STATUS_STALL_NAK">EP_STATUS_STALL_NAK</a></h4></section></summary><div class="docblock"><p>0x70 - Device: bits are set when the <code>IRQ_ON_NAK</code> or <code>IRQ_ON_STALL</code> bits are set. For EP0 this comes from <code>SIE_CTRL</code>. For all other endpoints it comes from the endpoint control register.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.usb_muxing" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#189-191">source</a><h4 class="code-header">pub fn <a href="#method.usb_muxing" class="fn">usb_muxing</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.USB_MUXING.html" title="type rp2040_pac::usbctrl_regs::USB_MUXING">USB_MUXING</a></h4></section></summary><div class="docblock"><p>0x74 - Where to connect the USB controller. Should be to_phy by default.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.usb_pwr" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#194-196">source</a><h4 class="code-header">pub fn <a href="#method.usb_pwr" class="fn">usb_pwr</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.USB_PWR.html" title="type rp2040_pac::usbctrl_regs::USB_PWR">USB_PWR</a></h4></section></summary><div class="docblock"><p>0x78 - Overrides for the power signals in the event that the VBUS signals are not hooked up to GPIO. Set the value of the override and then the override enable to switch over to the override value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.usbphy_direct" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#199-201">source</a><h4 class="code-header">pub fn <a href="#method.usbphy_direct" class="fn">usbphy_direct</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.USBPHY_DIRECT.html" title="type rp2040_pac::usbctrl_regs::USBPHY_DIRECT">USBPHY_DIRECT</a></h4></section></summary><div class="docblock"><p>0x7c - This register allows for direct control of the USB phy. Use in conjunction with usbphy_direct_override register to enable each override bit.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.usbphy_direct_override" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#204-206">source</a><h4 class="code-header">pub fn <a href="#method.usbphy_direct_override" class="fn">usbphy_direct_override</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.USBPHY_DIRECT_OVERRIDE.html" title="type rp2040_pac::usbctrl_regs::USBPHY_DIRECT_OVERRIDE">USBPHY_DIRECT_OVERRIDE</a></h4></section></summary><div class="docblock"><p>0x80 - Override enable for each control in usbphy_direct</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.usbphy_trim" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#209-211">source</a><h4 class="code-header">pub fn <a href="#method.usbphy_trim" class="fn">usbphy_trim</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.USBPHY_TRIM.html" title="type rp2040_pac::usbctrl_regs::USBPHY_TRIM">USBPHY_TRIM</a></h4></section></summary><div class="docblock"><p>0x84 - Used to adjust trim values of USB phy pull down resistors.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.intr" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#214-216">source</a><h4 class="code-header">pub fn <a href="#method.intr" class="fn">intr</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.INTR.html" title="type rp2040_pac::usbctrl_regs::INTR">INTR</a></h4></section></summary><div class="docblock"><p>0x8c - Raw Interrupts</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.inte" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#219-221">source</a><h4 class="code-header">pub fn <a href="#method.inte" class="fn">inte</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.INTE.html" title="type rp2040_pac::usbctrl_regs::INTE">INTE</a></h4></section></summary><div class="docblock"><p>0x90 - Interrupt Enable</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.intf" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#224-226">source</a><h4 class="code-header">pub fn <a href="#method.intf" class="fn">intf</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.INTF.html" title="type rp2040_pac::usbctrl_regs::INTF">INTF</a></h4></section></summary><div class="docblock"><p>0x94 - Interrupt Force</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.ints" class="method"><a class="src rightside" href="../src/rp2040_pac/usbctrl_regs.rs.html#229-231">source</a><h4 class="code-header">pub fn <a href="#method.ints" class="fn">ints</a>(&amp;self) -&gt; &amp;<a class="type" href="usbctrl_regs/type.INTS.html" title="type rp2040_pac::usbctrl_regs::INTS">INTS</a></h4></section></summary><div class="docblock"><p>0x98 - Interrupt status after masking &amp; forcing</p>
</div></details></div><h2 id="trait-implementations" class="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-Debug-for-USBCTRL_REGS" class="impl"><a class="src rightside" href="../src/rp2040_pac/lib.rs.html#2039-2043">source</a><a href="#impl-Debug-for-USBCTRL_REGS" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.USBCTRL_REGS.html" title="struct rp2040_pac::USBCTRL_REGS">USBCTRL_REGS</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../src/rp2040_pac/lib.rs.html#2040-2042">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.82.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.82.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="type" href="https://doc.rust-lang.org/1.82.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.82.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-Deref-for-USBCTRL_REGS" class="impl"><a class="src rightside" href="../src/rp2040_pac/lib.rs.html#2032-2038">source</a><a href="#impl-Deref-for-USBCTRL_REGS" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a> for <a class="struct" href="struct.USBCTRL_REGS.html" title="struct rp2040_pac::USBCTRL_REGS">USBCTRL_REGS</a></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Target" class="associatedtype trait-impl"><a class="src rightside" href="../src/rp2040_pac/lib.rs.html#2033">source</a><a href="#associatedtype.Target" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.82.0/core/ops/deref/trait.Deref.html#associatedtype.Target" class="associatedtype">Target</a> = <a class="struct" href="usbctrl_regs/struct.RegisterBlock.html" title="struct rp2040_pac::usbctrl_regs::RegisterBlock">RegisterBlock</a></h4></section></summary><div class='docblock'>The resulting type after dereferencing.</div></details><details class="toggle method-toggle" open><summary><section id="method.deref" class="method trait-impl"><a class="src rightside" href="../src/rp2040_pac/lib.rs.html#2035-2037">source</a><a href="#method.deref" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.82.0/core/ops/deref/trait.Deref.html#tymethod.deref" class="fn">deref</a>(&amp;self) -&gt; &amp;Self::<a class="associatedtype" href="https://doc.rust-lang.org/1.82.0/core/ops/deref/trait.Deref.html#associatedtype.Target" title="type core::ops::deref::Deref::Target">Target</a></h4></section></summary><div class='docblock'>Dereferences the value.</div></details></div></details><section id="impl-Send-for-USBCTRL_REGS" class="impl"><a class="src rightside" href="../src/rp2040_pac/lib.rs.html#2004">source</a><a href="#impl-Send-for-USBCTRL_REGS" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.USBCTRL_REGS.html" title="struct rp2040_pac::USBCTRL_REGS">USBCTRL_REGS</a></h3></section></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-Freeze-for-USBCTRL_REGS" class="impl"><a href="#impl-Freeze-for-USBCTRL_REGS" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="struct" href="struct.USBCTRL_REGS.html" title="struct rp2040_pac::USBCTRL_REGS">USBCTRL_REGS</a></h3></section><section id="impl-RefUnwindSafe-for-USBCTRL_REGS" class="impl"><a href="#impl-RefUnwindSafe-for-USBCTRL_REGS" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.USBCTRL_REGS.html" title="struct rp2040_pac::USBCTRL_REGS">USBCTRL_REGS</a></h3></section><section id="impl-Sync-for-USBCTRL_REGS" class="impl"><a href="#impl-Sync-for-USBCTRL_REGS" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/1.82.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.USBCTRL_REGS.html" title="struct rp2040_pac::USBCTRL_REGS">USBCTRL_REGS</a></h3></section><section id="impl-Unpin-for-USBCTRL_REGS" class="impl"><a href="#impl-Unpin-for-USBCTRL_REGS" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.USBCTRL_REGS.html" title="struct rp2040_pac::USBCTRL_REGS">USBCTRL_REGS</a></h3></section><section id="impl-UnwindSafe-for-USBCTRL_REGS" class="impl"><a href="#impl-UnwindSafe-for-USBCTRL_REGS" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.USBCTRL_REGS.html" title="struct rp2040_pac::USBCTRL_REGS">USBCTRL_REGS</a></h3></section></div><h2 id="blanket-implementations" class="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-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/any.rs.html#138">source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.82.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/any.rs.html#139">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.82.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.82.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.82.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-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/borrow.rs.html#209">source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.82.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/borrow.rs.html#211">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.82.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.82.0/core/primitive.reference.html">&amp;T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.82.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-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/borrow.rs.html#217">source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.82.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/borrow.rs.html#218">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.82.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.82.0/core/primitive.reference.html">&amp;mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.82.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-From%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/convert/mod.rs.html#765">source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.82.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" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/convert/mod.rs.html#768">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.82.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-Into%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/convert/mod.rs.html#748-750">source</a><a href="#impl-Into%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/convert/mod.rs.html#758">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.82.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.82.0/core/convert/trait.From.html" title="trait core::convert::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-TryFrom%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/convert/mod.rs.html#805-807">source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/convert/mod.rs.html#809">source</a><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.82.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.82.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" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/convert/mod.rs.html#812">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.82.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.82.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.82.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.82.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-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/convert/mod.rs.html#790-792">source</a><a href="#impl-TryInto%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.82.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/convert/mod.rs.html#794">source</a><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.82.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.82.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.82.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"><a class="src rightside" href="https://doc.rust-lang.org/1.82.0/src/core/convert/mod.rs.html#797">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.82.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.82.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.82.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.82.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></div></section></div></main></body></html>