146 lines
90 KiB
HTML
146 lines
90 KiB
HTML
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `HealthCache` struct in crate `mango_v4`."><title>HealthCache in mango_v4::health - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-c4dbdcde0fbd8430.css" id="mainThemeStyle"><link rel="stylesheet" id="themeStyle" href="../../static.files/light-db279b6232be9c13.css"><link rel="stylesheet" disabled href="../../static.files/dark-cf923f49f397b216.css"><link rel="stylesheet" disabled href="../../static.files/ayu-be46fdc453a55015.css"><script src="../../static.files/storage-3891ce972e3a2bf8.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-98a684e84ae5b08b.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-13285aec31fa243e.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../mango_v4/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2></h2></nav><nav class="sidebar"><a class="logo-container" href="../../mango_v4/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">HealthCache</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.adjust_serum3_reserved">adjust_serum3_reserved</a></li><li><a href="#method.adjust_token_balance">adjust_token_balance</a></li><li><a href="#method.has_perp_base_positions">has_perp_base_positions</a></li><li><a href="#method.has_perp_negative_pnl">has_perp_negative_pnl</a></li><li><a href="#method.has_perp_open_fills">has_perp_open_fills</a></li><li><a href="#method.has_perp_open_orders">has_perp_open_orders</a></li><li><a href="#method.has_perp_positive_pnl_no_base">has_perp_positive_pnl_no_base</a></li><li><a href="#method.has_phase1_liquidatable">has_phase1_liquidatable</a></li><li><a href="#method.has_phase2_liquidatable">has_phase2_liquidatable</a></li><li><a href="#method.has_phase3_liquidatable">has_phase3_liquidatable</a></li><li><a href="#method.has_serum3_open_orders_funds">has_serum3_open_orders_funds</a></li><li><a href="#method.has_spot_assets">has_spot_assets</a></li><li><a href="#method.has_spot_borrows">has_spot_borrows</a></li><li><a href="#method.health">health</a></li><li><a href="#method.health_assets_and_liabs">health_assets_and_liabs</a></li><li><a href="#method.health_ratio">health_ratio</a></li><li><a href="#method.in_phase1_liquidation">in_phase1_liquidation</a></li><li><a href="#method.in_phase2_liquidation">in_phase2_liquidation</a></li><li><a href="#method.in_phase3_liquidation">in_phase3_liquidation</a></li><li><a href="#method.is_liquidatable">is_liquidatable</a></li><li><a href="#method.max_borrow_for_health_ratio">max_borrow_for_health_ratio</a></li><li><a href="#method.max_perp_for_health_ratio">max_perp_for_health_ratio</a></li><li><a href="#method.max_swap_source_for_health">max_swap_source_for_health</a></li><li><a href="#method.max_swap_source_for_health_fn">max_swap_source_for_health_fn</a></li><li><a href="#method.max_swap_source_for_health_ratio">max_swap_source_for_health_ratio</a></li><li><a href="#method.perp_info">perp_info</a></li><li><a href="#method.perp_settle_health">perp_settle_health</a></li><li><a href="#method.recompute_perp_info">recompute_perp_info</a></li><li><a href="#method.require_after_phase1_liquidation">require_after_phase1_liquidation</a></li><li><a href="#method.require_after_phase2_liquidation">require_after_phase2_liquidation</a></li><li><a href="#method.token_info">token_info</a></li><li><a href="#method.total_serum3_potential">total_serum3_potential</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-BorshDeserialize-for-HealthCache">BorshDeserialize</a></li><li><a href="#impl-BorshSerialize-for-HealthCache">BorshSerialize</a></li><li><a href="#impl-Clone-for-HealthCache">Clone</a></li><li><a href="#impl-Debug-for-HealthCache">Debug</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-HealthCache">RefUnwindSafe</a></li><li><a href="#impl-Send-for-HealthCache">Send</a></li><li><a href="#impl-Sync-for-HealthCache">Sync</a></li><li><a href="#impl-Unpin-for-HealthCache">Unpin</a></li><li><a href="#impl-UnwindSafe-for-HealthCache">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-HealthCache">Any</a></li><li><a href="#impl-Az-for-HealthCache">Az</a></li><li><a href="#impl-Borrow%3CT%3E-for-HealthCache">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-HealthCache">BorrowMut<T></a></li><li><a href="#impl-CastFrom%3CSrc%3E-for-HealthCache">CastFrom<Src></a></li><li><a href="#impl-CheckedAs-for-HealthCache">CheckedAs</a></li><li><a href="#impl-CheckedCastFrom%3CSrc%3E-for-HealthCache">CheckedCastFrom<Src></a></li><li><a href="#impl-DynClone-for-HealthCache">DynClone</a></li><li><a href="#impl-From%3CT%3E-for-HealthCache">From<T></a></li><li><a href="#impl-Instrument-for-HealthCache">Instrument</a></li><li><a href="#impl-Into%3CU%3E-for-HealthCache">Into<U></a></li><li><a href="#impl-LosslessTryInto%3CDst%3E-for-HealthCache">LosslessTryInto<Dst></a></li><li><a href="#impl-LossyInto%3CDst%3E-for-HealthCache">LossyInto<Dst></a></li><li><a href="#impl-OverflowingAs-for-HealthCache">OverflowingAs</a></li><li><a href="#impl-OverflowingCastFrom%3CSrc%3E-for-HealthCache">OverflowingCastFrom<Src></a></li><li><a href="#impl-Pointable-for-HealthCache">Pointable</a></li><li><a href="#impl-Same%3CT%3E-for-HealthCache">Same<T></a></li><li><a href="#impl-SaturatingAs-for-HealthCache">SaturatingAs</a></li><li><a href="#impl-SaturatingCastFrom%3CSrc%3E-for-HealthCache">SaturatingCastFrom<Src></a></li><li><a href="#impl-ToOwned-for-HealthCache">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-HealthCache">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-HealthCache">TryInto<U></a></li><li><a href="#impl-UnwrappedAs-for-HealthCache">UnwrappedAs</a></li><li><a href="#impl-UnwrappedCastFrom%3CSrc%3E-for-HealthCache">UnwrappedCastFrom<Src></a></li><li><a href="#impl-VZip%3CV%3E-for-HealthCache">VZip<V></a></li><li><a href="#impl-WithSubscriber-for-HealthCache">WithSubscriber</a></li><li><a href="#impl-WrappingAs-for-HealthCache">WrappingAs</a></li><li><a href="#impl-WrappingCastFrom%3CSrc%3E-for-HealthCache">WrappingCastFrom<Src></a></li></ul></section><h2><a href="index.html">In mango_v4::health</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="../index.html">mango_v4</a>::<wbr><a href="index.html">health</a>::<wbr><a class="struct" href="#">HealthCache</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="srclink" href="../../src/mango_v4/health/cache.rs.html#371-376">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct HealthCache { /* private fields */ }</code></pre><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-HealthCache" class="impl"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#378-739">source</a><a href="#impl-HealthCache" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a></h3></section></summary><div class="impl-items"><section id="method.health" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#379-386">source</a><h4 class="code-header">pub fn <a href="#method.health" class="fn">health</a>(&self, health_type: <a class="enum" href="enum.HealthType.html" title="enum mango_v4::health::HealthType">HealthType</a>) -> <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="toggle method-toggle" open><summary><section id="method.health_assets_and_liabs" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#390-402">source</a><h4 class="code-header">pub fn <a href="#method.health_assets_and_liabs" class="fn">health_assets_and_liabs</a>(
|
||
&self,
|
||
health_type: <a class="enum" href="enum.HealthType.html" title="enum mango_v4::health::HealthType">HealthType</a>
|
||
) -> (<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>, <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>Sum of only the positive health components (assets) and
|
||
sum of absolute values of all negative health components (liabs, always >= 0)</p>
|
||
</div></details><section id="method.token_info" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#404-406">source</a><h4 class="code-header">pub fn <a href="#method.token_info" class="fn">token_info</a>(&self, token_index: <a class="type" href="../state/type.TokenIndex.html" title="type mango_v4::state::TokenIndex">TokenIndex</a>) -> Result<&<a class="struct" href="struct.TokenInfo.html" title="struct mango_v4::health::TokenInfo">TokenInfo</a>></h4></section><section id="method.perp_info" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#421-423">source</a><h4 class="code-header">pub fn <a href="#method.perp_info" class="fn">perp_info</a>(&self, perp_market_index: <a class="type" href="../state/type.PerpMarketIndex.html" title="type mango_v4::state::PerpMarketIndex">PerpMarketIndex</a>) -> Result<&<a class="struct" href="struct.PerpInfo.html" title="struct mango_v4::health::PerpInfo">PerpInfo</a>></h4></section><details class="toggle method-toggle" open><summary><section id="method.adjust_token_balance" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#439-456">source</a><h4 class="code-header">pub fn <a href="#method.adjust_token_balance" class="fn">adjust_token_balance</a>(&mut self, bank: &<a class="struct" href="../state/struct.Bank.html" title="struct mango_v4::state::Bank">Bank</a>, change: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>) -> Result<<a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.unit.html">()</a>></h4></section></summary><div class="docblock"><p>Changes the cached user account token balance.</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.adjust_serum3_reserved" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#463-495">source</a><h4 class="code-header">pub fn <a href="#method.adjust_serum3_reserved" class="fn">adjust_serum3_reserved</a>(
|
||
&mut self,
|
||
market_index: <a class="type" href="../state/type.Serum3MarketIndex.html" title="type mango_v4::state::Serum3MarketIndex">Serum3MarketIndex</a>,
|
||
base_token_index: <a class="type" href="../state/type.TokenIndex.html" title="type mango_v4::state::TokenIndex">TokenIndex</a>,
|
||
reserved_base_change: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
|
||
free_base_change: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
|
||
quote_token_index: <a class="type" href="../state/type.TokenIndex.html" title="type mango_v4::state::TokenIndex">TokenIndex</a>,
|
||
reserved_quote_change: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
|
||
free_quote_change: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>
|
||
) -> Result<<a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.unit.html">()</a>></h4></section></summary><div class="docblock"><p>Changes the cached user account token and serum balances.</p>
|
||
<p>WARNING: You must also call recompute_token_weights() after all bank
|
||
deposit/withdraw changes!</p>
|
||
</div></details><section id="method.recompute_perp_info" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#497-509">source</a><h4 class="code-header">pub fn <a href="#method.recompute_perp_info" class="fn">recompute_perp_info</a>(
|
||
&mut self,
|
||
perp_position: &<a class="struct" href="../state/struct.PerpPosition.html" title="struct mango_v4::state::PerpPosition">PerpPosition</a>,
|
||
perp_market: &<a class="struct" href="../state/struct.PerpMarket.html" title="struct mango_v4::state::PerpMarket">PerpMarket</a>
|
||
) -> Result<<a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.unit.html">()</a>></h4></section><section id="method.has_spot_assets" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#511-516">source</a><h4 class="code-header">pub fn <a href="#method.has_spot_assets" class="fn">has_spot_assets</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section><section id="method.has_serum3_open_orders_funds" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#518-520">source</a><h4 class="code-header">pub fn <a href="#method.has_serum3_open_orders_funds" class="fn">has_serum3_open_orders_funds</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section><section id="method.has_perp_open_orders" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#522-524">source</a><h4 class="code-header">pub fn <a href="#method.has_perp_open_orders" class="fn">has_perp_open_orders</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section><section id="method.has_perp_base_positions" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#526-528">source</a><h4 class="code-header">pub fn <a href="#method.has_perp_base_positions" class="fn">has_perp_base_positions</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section><section id="method.has_perp_open_fills" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#530-532">source</a><h4 class="code-header">pub fn <a href="#method.has_perp_open_fills" class="fn">has_perp_open_fills</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section><section id="method.has_perp_positive_pnl_no_base" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#534-538">source</a><h4 class="code-header">pub fn <a href="#method.has_perp_positive_pnl_no_base" class="fn">has_perp_positive_pnl_no_base</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section><section id="method.has_perp_negative_pnl" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#540-542">source</a><h4 class="code-header">pub fn <a href="#method.has_perp_negative_pnl" class="fn">has_perp_negative_pnl</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section><details class="toggle method-toggle" open><summary><section id="method.has_phase1_liquidatable" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#546-548">source</a><h4 class="code-header">pub fn <a href="#method.has_phase1_liquidatable" class="fn">has_phase1_liquidatable</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Phase1 is spot/perp order cancellation and spot settlement since
|
||
neither of these come at a cost to the liqee</p>
|
||
</div></details><section id="method.require_after_phase1_liquidation" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#550-557">source</a><h4 class="code-header">pub fn <a href="#method.require_after_phase1_liquidation" class="fn">require_after_phase1_liquidation</a>(&self) -> Result<<a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.unit.html">()</a>></h4></section><section id="method.in_phase1_liquidation" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#559-561">source</a><h4 class="code-header">pub fn <a href="#method.in_phase1_liquidation" class="fn">in_phase1_liquidation</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section><details class="toggle method-toggle" open><summary><section id="method.has_phase2_liquidatable" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#568-573">source</a><h4 class="code-header">pub fn <a href="#method.has_phase2_liquidatable" class="fn">has_phase2_liquidatable</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Phase2 is for:</p>
|
||
<ul>
|
||
<li>token-token liquidation</li>
|
||
<li>liquidation of perp base positions (an open fill isn’t liquidatable, but
|
||
it changes the base position, so need to wait for it to be processed…)</li>
|
||
<li>bringing positive trusted perp pnl into the spot realm</li>
|
||
</ul>
|
||
</div></details><section id="method.require_after_phase2_liquidation" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#575-594">source</a><h4 class="code-header">pub fn <a href="#method.require_after_phase2_liquidation" class="fn">require_after_phase2_liquidation</a>(&self) -> Result<<a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.unit.html">()</a>></h4></section><section id="method.in_phase2_liquidation" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#596-598">source</a><h4 class="code-header">pub fn <a href="#method.in_phase2_liquidation" class="fn">in_phase2_liquidation</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section><details class="toggle method-toggle" open><summary><section id="method.has_phase3_liquidatable" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#603-605">source</a><h4 class="code-header">pub fn <a href="#method.has_phase3_liquidatable" class="fn">has_phase3_liquidatable</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Phase3 is bankruptcy:</p>
|
||
<ul>
|
||
<li>token bankruptcy</li>
|
||
<li>perp bankruptcy</li>
|
||
</ul>
|
||
</div></details><section id="method.in_phase3_liquidation" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#607-611">source</a><h4 class="code-header">pub fn <a href="#method.in_phase3_liquidation" class="fn">in_phase3_liquidation</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section><section id="method.has_spot_borrows" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#613-615">source</a><h4 class="code-header">pub fn <a href="#method.has_spot_borrows" class="fn">has_spot_borrows</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section><details class="toggle method-toggle" open><summary><section id="method.perp_settle_health" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#684-708">source</a><h4 class="code-header">pub fn <a href="#method.perp_settle_health" class="fn">perp_settle_health</a>(&self) -> <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>Compute the health when it comes to settling perp pnl</p>
|
||
<p>Examples:</p>
|
||
<ul>
|
||
<li>An account may have maint_health < 0, but settling perp pnl could still be allowed.
|
||
(+100 USDC health, -50 USDT health, -50 perp health -> allow settling 50 health worth)</li>
|
||
<li>Positive health from trusted pnl markets counts</li>
|
||
<li>If overall health is 0 with two trusted perp pnl < 0, settling may still be possible.
|
||
(+100 USDC health, -150 perp1 health, -150 perp2 health -> allow settling 100 health worth)</li>
|
||
<li>Positive trusted perp pnl can enable settling.
|
||
(+100 trusted perp1 health, -100 perp2 health -> allow settling of 100 health worth)</li>
|
||
</ul>
|
||
</div></details><section id="method.total_serum3_potential" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#710-738">source</a><h4 class="code-header">pub fn <a href="#method.total_serum3_potential" class="fn">total_serum3_potential</a>(
|
||
&self,
|
||
health_type: <a class="enum" href="enum.HealthType.html" title="enum mango_v4::health::HealthType">HealthType</a>,
|
||
token_index: <a class="type" href="../state/type.TokenIndex.html" title="type mango_v4::state::TokenIndex">TokenIndex</a>
|
||
) -> Result<<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-HealthCache-1" class="impl"><a class="srclink rightside" href="../../src/mango_v4/health/client.rs.html#13-450">source</a><a href="#impl-HealthCache-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a></h3></section></summary><div class="impl-items"><section id="method.is_liquidatable" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/client.rs.html#14-20">source</a><h4 class="code-header">pub fn <a href="#method.is_liquidatable" class="fn">is_liquidatable</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a></h4></section><details class="toggle method-toggle" open><summary><section id="method.health_ratio" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/client.rs.html#29-38">source</a><h4 class="code-header">pub fn <a href="#method.health_ratio" class="fn">health_ratio</a>(&self, health_type: <a class="enum" href="enum.HealthType.html" title="enum mango_v4::health::HealthType">HealthType</a>) -> <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 health ratio is</p>
|
||
<ul>
|
||
<li>0 if health is 0 - meaning assets = liabs</li>
|
||
<li>100 if there’s 2x as many assets as liabs</li>
|
||
<li>200 if there’s 3x as many assets as liabs</li>
|
||
<li>MAX if liabs = 0</li>
|
||
</ul>
|
||
<p>Maybe talking about the collateralization ratio assets/liabs is more intuitive?</p>
|
||
</div></details><section id="method.max_swap_source_for_health_ratio" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/client.rs.html#73-91">source</a><h4 class="code-header">pub fn <a href="#method.max_swap_source_for_health_ratio" class="fn">max_swap_source_for_health_ratio</a>(
|
||
&self,
|
||
account: &<a class="type" href="../state/type.MangoAccountValue.html" title="type mango_v4::state::MangoAccountValue">MangoAccountValue</a>,
|
||
source_bank: &<a class="struct" href="../state/struct.Bank.html" title="struct mango_v4::state::Bank">Bank</a>,
|
||
source_oracle_price: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
|
||
target_bank: &<a class="struct" href="../state/struct.Bank.html" title="struct mango_v4::state::Bank">Bank</a>,
|
||
price: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
|
||
min_ratio: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>
|
||
) -> Result<<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.max_swap_source_for_health" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/client.rs.html#93-111">source</a><h4 class="code-header">pub fn <a href="#method.max_swap_source_for_health" class="fn">max_swap_source_for_health</a>(
|
||
&self,
|
||
account: &<a class="type" href="../state/type.MangoAccountValue.html" title="type mango_v4::state::MangoAccountValue">MangoAccountValue</a>,
|
||
source_bank: &<a class="struct" href="../state/struct.Bank.html" title="struct mango_v4::state::Bank">Bank</a>,
|
||
source_oracle_price: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
|
||
target_bank: &<a class="struct" href="../state/struct.Bank.html" title="struct mango_v4::state::Bank">Bank</a>,
|
||
price: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
|
||
min_ratio: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>
|
||
) -> Result<<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="toggle method-toggle" open><summary><section id="method.max_swap_source_for_health_fn" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/client.rs.html#124-259">source</a><h4 class="code-header">pub fn <a href="#method.max_swap_source_for_health_fn" class="fn">max_swap_source_for_health_fn</a>(
|
||
&self,
|
||
account: &<a class="type" href="../state/type.MangoAccountValue.html" title="type mango_v4::state::MangoAccountValue">MangoAccountValue</a>,
|
||
source_bank: &<a class="struct" href="../state/struct.Bank.html" title="struct mango_v4::state::Bank">Bank</a>,
|
||
source_oracle_price: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
|
||
target_bank: &<a class="struct" href="../state/struct.Bank.html" title="struct mango_v4::state::Bank">Bank</a>,
|
||
price: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
|
||
min_fn_value: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
|
||
target_fn: <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.fn.html">fn</a>(_: &<a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a>) -> <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>
|
||
) -> Result<<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>How many source native tokens may be swapped for target tokens while staying
|
||
above the min_ratio health ratio.</p>
|
||
<p><code>price</code>: The amount of target native you receive for one source native. So if we
|
||
swap BTC -> SOL and they’re at ui prices of $20000 and $40, that means price
|
||
should be 500000 native_SOL for a native_BTC. Because 1 BTC gives you 500 SOL
|
||
so 1e6 native_BTC gives you 500e9 native_SOL.</p>
|
||
<p>Positions for the source and deposit token index must already exist in the account.</p>
|
||
<p>NOTE: keep getMaxSourceForTokenSwap in ts/client in sync with changes here</p>
|
||
</div></details><details class="toggle method-toggle" open><summary><section id="method.max_perp_for_health_ratio" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/client.rs.html#262-380">source</a><h4 class="code-header">pub fn <a href="#method.max_perp_for_health_ratio" class="fn">max_perp_for_health_ratio</a>(
|
||
&self,
|
||
perp_market_index: <a class="type" href="../state/type.PerpMarketIndex.html" title="type mango_v4::state::PerpMarketIndex">PerpMarketIndex</a>,
|
||
price: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>,
|
||
side: <a class="enum" href="../state/enum.Side.html" title="enum mango_v4::state::Side">PerpOrderSide</a>,
|
||
min_ratio: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>
|
||
) -> Result<<a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.i64.html">i64</a>></h4></section></summary><div class="docblock"><p>NOTE: keep getMaxSourceForTokenSwap in ts/client in sync with changes here</p>
|
||
</div></details><section id="method.max_borrow_for_health_ratio" class="method"><a class="srclink rightside" href="../../src/mango_v4/health/client.rs.html#440-449">source</a><h4 class="code-header">pub fn <a href="#method.max_borrow_for_health_ratio" class="fn">max_borrow_for_health_ratio</a>(
|
||
&self,
|
||
account: &<a class="type" href="../state/type.MangoAccountValue.html" title="type mango_v4::state::MangoAccountValue">MangoAccountValue</a>,
|
||
bank: &<a class="struct" href="../state/struct.Bank.html" title="struct mango_v4::state::Bank">Bank</a>,
|
||
min_ratio: <a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>
|
||
) -> Result<<a class="type" href="https://docs.rs/fixed/~1.11/fixed/types/type.I80F48.html" title="type fixed::types::I80F48">I80F48</a>></h4></section></div></details></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-BorshDeserialize-for-HealthCache" class="impl"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#370">source</a><a href="#impl-BorshDeserialize-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl BorshDeserialize for <a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a><span class="where fmt-newline">where
|
||
<a class="struct" href="https://doc.rust-lang.org/1.69.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="struct.TokenInfo.html" title="struct mango_v4::health::TokenInfo">TokenInfo</a>>: BorshDeserialize,
|
||
<a class="struct" href="https://doc.rust-lang.org/1.69.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="struct.Serum3Info.html" title="struct mango_v4::health::Serum3Info">Serum3Info</a>>: BorshDeserialize,
|
||
<a class="struct" href="https://doc.rust-lang.org/1.69.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="struct.PerpInfo.html" title="struct mango_v4::health::PerpInfo">PerpInfo</a>>: BorshDeserialize,
|
||
<a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a>: BorshDeserialize,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.deserialize" class="method trait-impl"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#370">source</a><a href="#method.deserialize" class="anchor">§</a><h4 class="code-header">fn <a class="fn">deserialize</a>(buf: &mut &[<a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.u8.html">u8</a>]) -> <a class="enum" href="https://doc.rust-lang.org/1.69.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, <a class="struct" href="https://doc.rust-lang.org/1.69.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>></h4></section></summary><div class='docblock'>Deserializes this instance from a given slice of bytes.
|
||
Updates the buffer to point at the remaining bytes.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from_slice" class="method trait-impl"><a href="#method.try_from_slice" class="anchor">§</a><h4 class="code-header">fn <a class="fn">try_from_slice</a>(v: &[<a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.u8.html">u8</a>]) -> <a class="enum" href="https://doc.rust-lang.org/1.69.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><Self, <a class="struct" href="https://doc.rust-lang.org/1.69.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>></h4></section></summary><div class='docblock'>Deserialize this instance from a slice of bytes.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-BorshSerialize-for-HealthCache" class="impl"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#370">source</a><a href="#impl-BorshSerialize-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl BorshSerialize for <a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a><span class="where fmt-newline">where
|
||
<a class="struct" href="https://doc.rust-lang.org/1.69.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="struct.TokenInfo.html" title="struct mango_v4::health::TokenInfo">TokenInfo</a>>: BorshSerialize,
|
||
<a class="struct" href="https://doc.rust-lang.org/1.69.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="struct.Serum3Info.html" title="struct mango_v4::health::Serum3Info">Serum3Info</a>>: BorshSerialize,
|
||
<a class="struct" href="https://doc.rust-lang.org/1.69.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="struct.PerpInfo.html" title="struct mango_v4::health::PerpInfo">PerpInfo</a>>: BorshSerialize,
|
||
<a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a>: BorshSerialize,</span></h3></section></summary><div class="impl-items"><section id="method.serialize" class="method trait-impl"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#370">source</a><a href="#method.serialize" class="anchor">§</a><h4 class="code-header">fn <a class="fn">serialize</a><W: <a class="trait" href="https://doc.rust-lang.org/1.69.0/std/io/trait.Write.html" title="trait std::io::Write">Write</a>>(&self, writer: <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.reference.html">&mut W</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.69.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/1.69.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>></h4></section><details class="toggle method-toggle" open><summary><section id="method.try_to_vec" class="method trait-impl"><a href="#method.try_to_vec" class="anchor">§</a><h4 class="code-header">fn <a class="fn">try_to_vec</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.69.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/1.69.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.u8.html">u8</a>, <a class="struct" href="https://doc.rust-lang.org/1.69.0/alloc/alloc/struct.Global.html" title="struct alloc::alloc::Global">Global</a>>, <a class="struct" href="https://doc.rust-lang.org/1.69.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>></h4></section></summary><div class='docblock'>Serialize this instance into a vector of bytes.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-HealthCache" class="impl"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#370">source</a><a href="#impl-Clone-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#370">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.69.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.69.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><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.69.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.69.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.69.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-HealthCache" class="impl"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#370">source</a><a href="#impl-Debug-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="srclink rightside" href="../../src/mango_v4/health/cache.rs.html#370">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.69.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/1.69.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/1.69.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.69.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details></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-HealthCache" class="impl"><a href="#impl-RefUnwindSafe-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a></h3></section><section id="impl-Send-for-HealthCache" class="impl"><a href="#impl-Send-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a></h3></section><section id="impl-Sync-for-HealthCache" class="impl"><a href="#impl-Sync-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a></h3></section><section id="impl-Unpin-for-HealthCache" class="impl"><a href="#impl-Unpin-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a></h3></section><section id="impl-UnwindSafe-for-HealthCache" class="impl"><a href="#impl-UnwindSafe-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.HealthCache.html" title="struct mango_v4::health::HealthCache">HealthCache</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-HealthCache" class="impl"><a class="srclink rightside" href="https://doc.rust-lang.org/1.69.0/src/core/any.rs.html#200">source</a><a href="#impl-Any-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where
|
||
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.69.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="srclink rightside" href="https://doc.rust-lang.org/1.69.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.69.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.69.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.69.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Az-for-HealthCache" class="impl"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#599">source</a><a href="#impl-Az-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <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="toggle method-toggle" open><summary><section id="method.az" class="method trait-impl"><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="fn">az</a><Dst>(self) -> Dst<span class="where fmt-newline">where
|
||
T: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.Cast.html" title="trait az::Cast">Cast</a><Dst>,</span></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-HealthCache" class="impl"><a class="srclink rightside" href="https://doc.rust-lang.org/1.69.0/src/core/borrow.rs.html#211">source</a><a href="#impl-Borrow%3CT%3E-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where
|
||
T: ?<a class="trait" href="https://doc.rust-lang.org/1.69.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><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.69.0/src/core/borrow.rs.html#213">source</a></span><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.69.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.69.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-HealthCache" class="impl"><a class="srclink rightside" href="https://doc.rust-lang.org/1.69.0/src/core/borrow.rs.html#220">source</a><a href="#impl-BorrowMut%3CT%3E-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where
|
||
T: ?<a class="trait" href="https://doc.rust-lang.org/1.69.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><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.69.0/src/core/borrow.rs.html#221">source</a></span><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.69.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.69.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-CastFrom%3CSrc%3E-for-HealthCache" class="impl"><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-HealthCache" class="anchor">§</a><h3 class="code-header">impl<Src, Dst> <a class="trait" href="https://docs.rs/az/~1.2/az/trait.CastFrom.html" title="trait az::CastFrom">CastFrom</a><Src> for Dst<span class="where fmt-newline">where
|
||
Src: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.Cast.html" title="trait az::Cast">Cast</a><Dst>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cast_from" class="method trait-impl"><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="fn">cast_from</a>(src: Src) -> Dst</h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-CheckedAs-for-HealthCache" class="impl"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#672">source</a><a href="#impl-CheckedAs-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <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="toggle method-toggle" open><summary><section id="method.checked_as" class="method trait-impl"><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="fn">checked_as</a><Dst>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.69.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Dst><span class="where fmt-newline">where
|
||
T: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.CheckedCast.html" title="trait az::CheckedCast">CheckedCast</a><Dst>,</span></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-CheckedCastFrom%3CSrc%3E-for-HealthCache" class="impl"><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-HealthCache" class="anchor">§</a><h3 class="code-header">impl<Src, Dst> <a class="trait" href="https://docs.rs/az/~1.2/az/trait.CheckedCastFrom.html" title="trait az::CheckedCastFrom">CheckedCastFrom</a><Src> for Dst<span class="where fmt-newline">where
|
||
Src: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.CheckedCast.html" title="trait az::CheckedCast">CheckedCast</a><Dst>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.checked_cast_from" class="method trait-impl"><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="fn">checked_cast_from</a>(src: Src) -> <a class="enum" href="https://doc.rust-lang.org/1.69.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Dst></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-DynClone-for-HealthCache" class="impl"><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-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <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
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.69.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"><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="fn">__clone_box</a>(&self, _: Private) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.pointer.html">*mut </a><a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.unit.html">()</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-HealthCache" class="impl"><a class="srclink rightside" href="https://doc.rust-lang.org/1.69.0/src/core/convert/mod.rs.html#733">source</a><a href="#impl-From%3CT%3E-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><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.69.0/src/core/convert/mod.rs.html#736">source</a></span><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.69.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
|
||
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Instrument-for-HealthCache" class="impl"><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-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html" title="trait tracing::instrument::Instrument">Instrument</a> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.instrument" class="method trait-impl"><a class="srclink rightside" href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#82">source</a><a href="#method.instrument" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html#method.instrument" class="fn">instrument</a>(self, span: <a class="struct" href="https://docs.rs/tracing/0.1.37/tracing/span/struct.Span.html" title="struct tracing::span::Span">Span</a>) -> <a class="struct" href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.Instrumented.html" title="struct tracing::instrument::Instrumented">Instrumented</a><Self></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="struct tracing::span::Span"><code>Span</code></a>, returning an
|
||
<code>Instrumented</code> wrapper. <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html#method.instrument">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.in_current_span" class="method trait-impl"><a class="srclink rightside" href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#121">source</a><a href="#method.in_current_span" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html#method.in_current_span" class="fn">in_current_span</a>(self) -> <a class="struct" href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.Instrumented.html" title="struct tracing::instrument::Instrumented">Instrumented</a><Self></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" title="associated function tracing::span::Span::current">current</a> <a href="https://docs.rs/tracing/0.1.37/tracing/span/struct.Span.html" title="struct tracing::span::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.in_current_span">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-HealthCache" class="impl"><a class="srclink rightside" href="https://doc.rust-lang.org/1.69.0/src/core/convert/mod.rs.html#717">source</a><a href="#impl-Into%3CU%3E-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<span class="where fmt-newline">where
|
||
U: <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><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.69.0/src/core/convert/mod.rs.html#725">source</a></span><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.69.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
|
||
<p>That is, this conversion is whatever the implementation of
|
||
<code><a href="https://doc.rust-lang.org/1.69.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p>
|
||
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-LosslessTryInto%3CDst%3E-for-HealthCache" class="impl"><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-HealthCache" class="anchor">§</a><h3 class="code-header">impl<Src, Dst> <a class="trait" href="https://docs.rs/fixed/~1.11/fixed/traits/trait.LosslessTryInto.html" title="trait fixed::traits::LosslessTryInto">LosslessTryInto</a><Dst> for Src<span class="where fmt-newline">where
|
||
Dst: <a class="trait" href="https://docs.rs/fixed/~1.11/fixed/traits/trait.LosslessTryFrom.html" title="trait fixed::traits::LosslessTryFrom">LosslessTryFrom</a><Src>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.lossless_try_into" class="method trait-impl"><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="fn">lossless_try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.69.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Dst></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-LossyInto%3CDst%3E-for-HealthCache" class="impl"><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-HealthCache" class="anchor">§</a><h3 class="code-header">impl<Src, Dst> <a class="trait" href="https://docs.rs/fixed/~1.11/fixed/traits/trait.LossyInto.html" title="trait fixed::traits::LossyInto">LossyInto</a><Dst> for Src<span class="where fmt-newline">where
|
||
Dst: <a class="trait" href="https://docs.rs/fixed/~1.11/fixed/traits/trait.LossyFrom.html" title="trait fixed::traits::LossyFrom">LossyFrom</a><Src>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.lossy_into" class="method trait-impl"><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="fn">lossy_into</a>(self) -> Dst</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-OverflowingAs-for-HealthCache" class="impl"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#897">source</a><a href="#impl-OverflowingAs-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <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="toggle method-toggle" open><summary><section id="method.overflowing_as" class="method trait-impl"><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="fn">overflowing_as</a><Dst>(self) -> (Dst, <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a>)<span class="where fmt-newline">where
|
||
T: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.OverflowingCast.html" title="trait az::OverflowingCast">OverflowingCast</a><Dst>,</span></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-OverflowingCastFrom%3CSrc%3E-for-HealthCache" class="impl"><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-HealthCache" class="anchor">§</a><h3 class="code-header">impl<Src, Dst> <a class="trait" href="https://docs.rs/az/~1.2/az/trait.OverflowingCastFrom.html" title="trait az::OverflowingCastFrom">OverflowingCastFrom</a><Src> for Dst<span class="where fmt-newline">where
|
||
Src: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.OverflowingCast.html" title="trait az::OverflowingCast">OverflowingCast</a><Dst>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.overflowing_cast_from" class="method trait-impl"><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="fn">overflowing_cast_from</a>(src: Src) -> (Dst, <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.bool.html">bool</a>)</h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Pointable-for-HealthCache" class="impl"><a href="#impl-Pointable-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> Pointable for T</h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedconstant.ALIGN" class="associatedconstant trait-impl"><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.69.0/std/primitive.usize.html">usize</a> = mem::align_of::<T>()</h4></section></summary><div class='docblock'>The alignment of pointer.</div></details><details class="toggle" open><summary><section id="associatedtype.Init" class="associatedtype trait-impl"><a href="#associatedtype.Init" class="anchor">§</a><h4 class="code-header">type <a class="associatedtype">Init</a> = T</h4></section></summary><div class='docblock'>The type for initializers.</div></details><details class="toggle method-toggle" open><summary><section id="method.init" class="method trait-impl"><a href="#method.init" class="anchor">§</a><h4 class="code-header">unsafe fn <a class="fn">init</a>(init: <T as Pointable>::Init) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Initializes a with the given initializer. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.deref" class="method trait-impl"><a href="#method.deref" class="anchor">§</a><h4 class="code-header">unsafe fn <a class="fn">deref</a><'a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.usize.html">usize</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.reference.html">&'a T</a></h4></section></summary><div class='docblock'>Dereferences the given pointer. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.deref_mut" class="method trait-impl"><a href="#method.deref_mut" class="anchor">§</a><h4 class="code-header">unsafe fn <a class="fn">deref_mut</a><'a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.usize.html">usize</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.reference.html">&'a mut T</a></h4></section></summary><div class='docblock'>Mutably dereferences the given pointer. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.drop" class="method trait-impl"><a href="#method.drop" class="anchor">§</a><h4 class="code-header">unsafe fn <a class="fn">drop</a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.usize.html">usize</a>)</h4></section></summary><div class='docblock'>Drops the object pointed to by the given pointer. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Same%3CT%3E-for-HealthCache" class="impl"><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-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <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><T> for T</h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Output" class="associatedtype trait-impl"><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="toggle implementors-toggle"><summary><section id="impl-SaturatingAs-for-HealthCache" class="impl"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#745">source</a><a href="#impl-SaturatingAs-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <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="toggle method-toggle" open><summary><section id="method.saturating_as" class="method trait-impl"><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="fn">saturating_as</a><Dst>(self) -> Dst<span class="where fmt-newline">where
|
||
T: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.SaturatingCast.html" title="trait az::SaturatingCast">SaturatingCast</a><Dst>,</span></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-SaturatingCastFrom%3CSrc%3E-for-HealthCache" class="impl"><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-HealthCache" class="anchor">§</a><h3 class="code-header">impl<Src, Dst> <a class="trait" href="https://docs.rs/az/~1.2/az/trait.SaturatingCastFrom.html" title="trait az::SaturatingCastFrom">SaturatingCastFrom</a><Src> for Dst<span class="where fmt-newline">where
|
||
Src: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.SaturatingCast.html" title="trait az::SaturatingCast">SaturatingCast</a><Dst>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.saturating_cast_from" class="method trait-impl"><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="fn">saturating_cast_from</a>(src: Src) -> Dst</h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToOwned-for-HealthCache" class="impl"><a class="srclink rightside" href="https://doc.rust-lang.org/1.69.0/src/alloc/borrow.rs.html#82">source</a><a href="#impl-ToOwned-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.69.0/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T<span class="where fmt-newline">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.69.0/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl"><a class="srclink rightside" href="https://doc.rust-lang.org/1.69.0/src/alloc/borrow.rs.html#87">source</a><a href="#method.to_owned" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.69.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&self) -> T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.69.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl"><a class="srclink rightside" href="https://doc.rust-lang.org/1.69.0/src/alloc/borrow.rs.html#91">source</a><a href="#method.clone_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.69.0/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&self, target: <a class="primitive" href="https://doc.rust-lang.org/1.69.0/std/primitive.reference.html">&mut T</a>)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/1.69.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-HealthCache" class="impl"><a class="srclink rightside" href="https://doc.rust-lang.org/1.69.0/src/core/convert/mod.rs.html#775">source</a><a href="#impl-TryFrom%3CU%3E-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<span class="where fmt-newline">where
|
||
U: <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.69.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><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.69.0/src/core/convert/mod.rs.html#781">source</a></span><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.69.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-HealthCache" class="impl"><a class="srclink rightside" href="https://doc.rust-lang.org/1.69.0/src/core/convert/mod.rs.html#760">source</a><a href="#impl-TryInto%3CU%3E-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<span class="where fmt-newline">where
|
||
U: <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><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.69.0/src/core/convert/mod.rs.html#766">source</a></span><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.69.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-UnwrappedAs-for-HealthCache" class="impl"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#977">source</a><a href="#impl-UnwrappedAs-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <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="toggle method-toggle" open><summary><section id="method.unwrapped_as" class="method trait-impl"><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="fn">unwrapped_as</a><Dst>(self) -> Dst<span class="where fmt-newline">where
|
||
T: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.UnwrappedCast.html" title="trait az::UnwrappedCast">UnwrappedCast</a><Dst>,</span></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-UnwrappedCastFrom%3CSrc%3E-for-HealthCache" class="impl"><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-HealthCache" class="anchor">§</a><h3 class="code-header">impl<Src, Dst> <a class="trait" href="https://docs.rs/az/~1.2/az/trait.UnwrappedCastFrom.html" title="trait az::UnwrappedCastFrom">UnwrappedCastFrom</a><Src> for Dst<span class="where fmt-newline">where
|
||
Src: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.UnwrappedCast.html" title="trait az::UnwrappedCast">UnwrappedCast</a><Dst>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.unwrapped_cast_from" class="method trait-impl"><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="fn">unwrapped_cast_from</a>(src: Src) -> Dst</h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-VZip%3CV%3E-for-HealthCache" class="impl"><a href="#impl-VZip%3CV%3E-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<V, T> VZip<V> for T<span class="where fmt-newline">where
|
||
V: MultiLane<T>,</span></h3></section></summary><div class="impl-items"><section id="method.vzip" class="method trait-impl"><a href="#method.vzip" class="anchor">§</a><h4 class="code-header">fn <a class="fn">vzip</a>(self) -> V</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-WithSubscriber-for-HealthCache" class="impl"><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-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.WithSubscriber.html" title="trait tracing::instrument::WithSubscriber">WithSubscriber</a> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.with_subscriber" class="method trait-impl"><a class="srclink rightside" href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#169-171">source</a><a href="#method.with_subscriber" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.WithSubscriber.html#method.with_subscriber" class="fn">with_subscriber</a><S>(self, subscriber: S) -> <a class="struct" href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.WithDispatch.html" title="struct tracing::instrument::WithDispatch">WithDispatch</a><Self><span class="where fmt-newline">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.69.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><<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>>,</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" title="trait tracing_core::subscriber::Subscriber"><code>Subscriber</code></a> to this type, returning a
|
||
<a href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.WithDispatch.html" title="struct tracing::instrument::WithDispatch"><code>WithDispatch</code></a> wrapper. <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.WithSubscriber.html#method.with_subscriber">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_current_subscriber" class="method trait-impl"><a class="srclink rightside" href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#221">source</a><a href="#method.with_current_subscriber" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.WithSubscriber.html#method.with_current_subscriber" class="fn">with_current_subscriber</a>(self) -> <a class="struct" href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.WithDispatch.html" title="struct tracing::instrument::WithDispatch">WithDispatch</a><Self></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" title="mod tracing::dispatcher">default</a> <a href="https://docs.rs/tracing-core/0.1.22/tracing_core/subscriber/trait.Subscriber.html" title="trait tracing_core::subscriber::Subscriber"><code>Subscriber</code></a> to this type, returning a
|
||
<a href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.WithDispatch.html" title="struct tracing::instrument::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="toggle implementors-toggle"><summary><section id="impl-WrappingAs-for-HealthCache" class="impl"><a class="srclink rightside" href="https://docs.rs/az/~1.2/src/az/lib.rs.html#818">source</a><a href="#impl-WrappingAs-for-HealthCache" class="anchor">§</a><h3 class="code-header">impl<T> <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="toggle method-toggle" open><summary><section id="method.wrapping_as" class="method trait-impl"><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="fn">wrapping_as</a><Dst>(self) -> Dst<span class="where fmt-newline">where
|
||
T: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.WrappingCast.html" title="trait az::WrappingCast">WrappingCast</a><Dst>,</span></h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-WrappingCastFrom%3CSrc%3E-for-HealthCache" class="impl"><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-HealthCache" class="anchor">§</a><h3 class="code-header">impl<Src, Dst> <a class="trait" href="https://docs.rs/az/~1.2/az/trait.WrappingCastFrom.html" title="trait az::WrappingCastFrom">WrappingCastFrom</a><Src> for Dst<span class="where fmt-newline">where
|
||
Src: <a class="trait" href="https://docs.rs/az/~1.2/az/trait.WrappingCast.html" title="trait az::WrappingCast">WrappingCast</a><Dst>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.wrapping_cast_from" class="method trait-impl"><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="fn">wrapping_cast_from</a>(src: Src) -> Dst</h4></section></summary><div class='docblock'>Casts the value.</div></details></div></details></div></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="mango_v4" data-themes="" data-resource-suffix="" data-rustdoc-version="1.69.0 (84c898d65 2023-04-16)" data-search-js="search-8a59a8356673ec1f.js" data-settings-js="settings-f0c5c39777a9a2f6.js" data-settings-css="settings-0bcba95ff279c1db.css" ></div></body></html> |