mango-v4/rs/doc/mango_v4/state/struct.PerpPosition.html

120 lines
114 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 `PerpPosition` struct in crate `mango_v4`."><meta name="keywords" content="rust, rustlang, rust-lang, PerpPosition"><title>PerpPosition in mango_v4::state - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" href="../../normalize.css"><link rel="stylesheet" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" href="../../ayu.css" disabled><link rel="stylesheet" href="../../dark.css" disabled><link rel="stylesheet" href="../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../storage.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../main.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../favicon.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button><a class="sidebar-logo" href="../../mango_v4/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></div></a><h2 class="location"></h2></nav><nav class="sidebar"><a class="sidebar-logo" href="../../mango_v4/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></div></a><h2 class="location"><a href="#">PerpPosition</a></h2><div class="sidebar-elems"><section><div class="block"><h3 class="sidebar-title"><a href="#fields">Fields</a></h3><ul><li><a href="#structfield.asks_base_lots">asks_base_lots</a></li><li><a href="#structfield.avg_entry_price_per_base_lot">avg_entry_price_per_base_lot</a></li><li><a href="#structfield.base_position_lots">base_position_lots</a></li><li><a href="#structfield.bids_base_lots">bids_base_lots</a></li><li><a href="#structfield.cumulative_long_funding">cumulative_long_funding</a></li><li><a href="#structfield.cumulative_short_funding">cumulative_short_funding</a></li><li><a href="#structfield.long_settled_funding">long_settled_funding</a></li><li><a href="#structfield.maker_volume">maker_volume</a></li><li><a href="#structfield.market_index">market_index</a></li><li><a href="#structfield.padding">padding</a></li><li><a href="#structfield.perp_spot_transfers">perp_spot_transfers</a></li><li><a href="#structfield.quote_position_native">quote_position_native</a></li><li><a href="#structfield.quote_running_native">quote_running_native</a></li><li><a href="#structfield.realized_other_pnl_native">realized_other_pnl_native</a></li><li><a href="#structfield.realized_pnl_for_position_native">realized_pnl_for_position_native</a></li><li><a href="#structfield.realized_trade_pnl_native">realized_trade_pnl_native</a></li><li><a href="#structfield.reserved">reserved</a></li><li><a href="#structfield.settle_pnl_limit_realized_trade">settle_pnl_limit_realized_trade</a></li><li><a href="#structfield.settle_pnl_limit_settled_in_current_window_native">settle_pnl_limit_settled_in_current_window_native</a></li><li><a href="#structfield.settle_pnl_limit_window">settle_pnl_limit_window</a></li><li><a href="#structfield.short_settled_funding">short_settled_funding</a></li><li><a href="#structfield.taker_base_lots">taker_base_lots</a></li><li><a href="#structfield.taker_quote_lots">taker_quote_lots</a></li><li><a href="#structfield.taker_volume">taker_volume</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#implementations">Methods</a></h3><ul><li><a href="#method.add_taker_trade">add_taker_trade</a></li><li><a href="#method.apply_pnl_settle_limit">apply_pnl_settle_limit</a></li><li><a href="#method.available_settle_limit">available_settle_limit</a></li><li><a href="#method.avg_entry_price">avg_entry_price</a></li><li><a href="#method.base_position_lots">base_position_lots</a></li><li><a href="#method.base_position_native">base_position_native</a></li><li><a href="#method.break_even_price">break_even_price</a></li><li><a href="#method.effective_base_position_lots">effective_base_position_lots</a></li><li><a href="#method.has_open_orders">has_open_orders</a></li><li><a href="#method.has_open_orders_or_fills">has_open_orders_or_fills</a></li><li><a href="#method.has_open_taker_fills">has_open_taker_fills</a></li><li><a href="#method.is_active">is_active</a></li><li><a href="#method.is_active_for_market">is_active_for_market</a></li><li><a href="#method.quote_position_native">quote_position_native</a></li><li><a href="#method.record_liquidation_pnl_takeover">record_liquidation_pnl_takeover</a></li><li><a href="#method.record_liquidation_quote_change">record_liquidation_quote_change</a></li><li><a href="#method.record_settle">record_settle</a></li><li><a href="#method.record_trade">record_trade</a></li><li><a href="#method.record_trading_fee">record_trading_fee</a></li><li><a href="#method.remove_taker_trade">remove_taker_trade</a></li><li><a href="#method.settle_funding">settle_funding</a></li><li><a href="#method.settle_limit">settle_limit</a></li><li><a href="#method.unsettled_funding">unsettled_funding</a></li><li><a href="#method.unsettled_pnl">unsettled_pnl</a></li><li><a href="#method.update_settle_limit">update_settle_limit</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#trait-implementations">Trait Implementations</a></h3><ul><li><a href="#impl-BorshDeserialize-for-PerpPosition">BorshDeserialize</a></li><li><a href="#impl-BorshSerialize-for-PerpPosition">BorshSerialize</a></li><li><a href="#impl-Clone-for-PerpPosition">Clone</a></li><li><a href="#impl-Copy-for-PerpPosition">Copy</a></li><li><a href="#impl-Debug-for-PerpPosition">Debug</a></li><li><a href="#impl-Default-for-PerpPosition">Default</a></li><li><a href="#impl-Pod-for-PerpPosition">Pod</a></li><li><a href="#impl-Zeroable-for-PerpPosition">Zeroable</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul><li><a href="#impl-RefUnwindSafe-for-PerpPosition">RefUnwindSafe</a></li><li><a href="#impl-Send-for-PerpPosition">Send</a></li><li><a href="#impl-Sync-for-PerpPosition">Sync</a></li><li><a href="#impl-Unpin-for-PerpPosition">Unpin</a></li><li><a href="#impl-UnwindSafe-for-PerpPosition">UnwindSafe</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><ul><li><a href="#impl-Any-for-PerpPosition">Any</a></li><li><a href="#impl-AnyBitPattern-for-PerpPosition">AnyBitPattern</a></li><li><a href="#impl-Az-for-PerpPosition">Az</a></li><li><a href="#impl-Borrow%3CT%3E-for-PerpPosition">Borrow&lt;T&gt;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-PerpPosition">BorrowMut&lt;T&gt;</a></li><li><a href="#impl-CastFrom%3CSrc%3E-for-PerpPosition">CastFrom&lt;Src&gt;</a></li><li><a href="#impl-CheckedAs-for-PerpPosition">CheckedAs</a></li><li><a href="#impl-CheckedBitPattern-for-PerpPosition">CheckedBitPattern</a></li><li><a href="#impl-CheckedCastFrom%3CSrc%3E-for-PerpPosition">CheckedCastFrom&lt;Src&gt;</a></li><li><a href="#impl-DynClone-for-PerpPosition">DynClone</a></li><li><a href="#impl-From%3CT%3E-for-PerpPosition">From&lt;T&gt;</a></li><li><a href="#impl-Instrument-for-PerpPosition">Instrument</a></li><li><a href="#impl-Into%3CU%3E-for-PerpPosition">Into&lt;U&gt;</a></li><li><a href="#impl-LosslessTryInto%3CDst%3E-for-PerpPosition">LosslessTryInto&lt;Dst&gt;</a></li><li><a href="#impl-LossyInto%3CDst%3E-for-PerpPosition">LossyInto&lt;Dst&gt;</a></li><li><a href="#impl-NoUninit-for-PerpPosition">NoUninit</a></li><li><a href="#impl-OverflowingAs-for-PerpPosition">OverflowingAs</a></li><li><a href="#impl-OverflowingCastFrom%3CSrc%3E-for-PerpPosition">OverflowingCastFrom&lt;Src&gt;</a></li><li><a href="#impl-Pointable-for-PerpPosition">Pointable</a></li><li><a href="#impl-Same%3CT%3E-for-PerpPosition">Same&lt;T&gt;</a></li><li><a href="#impl-SaturatingAs-for-PerpPosition">SaturatingAs</a></li><li><a href="#impl-SaturatingCastFrom%3CSrc%3E-for-PerpPosition">SaturatingCastFrom&lt;Src&gt;</a></li><li><a href="#impl-ToOwned-for-PerpPosition">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-PerpPosition">TryFrom&lt;U&gt;</a></li><li><a href="#impl-TryInto%3CU%3E-for-PerpPosition">TryInto&lt;U&gt;</a></li><li><a href="#impl-UnwrappedAs-for-PerpPosition">UnwrappedAs</a></li><li><a href="#impl-UnwrappedCastFrom%3CSrc%3E-for-PerpPosition">UnwrappedCastFrom&lt;Src&gt;</a></li><li><a href="#impl-VZip%3CV%3E-for-PerpPosition">VZip&lt;V&gt;</a></li><li><a href="#impl-WithSubscriber-for-PerpPosition">WithSubscriber</a></li><li><a href="#impl-WrappingAs-for-PerpPosition">WrappingAs</a></li><li><a href="#impl-WrappingCastFrom%3CSrc%3E-for-PerpPosition">WrappingCastFrom&lt;Src&gt;</a></li></ul></div></section><h2 class="location"><a href="index.html">In mango_v4::state</a></h2></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../mango_v4/index.html"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></a><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><button type="button">?</button></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../wheel.svg"></a></div></div></form></nav></div><section id="main-content" class="content"><div class="main-heading"><h1 class="fqn"><span class="in-band">Struct <a href="../index.html">mango_v4</a>::<wbr><a href="index.html">state</a>::<wbr><a class="struct" href="#">PerpPosition</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../../src/mango_v4/state/mango_account_components.rs.html#163-268">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div><div class="docblock item-decl"><pre class="rust struct"><code><div class="code-attribute">#[repr(C)]</div>pub struct PerpPosition {<details class="rustdoc-toggle type-contents-toggle"><summary class="hideme"><span>Show 24 fields</span></summary>
pub market_index: <a class="type" href="type.PerpMarketIndex.html" title="type mango_v4::state::PerpMarketIndex">PerpMarketIndex</a>,
pub padding: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">[</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">; 2]</a>,
pub settle_pnl_limit_window: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u32.html">u32</a>,
pub settle_pnl_limit_settled_in_current_window_native: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>,
pub base_position_lots: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>,
pub quote_position_native: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
pub quote_running_native: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>,
pub long_settled_funding: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
pub short_settled_funding: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
pub bids_base_lots: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>,
pub asks_base_lots: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>,
pub taker_base_lots: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>,
pub taker_quote_lots: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>,
pub cumulative_long_funding: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a>,
pub cumulative_short_funding: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a>,
pub maker_volume: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u64.html">u64</a>,
pub taker_volume: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u64.html">u64</a>,
pub perp_spot_transfers: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>,
pub avg_entry_price_per_base_lot: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a>,
pub realized_trade_pnl_native: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
pub realized_other_pnl_native: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
pub settle_pnl_limit_realized_trade: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>,
pub realized_pnl_for_position_native: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
pub reserved: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">[</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">; 88]</a>,
</details>}</code></pre></div><h2 id="fields" class="fields small-section-header">Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.market_index" class="structfield small-section-header"><a href="#structfield.market_index" class="anchor field"></a><code>market_index: <a class="type" href="type.PerpMarketIndex.html" title="type mango_v4::state::PerpMarketIndex">PerpMarketIndex</a></code></span><span id="structfield.padding" class="structfield small-section-header"><a href="#structfield.padding" class="anchor field"></a><code>padding: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">[</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">; 2]</a></code></span><span id="structfield.settle_pnl_limit_window" class="structfield small-section-header"><a href="#structfield.settle_pnl_limit_window" class="anchor field"></a><code>settle_pnl_limit_window: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u32.html">u32</a></code></span><div class="docblock"><p>Index of the current settle pnl limit window</p>
</div><span id="structfield.settle_pnl_limit_settled_in_current_window_native" class="structfield small-section-header"><a href="#structfield.settle_pnl_limit_settled_in_current_window_native" class="anchor field"></a><code>settle_pnl_limit_settled_in_current_window_native: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a></code></span><div class="docblock"><p>Amount of realized trade pnl and unrealized pnl that was already settled this window.</p>
<p>Will be negative when negative pnl was settled.</p>
<p>Note that this will be adjusted for bookkeeping reasons when the realized_trade settle
limitchanges and is not useable for actually tracking how much pnl was settled
on balance.</p>
</div><span id="structfield.base_position_lots" class="structfield small-section-header"><a href="#structfield.base_position_lots" class="anchor field"></a><code>base_position_lots: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a></code></span><div class="docblock"><p>Active position size, measured in base lots</p>
</div><span id="structfield.quote_position_native" class="structfield small-section-header"><a href="#structfield.quote_position_native" class="anchor field"></a><code>quote_position_native: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a></code></span><div class="docblock"><p>Active position in quote (conversation rate is that of the time the order was settled)
measured in native quote</p>
</div><span id="structfield.quote_running_native" class="structfield small-section-header"><a href="#structfield.quote_running_native" class="anchor field"></a><code>quote_running_native: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a></code></span><div class="docblock"><p>Tracks what the position is to calculate average entry &amp; break even price</p>
</div><span id="structfield.long_settled_funding" class="structfield small-section-header"><a href="#structfield.long_settled_funding" class="anchor field"></a><code>long_settled_funding: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a></code></span><div class="docblock"><p>Already settled long funding</p>
</div><span id="structfield.short_settled_funding" class="structfield small-section-header"><a href="#structfield.short_settled_funding" class="anchor field"></a><code>short_settled_funding: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a></code></span><div class="docblock"><p>Already settled short funding</p>
</div><span id="structfield.bids_base_lots" class="structfield small-section-header"><a href="#structfield.bids_base_lots" class="anchor field"></a><code>bids_base_lots: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a></code></span><div class="docblock"><p>Base lots in open bids</p>
</div><span id="structfield.asks_base_lots" class="structfield small-section-header"><a href="#structfield.asks_base_lots" class="anchor field"></a><code>asks_base_lots: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a></code></span><div class="docblock"><p>Base lots in open asks</p>
</div><span id="structfield.taker_base_lots" class="structfield small-section-header"><a href="#structfield.taker_base_lots" class="anchor field"></a><code>taker_base_lots: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a></code></span><div class="docblock"><p>Amount of base lots on the EventQueue waiting to be processed</p>
</div><span id="structfield.taker_quote_lots" class="structfield small-section-header"><a href="#structfield.taker_quote_lots" class="anchor field"></a><code>taker_quote_lots: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a></code></span><div class="docblock"><p>Amount of quote lots on the EventQueue waiting to be processed</p>
</div><span id="structfield.cumulative_long_funding" class="structfield small-section-header"><a href="#structfield.cumulative_long_funding" class="anchor field"></a><code>cumulative_long_funding: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a></code></span><div class="docblock"><p>Cumulative long funding in quote native units.
If the user paid $1 in funding for a long position, this would be 1e6.
Beware of the sign!</p>
<p>(Display only)</p>
</div><span id="structfield.cumulative_short_funding" class="structfield small-section-header"><a href="#structfield.cumulative_short_funding" class="anchor field"></a><code>cumulative_short_funding: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a></code></span><div class="docblock"><p>Cumulative short funding in quote native units
If the user paid $1 in funding for a short position, this would be -1e6.</p>
<p>(Display only)</p>
</div><span id="structfield.maker_volume" class="structfield small-section-header"><a href="#structfield.maker_volume" class="anchor field"></a><code>maker_volume: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u64.html">u64</a></code></span><div class="docblock"><p>Cumulative maker volume in quote native units</p>
<p>(Display only)</p>
</div><span id="structfield.taker_volume" class="structfield small-section-header"><a href="#structfield.taker_volume" class="anchor field"></a><code>taker_volume: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u64.html">u64</a></code></span><div class="docblock"><p>Cumulative taker volume in quote native units</p>
<p>(Display only)</p>
</div><span id="structfield.perp_spot_transfers" class="structfield small-section-header"><a href="#structfield.perp_spot_transfers" class="anchor field"></a><code>perp_spot_transfers: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a></code></span><div class="docblock"><p>Cumulative number of quote native units transfered from the perp position
to the settle token spot position.</p>
<p>For example, if the user settled $1 of positive pnl into their USDC spot
position, this would be 1e6.</p>
<p>(Display only)</p>
</div><span id="structfield.avg_entry_price_per_base_lot" class="structfield small-section-header"><a href="#structfield.avg_entry_price_per_base_lot" class="anchor field"></a><code>avg_entry_price_per_base_lot: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a></code></span><div class="docblock"><p>The native average entry price for the base lots of the current position.
Reset to 0 when the base position reaches or crosses 0.</p>
</div><span id="structfield.realized_trade_pnl_native" class="structfield small-section-header"><a href="#structfield.realized_trade_pnl_native" class="anchor field"></a><code>realized_trade_pnl_native: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a></code></span><div class="docblock"><p>Amount of pnl that was realized by bringing the base position closer to 0.</p>
<p>The settlement of this type of pnl is limited by settle_pnl_limit_realized_trade.
Settling pnl reduces this value once other_pnl below is exhausted.</p>
</div><span id="structfield.realized_other_pnl_native" class="structfield small-section-header"><a href="#structfield.realized_other_pnl_native" class="anchor field"></a><code>realized_other_pnl_native: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a></code></span><div class="docblock"><p>Amount of pnl realized from fees, funding and liquidation.</p>
<p>This type of realized pnl is always settleable.
Settling pnl reduces this value first.</p>
</div><span id="structfield.settle_pnl_limit_realized_trade" class="structfield small-section-header"><a href="#structfield.settle_pnl_limit_realized_trade" class="anchor field"></a><code>settle_pnl_limit_realized_trade: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a></code></span><div class="docblock"><p>Settle limit contribution from realized pnl.</p>
<p>Every time pnl is realized, this is increased by a fraction of the stable
value of the realization. It magnitude decreases when realized pnl drops below its value.</p>
</div><span id="structfield.realized_pnl_for_position_native" class="structfield small-section-header"><a href="#structfield.realized_pnl_for_position_native" class="anchor field"></a><code>realized_pnl_for_position_native: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a></code></span><div class="docblock"><p>Trade pnl, fees, funding that were added over the current positions lifetime.</p>
<p>Reset when the position changes sign or goes to zero.
Not decreased by settling.</p>
<p>This is tracked for display purposes: this value plus the difference between entry
price and current price of the base position is the overall pnl.</p>
</div><span id="structfield.reserved" class="structfield small-section-header"><a href="#structfield.reserved" class="anchor field"></a><code>reserved: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">[</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">; 88]</a></code></span><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><div id="implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#307-782">source</a><a href="#impl-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.add_taker_trade" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#309-320">source</a><h4 class="code-header">pub fn <a href="#method.add_taker_trade" class="fnname">add_taker_trade</a>(&amp;mut self, side: <a class="enum" href="enum.Side.html" title="enum mango_v4::state::Side">Side</a>, base_lots: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>, quote_lots: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>)</h4></section></summary><div class="docblock"><p>Add taker trade after it has been matched but before it has been process on EventQueue</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.remove_taker_trade" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#322-325">source</a><h4 class="code-header">pub fn <a href="#method.remove_taker_trade" class="fnname">remove_taker_trade</a>(&amp;mut self, base_change: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>, quote_change: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>)</h4></section></summary><div class="docblock"><p>Remove taker trade after it has been processed on EventQueue</p>
</div></details><section id="method.is_active" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#327-329">source</a><h4 class="code-header">pub fn <a href="#method.is_active" class="fnname">is_active</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.bool.html">bool</a></h4></section><section id="method.is_active_for_market" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#331-333">source</a><h4 class="code-header">pub fn <a href="#method.is_active_for_market" class="fnname">is_active_for_market</a>(&amp;self, market_index: <a class="type" href="type.PerpMarketIndex.html" title="type mango_v4::state::PerpMarketIndex">PerpMarketIndex</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.bool.html">bool</a></h4></section><section id="method.base_position_native" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#336-338">source</a><h4 class="code-header">pub fn <a href="#method.base_position_native" class="fnname">base_position_native</a>(&amp;self, market: &amp;<a class="struct" href="struct.PerpMarket.html" title="struct mango_v4::state::PerpMarket">PerpMarket</a>) -&gt; <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a></h4></section><section id="method.base_position_lots" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#340-342">source</a><h4 class="code-header">pub fn <a href="#method.base_position_lots" class="fnname">base_position_lots</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a></h4></section><section id="method.effective_base_position_lots" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#345-347">source</a><h4 class="code-header">pub fn <a href="#method.effective_base_position_lots" class="fnname">effective_base_position_lots</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a></h4></section><section id="method.quote_position_native" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#349-351">source</a><h4 class="code-header">pub fn <a href="#method.quote_position_native" class="fnname">quote_position_native</a>(&amp;self) -&gt; <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a></h4></section><details class="rustdoc-toggle method-toggle" open><summary><section id="method.unsettled_funding" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#361-373">source</a><h4 class="code-header">pub fn <a href="#method.unsettled_funding" class="fnname">unsettled_funding</a>(&amp;self, perp_market: &amp;<a class="struct" href="struct.PerpMarket.html" title="struct mango_v4::state::PerpMarket">PerpMarket</a>) -&gt; <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a></h4></section></summary><div class="docblock"><p>The amount of funding this account still needs to pay, in native quote</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.settle_funding" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#376-390">source</a><h4 class="code-header">pub fn <a href="#method.settle_funding" class="fnname">settle_funding</a>(&amp;mut self, perp_market: &amp;<a class="struct" href="struct.PerpMarket.html" title="struct mango_v4::state::PerpMarket">PerpMarket</a>)</h4></section></summary><div class="docblock"><p>Move unrealized funding payments into the quote_position</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.record_trade" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#574-584">source</a><h4 class="code-header">pub fn <a href="#method.record_trade" class="fnname">record_trade</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self,<br>&nbsp;&nbsp;&nbsp;&nbsp;perp_market: &amp;mut <a class="struct" href="struct.PerpMarket.html" title="struct mango_v4::state::PerpMarket">PerpMarket</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;base_change: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;quote_change_native: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a><br>)</h4></section></summary><div class="docblock"><p>Change the base and quote positions as the result of a trade</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.has_open_orders" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#594-596">source</a><h4 class="code-header">pub fn <a href="#method.has_open_orders" class="fnname">has_open_orders</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Does the user have any orders on the book?</p>
<p>Note that its possible they were matched already: This only becomes
false when the fill event is processed or the orders are cancelled.</p>
</div></details><section id="method.has_open_taker_fills" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#599-601">source</a><h4 class="code-header">pub fn <a href="#method.has_open_taker_fills" class="fnname">has_open_taker_fills</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.bool.html">bool</a></h4></section><details class="rustdoc-toggle method-toggle" open><summary><section id="method.has_open_orders_or_fills" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#604-606">source</a><h4 class="code-header">pub fn <a href="#method.has_open_orders_or_fills" class="fnname">has_open_orders_or_fills</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Are there any open orders or fills that havent been processed yet?</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.avg_entry_price" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#609-612">source</a><h4 class="code-header">pub fn <a href="#method.avg_entry_price" class="fnname">avg_entry_price</a>(&amp;self, market: &amp;<a class="struct" href="struct.PerpMarket.html" title="struct mango_v4::state::PerpMarket">PerpMarket</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a></h4></section></summary><div class="docblock"><p>Calculate the average entry price of the position, in native/native units</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.break_even_price" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#615-622">source</a><h4 class="code-header">pub fn <a href="#method.break_even_price" class="fnname">break_even_price</a>(&amp;self, market: &amp;<a class="struct" href="struct.PerpMarket.html" title="struct mango_v4::state::PerpMarket">PerpMarket</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a></h4></section></summary><div class="docblock"><p>Calculate the break even price of the position, in native/native units</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.unsettled_pnl" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#625-630">source</a><h4 class="code-header">pub fn <a href="#method.unsettled_pnl" class="fnname">unsettled_pnl</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;self,<br>&nbsp;&nbsp;&nbsp;&nbsp;perp_market: &amp;<a class="struct" href="struct.PerpMarket.html" title="struct mango_v4::state::PerpMarket">PerpMarket</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;price: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a><br>) -&gt; Result&lt;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>&gt;</h4></section></summary><div class="docblock"><p>Calculate the PnL of the position for a given price</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.update_settle_limit" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#634-645">source</a><h4 class="code-header">pub fn <a href="#method.update_settle_limit" class="fnname">update_settle_limit</a>(&amp;mut self, market: &amp;<a class="struct" href="struct.PerpMarket.html" title="struct mango_v4::state::PerpMarket">PerpMarket</a>, now_ts: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u64.html">u64</a>)</h4></section></summary><div class="docblock"><p>Updates the perp pnl limit time windowing, resetting the amount
of used settle-pnl budget if necessary</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.settle_limit" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#656-685">source</a><h4 class="code-header">pub fn <a href="#method.settle_limit" class="fnname">settle_limit</a>(&amp;self, market: &amp;<a class="struct" href="struct.PerpMarket.html" title="struct mango_v4::state::PerpMarket">PerpMarket</a>) -&gt; (<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>, <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>)</h4></section></summary><div class="docblock"><p>Returns the (min_pnl, max_pnl) range of quote-native pnl that can be settled this window.</p>
<p>It contains contributions from three factors:</p>
<ul>
<li>a fraction of the base position stable value, which gives settlement limit
equally in both directions</li>
<li>the stored realized trade settle limit, which adds an extra settlement allowance
in a single direction</li>
<li>the stored realized other settle limit, which adds an extra settlement allowance
in a single direction</li>
</ul>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.available_settle_limit" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#692-705">source</a><h4 class="code-header">pub fn <a href="#method.available_settle_limit" class="fnname">available_settle_limit</a>(&amp;self, market: &amp;<a class="struct" href="struct.PerpMarket.html" title="struct mango_v4::state::PerpMarket">PerpMarket</a>) -&gt; (<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>, <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>)</h4></section></summary><div class="docblock"><p>Returns the (min_pnl, max_pnl) range of quote-native pnl that may still be settled
this settle window.</p>
<p>The available settle limit is the settle_limit() adjusted for the amount of limit
that was already used up this window.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.apply_pnl_settle_limit" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#708-719">source</a><h4 class="code-header">pub fn <a href="#method.apply_pnl_settle_limit" class="fnname">apply_pnl_settle_limit</a>(&amp;self, market: &amp;<a class="struct" href="struct.PerpMarket.html" title="struct mango_v4::state::PerpMarket">PerpMarket</a>, pnl: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>) -&gt; <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a></h4></section></summary><div class="docblock"><p>Given some pnl, applies the pnl settle limit and returns the reduced pnl.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.record_settle" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#724-761">source</a><h4 class="code-header">pub fn <a href="#method.record_settle" class="fnname">record_settle</a>(&amp;mut self, settled_pnl: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>)</h4></section></summary><div class="docblock"><p>Update the perp position for pnl settlement</p>
<p>If <code>pnl</code> is positive, then that is settled away, deducting from the quote position.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.record_trading_fee" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#764-768">source</a><h4 class="code-header">pub fn <a href="#method.record_trading_fee" class="fnname">record_trading_fee</a>(&amp;mut self, fee: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>)</h4></section></summary><div class="docblock"><p>Update perp position for a maker/taker fee payment</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.record_liquidation_quote_change" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#771-774">source</a><h4 class="code-header">pub fn <a href="#method.record_liquidation_quote_change" class="fnname">record_liquidation_quote_change</a>(&amp;mut self, change: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>)</h4></section></summary><div class="docblock"><p>Adds immediately-settleable realized pnl when a liqor takes over pnl during liquidation</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.record_liquidation_pnl_takeover" class="method has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#777-781">source</a><h4 class="code-header">pub fn <a href="#method.record_liquidation_pnl_takeover" class="fnname">record_liquidation_pnl_takeover</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self,<br>&nbsp;&nbsp;&nbsp;&nbsp;change: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;recurring_limit: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a><br>)</h4></section></summary><div class="docblock"><p>Adds to the quote position and adds a recurring (“realized trade”) settle limit</p>
</div></details></div></details></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-BorshDeserialize-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#161">source</a><a href="#impl-BorshDeserialize-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl BorshDeserialize for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a><span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="type.PerpMarketIndex.html" title="type mango_v4::state::PerpMarketIndex">PerpMarketIndex</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">[</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">; 2]</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u32.html">u32</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u64.html">u64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u64.html">u64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>: BorshDeserialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">[</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">; 88]</a>: BorshDeserialize,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.deserialize" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#161">source</a><a href="#method.deserialize" class="anchor"></a><h4 class="code-header">fn <a class="fnname">deserialize</a>(buf: &amp;mut &amp;[<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u8.html">u8</a>]) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.65.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="struct" href="https://doc.rust-lang.org/1.65.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Deserializes this instance from a given slice of bytes.
Updates the buffer to point at the remaining bytes. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_from_slice" class="method trait-impl has-srclink"><a href="#method.try_from_slice" class="anchor"></a><h4 class="code-header">fn <a class="fnname">try_from_slice</a>(v: &amp;[<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u8.html">u8</a>]) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.65.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self, <a class="struct" href="https://doc.rust-lang.org/1.65.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Deserialize this instance from a slice of bytes.</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-BorshSerialize-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#161">source</a><a href="#impl-BorshSerialize-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl BorshSerialize for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a><span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="type.PerpMarketIndex.html" title="type mango_v4::state::PerpMarketIndex">PerpMarketIndex</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">[</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">; 2]</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u32.html">u32</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u64.html">u64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u64.html">u64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.f64.html">f64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.i64.html">i64</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>: BorshSerialize,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">[</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.array.html">; 88]</a>: BorshSerialize,</span></h3></section></summary><div class="impl-items"><section id="method.serialize" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#161">source</a><a href="#method.serialize" class="anchor"></a><h4 class="code-header">fn <a class="fnname">serialize</a>&lt;W:&nbsp;<a class="trait" href="https://doc.rust-lang.org/1.65.0/std/io/trait.Write.html" title="trait std::io::Write">Write</a>&gt;(&amp;self, writer: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.reference.html">&amp;mut </a>W) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.65.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/1.65.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>&gt;</h4></section><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_to_vec" class="method trait-impl has-srclink"><a href="#method.try_to_vec" class="anchor"></a><h4 class="code-header">fn <a class="fnname">try_to_vec</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.65.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.65.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.u8.html">u8</a>, <a class="struct" href="https://doc.rust-lang.org/1.65.0/alloc/alloc/struct.Global.html" title="struct alloc::alloc::Global">Global</a>&gt;, <a class="struct" href="https://doc.rust-lang.org/1.65.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Serialize this instance into a vector of bytes.</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Clone-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#160">source</a><a href="#impl-Clone-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.65.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#160">source</a><a href="#method.clone" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.65.0/core/clone/trait.Clone.html#tymethod.clone" class="fnname">clone</a>(&amp;self) -&gt; <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.65.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.65.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.65.0/core/clone/trait.Clone.html#method.clone_from" class="fnname">clone_from</a>(&amp;mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.65.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.65.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Debug-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#160">source</a><a href="#impl-Debug-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.65.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#160">source</a><a href="#method.fmt" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.65.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fnname">fmt</a>(&amp;self, __f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.65.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.65.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.65.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Default-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#276-305">source</a><a href="#impl-Default-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.65.0/core/default/trait.Default.html" title="trait core::default::Default">Default</a> for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.default" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#277-304">source</a><a href="#method.default" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.65.0/core/default/trait.Default.html#tymethod.default" class="fnname">default</a>() -&gt; Self</h4></section></summary><div class='docblock'>Returns the “default value” for a type. <a href="https://doc.rust-lang.org/1.65.0/core/default/trait.Default.html#tymethod.default">Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Zeroable-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#161">source</a><a href="#impl-Zeroable-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl Zeroable for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.zeroed" class="method trait-impl has-srclink"><a href="#method.zeroed" class="anchor"></a><h4 class="code-header">fn <a class="fnname">zeroed</a>() -&gt; Self</h4></section></summary><div class='docblock'>Calls <a href="https://doc.rust-lang.org/1.65.0/core/mem/fn.zeroed.html"><code>zeroed</code></a>. <a>Read more</a></div></details></div></details><section id="impl-Copy-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#160">source</a><a href="#impl-Copy-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.65.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a></h3></section><section id="impl-Pod-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="../../src/mango_v4/state/mango_account_components.rs.html#161">source</a><a href="#impl-Pod-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl Pod for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</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-PerpPosition" class="impl has-srclink"><a href="#impl-RefUnwindSafe-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.65.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a></h3></section><section id="impl-Send-for-PerpPosition" class="impl has-srclink"><a href="#impl-Send-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.65.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a></h3></section><section id="impl-Sync-for-PerpPosition" class="impl has-srclink"><a href="#impl-Sync-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.65.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a></h3></section><section id="impl-Unpin-for-PerpPosition" class="impl has-srclink"><a href="#impl-Unpin-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.65.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a></h3></section><section id="impl-UnwindSafe-for-PerpPosition" class="impl has-srclink"><a href="#impl-UnwindSafe-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.65.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Any-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.65.0/src/core/any.rs.html#200">source</a><a href="#impl-Any-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.65.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.65.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.65.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.65.0/core/any/trait.Any.html#tymethod.type_id" class="fnname">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.65.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.65.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Az-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#599">source</a><a href="#impl-Az-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://docs.rs/az/~1.2/az/trait.Az.html" title="trait az::Az">Az</a> for T</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.az" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#602-604">source</a><a href="#method.az" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/az/~1.2/az/trait.Az.html#tymethod.az" class="fnname">az</a>&lt;Dst&gt;(self) -&gt; Dst<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.Cast.html" title="trait az::Cast">Cast</a>&lt;Dst&gt;,</span></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.65.0/src/core/borrow.rs.html#209">source</a><a href="#impl-Borrow%3CT%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.65.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.65.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/91522" title="Tracking issue for const_borrow">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.65.0/src/core/borrow.rs.html#211">source</a></span><a href="#method.borrow" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.65.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fnname">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.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.65.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.65.0/src/core/borrow.rs.html#218">source</a><a href="#impl-BorrowMut%3CT%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.65.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.65.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/91522" title="Tracking issue for const_borrow">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.65.0/src/core/borrow.rs.html#219">source</a></span><a href="#method.borrow_mut" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.65.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fnname">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.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.65.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-CastFrom%3CSrc%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#330">source</a><a href="#impl-CastFrom%3CSrc%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;Src, Dst&gt; <a class="trait" href="https://docs.rs/az/~1.2/az/trait.CastFrom.html" title="trait az::CastFrom">CastFrom</a>&lt;Src&gt; for Dst<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Src: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.Cast.html" title="trait az::Cast">Cast</a>&lt;Dst&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.cast_from" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#333">source</a><a href="#method.cast_from" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/az/~1.2/az/trait.CastFrom.html#tymethod.cast_from" class="fnname">cast_from</a>(src: Src) -&gt; Dst</h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-CheckedAs-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#672">source</a><a href="#impl-CheckedAs-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://docs.rs/az/~1.2/az/trait.CheckedAs.html" title="trait az::CheckedAs">CheckedAs</a> for T</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.checked_as" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#675-677">source</a><a href="#method.checked_as" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/az/~1.2/az/trait.CheckedAs.html#tymethod.checked_as" class="fnname">checked_as</a>&lt;Dst&gt;(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Dst&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.CheckedCast.html" title="trait az::CheckedCast">CheckedCast</a>&lt;Dst&gt;,</span></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-CheckedBitPattern-for-PerpPosition" class="impl has-srclink"><a href="#impl-CheckedBitPattern-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; CheckedBitPattern for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: AnyBitPattern,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Bits" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Bits" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">Bits</a> = T</h4></section></summary><div class='docblock'><code>Self</code> <em>must</em> have the same layout as the specified <code>Bits</code> except for
the possible invalid bit patterns being checked during
<a href="CheckedBitPattern::is_valid_bit_pattern"><code>is_valid_bit_pattern</code></a>. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.is_valid_bit_pattern" class="method trait-impl has-srclink"><a href="#method.is_valid_bit_pattern" class="anchor"></a><h4 class="code-header">fn <a class="fnname">is_valid_bit_pattern</a>(_bits: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.reference.html">&amp;</a>T) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>If this function returns true, then it must be valid to reinterpret <code>bits</code>
as <code>&amp;Self</code>. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-CheckedCastFrom%3CSrc%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#366">source</a><a href="#impl-CheckedCastFrom%3CSrc%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;Src, Dst&gt; <a class="trait" href="https://docs.rs/az/~1.2/az/trait.CheckedCastFrom.html" title="trait az::CheckedCastFrom">CheckedCastFrom</a>&lt;Src&gt; for Dst<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Src: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.CheckedCast.html" title="trait az::CheckedCast">CheckedCast</a>&lt;Dst&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.checked_cast_from" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#369">source</a><a href="#method.checked_cast_from" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/az/~1.2/az/trait.CheckedCastFrom.html#tymethod.checked_cast_from" class="fnname">checked_cast_from</a>(src: Src) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Dst&gt;</h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-DynClone-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/dyn_clone/1.0.9/src/dyn_clone/lib.rs.html#188">source</a><a href="#impl-DynClone-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://docs.rs/dyn_clone/1.0.9/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.65.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.9/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.9/dyn_clone/trait.DynClone.html#tymethod.__clone_box" class="fnname">__clone_box</a>(&amp;self, Private) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.pointer.html">*mut </a><a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.unit.html">()</a></h4></section></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.65.0/src/core/convert/mod.rs.html#559">source</a><a href="#impl-From%3CT%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.65.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="rustdoc-toggle method-toggle" open><summary><section id="method.from" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.65.0/src/core/convert/mod.rs.html#562">source</a></span><a href="#method.from" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.65.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(t: T) -&gt; T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Instrument-for-PerpPosition" 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-PerpPosition" class="anchor"></a><h3 class="code-header in-band">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="rustdoc-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="fnname">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="rustdoc-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="fnname">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="rustdoc-toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.65.0/src/core/convert/mod.rs.html#543">source</a><a href="#impl-Into%3CU%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.65.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.65.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="rustdoc-toggle method-toggle" open><summary><section id="method.into" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.65.0/src/core/convert/mod.rs.html#551">source</a></span><a href="#method.into" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.65.0/core/convert/trait.Into.html#tymethod.into" class="fnname">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.65.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="rustdoc-toggle implementors-toggle"><summary><section id="impl-LosslessTryInto%3CDst%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/fixed/~1.11/src/fixed/traits.rs.html#3054">source</a><a href="#impl-LosslessTryInto%3CDst%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;Src, Dst&gt; <a class="trait" href="https://docs.rs/fixed/~1.11/fixed/traits/trait.LosslessTryInto.html" title="trait fixed::traits::LosslessTryInto">LosslessTryInto</a>&lt;Dst&gt; for Src<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Dst: <a class="trait" href="https://docs.rs/fixed/~1.11/fixed/traits/trait.LosslessTryFrom.html" title="trait fixed::traits::LosslessTryFrom">LosslessTryFrom</a>&lt;Src&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.lossless_try_into" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/fixed/~1.11/src/fixed/traits.rs.html#3058">source</a><a href="#method.lossless_try_into" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/fixed/~1.11/fixed/traits/trait.LosslessTryInto.html#tymethod.lossless_try_into" class="fnname">lossless_try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;Dst&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-LossyInto%3CDst%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/fixed/~1.11/src/fixed/traits.rs.html#3105">source</a><a href="#impl-LossyInto%3CDst%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;Src, Dst&gt; <a class="trait" href="https://docs.rs/fixed/~1.11/fixed/traits/trait.LossyInto.html" title="trait fixed::traits::LossyInto">LossyInto</a>&lt;Dst&gt; for Src<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Dst: <a class="trait" href="https://docs.rs/fixed/~1.11/fixed/traits/trait.LossyFrom.html" title="trait fixed::traits::LossyFrom">LossyFrom</a>&lt;Src&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.lossy_into" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/fixed/~1.11/src/fixed/traits.rs.html#3109">source</a><a href="#method.lossy_into" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/fixed/~1.11/fixed/traits/trait.LossyInto.html#tymethod.lossy_into" class="fnname">lossy_into</a>(self) -&gt; Dst</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-OverflowingAs-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#897">source</a><a href="#impl-OverflowingAs-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://docs.rs/az/~1.2/az/trait.OverflowingAs.html" title="trait az::OverflowingAs">OverflowingAs</a> for T</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.overflowing_as" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#900-902">source</a><a href="#method.overflowing_as" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/az/~1.2/az/trait.OverflowingAs.html#tymethod.overflowing_as" class="fnname">overflowing_as</a>&lt;Dst&gt;(self) -&gt; (Dst, <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.bool.html">bool</a>)<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.OverflowingCast.html" title="trait az::OverflowingCast">OverflowingCast</a>&lt;Dst&gt;,</span></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-OverflowingCastFrom%3CSrc%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#474">source</a><a href="#impl-OverflowingCastFrom%3CSrc%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;Src, Dst&gt; <a class="trait" href="https://docs.rs/az/~1.2/az/trait.OverflowingCastFrom.html" title="trait az::OverflowingCastFrom">OverflowingCastFrom</a>&lt;Src&gt; for Dst<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Src: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.OverflowingCast.html" title="trait az::OverflowingCast">OverflowingCast</a>&lt;Dst&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.overflowing_cast_from" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#477">source</a><a href="#method.overflowing_cast_from" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/az/~1.2/az/trait.OverflowingCastFrom.html#tymethod.overflowing_cast_from" class="fnname">overflowing_cast_from</a>(src: Src) -&gt; (Dst, <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.bool.html">bool</a>)</h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Pointable-for-PerpPosition" class="impl has-srclink"><a href="#impl-Pointable-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; Pointable for T</h3></section></summary><div class="impl-items"><details class="rustdoc-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.65.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="rustdoc-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="rustdoc-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="fnname">init</a>(init: &lt;T as Pointable&gt;::Init) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.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="rustdoc-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="fnname">deref</a>&lt;'a&gt;(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.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="rustdoc-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="fnname">deref_mut</a>&lt;'a&gt;(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.65.0/std/primitive.usize.html">usize</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.65.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="rustdoc-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="fnname">drop</a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.65.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="rustdoc-toggle implementors-toggle"><summary><section id="impl-Same%3CT%3E-for-PerpPosition" 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-PerpPosition" class="anchor"></a><h3 class="code-header in-band">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="rustdoc-toggle" open><summary><section id="associatedtype.Output" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Output" class="anchor"></a><h4 class="code-header">type <a href="https://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="rustdoc-toggle implementors-toggle"><summary><section id="impl-SaturatingAs-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#745">source</a><a href="#impl-SaturatingAs-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://docs.rs/az/~1.2/az/trait.SaturatingAs.html" title="trait az::SaturatingAs">SaturatingAs</a> for T</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.saturating_as" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#748-750">source</a><a href="#method.saturating_as" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/az/~1.2/az/trait.SaturatingAs.html#tymethod.saturating_as" class="fnname">saturating_as</a>&lt;Dst&gt;(self) -&gt; Dst<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.SaturatingCast.html" title="trait az::SaturatingCast">SaturatingCast</a>&lt;Dst&gt;,</span></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-SaturatingCastFrom%3CSrc%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#402">source</a><a href="#impl-SaturatingCastFrom%3CSrc%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;Src, Dst&gt; <a class="trait" href="https://docs.rs/az/~1.2/az/trait.SaturatingCastFrom.html" title="trait az::SaturatingCastFrom">SaturatingCastFrom</a>&lt;Src&gt; for Dst<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Src: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.SaturatingCast.html" title="trait az::SaturatingCast">SaturatingCast</a>&lt;Dst&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.saturating_cast_from" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#405">source</a><a href="#method.saturating_cast_from" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/az/~1.2/az/trait.SaturatingCastFrom.html#tymethod.saturating_cast_from" class="fnname">saturating_cast_from</a>(src: Src) -&gt; Dst</h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-ToOwned-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.65.0/src/alloc/borrow.rs.html#83">source</a><a href="#impl-ToOwned-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.65.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.65.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Owned" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.65.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="rustdoc-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.65.0/src/alloc/borrow.rs.html#88">source</a><a href="#method.to_owned" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.65.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fnname">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.65.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="rustdoc-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.65.0/src/alloc/borrow.rs.html#92">source</a><a href="#method.clone_into" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.65.0/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fnname">clone_into</a>(&amp;self, target: <a class="primitive" href="https://doc.rust-lang.org/1.65.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.65.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.65.0/src/core/convert/mod.rs.html#601">source</a><a href="#impl-TryFrom%3CU%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.65.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.65.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="rustdoc-toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error-1" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.65.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.65.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="rustdoc-toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.65.0/src/core/convert/mod.rs.html#607">source</a></span><a href="#method.try_from" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.65.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fnname">try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.65.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.65.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.65.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="rustdoc-toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://doc.rust-lang.org/1.65.0/src/core/convert/mod.rs.html#586">source</a><a href="#impl-TryInto%3CU%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.65.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.65.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="rustdoc-toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.65.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.65.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.65.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="rustdoc-toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.65.0/src/core/convert/mod.rs.html#592">source</a></span><a href="#method.try_into" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.65.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fnname">try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.65.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.65.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.65.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="rustdoc-toggle implementors-toggle"><summary><section id="impl-UnwrappedAs-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#977">source</a><a href="#impl-UnwrappedAs-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://docs.rs/az/~1.2/az/trait.UnwrappedAs.html" title="trait az::UnwrappedAs">UnwrappedAs</a> for T</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.unwrapped_as" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#979-981">source</a><a href="#method.unwrapped_as" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/az/~1.2/az/trait.UnwrappedAs.html#tymethod.unwrapped_as" class="fnname">unwrapped_as</a>&lt;Dst&gt;(self) -&gt; Dst<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.UnwrappedCast.html" title="trait az::UnwrappedCast">UnwrappedCast</a>&lt;Dst&gt;,</span></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-UnwrappedCastFrom%3CSrc%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#526">source</a><a href="#impl-UnwrappedCastFrom%3CSrc%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;Src, Dst&gt; <a class="trait" href="https://docs.rs/az/~1.2/az/trait.UnwrappedCastFrom.html" title="trait az::UnwrappedCastFrom">UnwrappedCastFrom</a>&lt;Src&gt; for Dst<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Src: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.UnwrappedCast.html" title="trait az::UnwrappedCast">UnwrappedCast</a>&lt;Dst&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.unwrapped_cast_from" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#529">source</a><a href="#method.unwrapped_cast_from" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/az/~1.2/az/trait.UnwrappedCastFrom.html#tymethod.unwrapped_cast_from" class="fnname">unwrapped_cast_from</a>(src: Src) -&gt; Dst</h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-VZip%3CV%3E-for-PerpPosition" class="impl has-srclink"><a href="#impl-VZip%3CV%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">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="fnname">vzip</a>(self) -&gt; V</h4></section></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-WithSubscriber-for-PerpPosition" 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-PerpPosition" class="anchor"></a><h3 class="code-header in-band">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="rustdoc-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="fnname">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.65.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="rustdoc-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="fnname">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><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-WrappingAs-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#818">source</a><a href="#impl-WrappingAs-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://docs.rs/az/~1.2/az/trait.WrappingAs.html" title="trait az::WrappingAs">WrappingAs</a> for T</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.wrapping_as" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#821-823">source</a><a href="#method.wrapping_as" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/az/~1.2/az/trait.WrappingAs.html#tymethod.wrapping_as" class="fnname">wrapping_as</a>&lt;Dst&gt;(self) -&gt; Dst<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.WrappingCast.html" title="trait az::WrappingCast">WrappingCast</a>&lt;Dst&gt;,</span></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-WrappingCastFrom%3CSrc%3E-for-PerpPosition" class="impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#438">source</a><a href="#impl-WrappingCastFrom%3CSrc%3E-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;Src, Dst&gt; <a class="trait" href="https://docs.rs/az/~1.2/az/trait.WrappingCastFrom.html" title="trait az::WrappingCastFrom">WrappingCastFrom</a>&lt;Src&gt; for Dst<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Src: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.WrappingCast.html" title="trait az::WrappingCast">WrappingCast</a>&lt;Dst&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.wrapping_cast_from" class="method trait-impl has-srclink"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#441">source</a><a href="#method.wrapping_cast_from" class="anchor"></a><h4 class="code-header">fn <a href="https://docs.rs/az/~1.2/az/trait.WrappingCastFrom.html#tymethod.wrapping_cast_from" class="fnname">wrapping_cast_from</a>(src: Src) -&gt; Dst</h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><section id="impl-AnyBitPattern-for-PerpPosition" class="impl has-srclink"><a href="#impl-AnyBitPattern-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; AnyBitPattern for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Pod,</span></h3></section><section id="impl-NoUninit-for-PerpPosition" class="impl has-srclink"><a href="#impl-NoUninit-for-PerpPosition" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; NoUninit for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Pod,</span></h3></section></div></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="mango_v4" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.65.0 (897e37553 2022-11-02)" ></div></body></html>