edlang/object/macho/struct.DyldCacheHeader.html
2024-03-02 09:26:34 +00:00

74 lines
43 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="The dyld cache header. Corresponds to struct dyld_cache_header from dyld_cache_format.h. This header has grown over time. Only the fields up to and including dyld_base_address are guaranteed to be present. For all other fields, check the header size before accessing the field. The header size is stored in mapping_offset; the mappings start right after the theader."><title>DyldCacheHeader in object::macho - 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/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-ac92e1bbe349e143.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="object" data-themes="" data-resource-suffix="" data-rustdoc-version="1.76.0 (07dca489a 2024-02-04)" data-channel="1.76.0" data-search-js="search-2b6ce74ff89ae146.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-f2adc0d6ca4d09fb.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-305769736d49e732.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-feafe1bb7466e4bd.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../object/index.html">object</a><span class="version">0.32.2</span></h2></div><h2 class="location"><a href="#">DyldCacheHeader</a></h2><div class="sidebar-elems"><section><h3><a href="#fields">Fields</a></h3><ul class="block structfield"><li><a href="#structfield.dyld_base_address">dyld_base_address</a></li><li><a href="#structfield.images_across_all_subcaches_count">images_across_all_subcaches_count</a></li><li><a href="#structfield.images_across_all_subcaches_offset">images_across_all_subcaches_offset</a></li><li><a href="#structfield.images_count">images_count</a></li><li><a href="#structfield.images_offset">images_offset</a></li><li><a href="#structfield.local_symbols_offset">local_symbols_offset</a></li><li><a href="#structfield.local_symbols_size">local_symbols_size</a></li><li><a href="#structfield.magic">magic</a></li><li><a href="#structfield.mapping_count">mapping_count</a></li><li><a href="#structfield.mapping_offset">mapping_offset</a></li><li><a href="#structfield.subcaches_count">subcaches_count</a></li><li><a href="#structfield.subcaches_offset">subcaches_offset</a></li><li><a href="#structfield.symbols_subcache_uuid">symbols_subcache_uuid</a></li><li><a href="#structfield.uuid">uuid</a></li></ul><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.images">images</a></li><li><a href="#method.mappings">mappings</a></li><li><a href="#method.parse">parse</a></li><li><a href="#method.parse_magic">parse_magic</a></li><li><a href="#method.subcaches">subcaches</a></li><li><a href="#method.symbols_subcache_uuid">symbols_subcache_uuid</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Clone-for-DyldCacheHeader%3CE%3E">Clone</a></li><li><a href="#impl-Copy-for-DyldCacheHeader%3CE%3E">Copy</a></li><li><a href="#impl-Debug-for-DyldCacheHeader%3CE%3E">Debug</a></li><li><a href="#impl-Pod-for-DyldCacheHeader%3CE%3E">Pod</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-RefUnwindSafe-for-DyldCacheHeader%3CE%3E">RefUnwindSafe</a></li><li><a href="#impl-Send-for-DyldCacheHeader%3CE%3E">Send</a></li><li><a href="#impl-Sync-for-DyldCacheHeader%3CE%3E">Sync</a></li><li><a href="#impl-Unpin-for-DyldCacheHeader%3CE%3E">Unpin</a></li><li><a href="#impl-UnwindSafe-for-DyldCacheHeader%3CE%3E">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T">Borrow&lt;T&gt;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T">BorrowMut&lt;T&gt;</a></li><li><a href="#impl-From%3CT%3E-for-T">From&lt;T&gt;</a></li><li><a href="#impl-Into%3CU%3E-for-T">Into&lt;U&gt;</a></li><li><a href="#impl-ToOwned-for-T">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T">TryFrom&lt;U&gt;</a></li><li><a href="#impl-TryInto%3CU%3E-for-T">TryInto&lt;U&gt;</a></li></ul></section><h2><a href="index.html">In object::macho</a></h2></div></nav><div class="sidebar-resizer"></div>
<main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../object/all.html" title="show sidebar"></a></div><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" tabindex="-1"><a href="../../help.html" title="help">?</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">object</a>::<wbr><a href="index.html">macho</a>::<wbr><a class="struct" href="#">DyldCacheHeader</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="src" href="../../src/object/macho.rs.html#295-348">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code><div class="code-attribute">#[repr(C)]</div>pub struct DyldCacheHeader&lt;E: <a class="trait" href="../endian/trait.Endian.html" title="trait object::endian::Endian">Endian</a>&gt; {<details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 14 fields</span></summary>
pub magic: [<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.array.html">16</a>],
pub mapping_offset: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;,
pub mapping_count: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;,
pub images_offset: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;,
pub images_count: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;,
pub dyld_base_address: <a class="type" href="../endian/type.U64.html" title="type object::endian::U64">U64</a>&lt;E&gt;,
pub local_symbols_offset: <a class="type" href="../endian/type.U64.html" title="type object::endian::U64">U64</a>&lt;E&gt;,
pub local_symbols_size: <a class="type" href="../endian/type.U64.html" title="type object::endian::U64">U64</a>&lt;E&gt;,
pub uuid: [<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.array.html">16</a>],
pub subcaches_offset: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;,
pub subcaches_count: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;,
pub symbols_subcache_uuid: [<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.array.html">16</a>],
pub images_across_all_subcaches_offset: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;,
pub images_across_all_subcaches_count: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;,
<span class="comment">/* private fields */</span>
</details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The dyld cache header.
Corresponds to struct dyld_cache_header from dyld_cache_format.h.
This header has grown over time. Only the fields up to and including dyld_base_address
are guaranteed to be present. For all other fields, check the header size before
accessing the field. The header size is stored in mapping_offset; the mappings start
right after the theader.</p>
</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.magic" class="structfield section-header"><a href="#structfield.magic" class="anchor field">§</a><code>magic: [<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.array.html">16</a>]</code></span><div class="docblock"><p>e.g. “dyld_v0 i386”</p>
</div><span id="structfield.mapping_offset" class="structfield section-header"><a href="#structfield.mapping_offset" class="anchor field">§</a><code>mapping_offset: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;</code></span><div class="docblock"><p>file offset to first dyld_cache_mapping_info</p>
</div><span id="structfield.mapping_count" class="structfield section-header"><a href="#structfield.mapping_count" class="anchor field">§</a><code>mapping_count: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;</code></span><div class="docblock"><p>number of dyld_cache_mapping_info entries</p>
</div><span id="structfield.images_offset" class="structfield section-header"><a href="#structfield.images_offset" class="anchor field">§</a><code>images_offset: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;</code></span><div class="docblock"><p>file offset to first dyld_cache_image_info</p>
</div><span id="structfield.images_count" class="structfield section-header"><a href="#structfield.images_count" class="anchor field">§</a><code>images_count: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;</code></span><div class="docblock"><p>number of dyld_cache_image_info entries</p>
</div><span id="structfield.dyld_base_address" class="structfield section-header"><a href="#structfield.dyld_base_address" class="anchor field">§</a><code>dyld_base_address: <a class="type" href="../endian/type.U64.html" title="type object::endian::U64">U64</a>&lt;E&gt;</code></span><div class="docblock"><p>base address of dyld when cache was built</p>
</div><span id="structfield.local_symbols_offset" class="structfield section-header"><a href="#structfield.local_symbols_offset" class="anchor field">§</a><code>local_symbols_offset: <a class="type" href="../endian/type.U64.html" title="type object::endian::U64">U64</a>&lt;E&gt;</code></span><div class="docblock"><p>file offset of where local symbols are stored</p>
</div><span id="structfield.local_symbols_size" class="structfield section-header"><a href="#structfield.local_symbols_size" class="anchor field">§</a><code>local_symbols_size: <a class="type" href="../endian/type.U64.html" title="type object::endian::U64">U64</a>&lt;E&gt;</code></span><div class="docblock"><p>size of local symbols information</p>
</div><span id="structfield.uuid" class="structfield section-header"><a href="#structfield.uuid" class="anchor field">§</a><code>uuid: [<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.array.html">16</a>]</code></span><div class="docblock"><p>unique value for each shared cache file</p>
</div><span id="structfield.subcaches_offset" class="structfield section-header"><a href="#structfield.subcaches_offset" class="anchor field">§</a><code>subcaches_offset: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;</code></span><div class="docblock"><p>file offset to first dyld_subcache_info</p>
</div><span id="structfield.subcaches_count" class="structfield section-header"><a href="#structfield.subcaches_count" class="anchor field">§</a><code>subcaches_count: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;</code></span><div class="docblock"><p>number of dyld_subcache_info entries</p>
</div><span id="structfield.symbols_subcache_uuid" class="structfield section-header"><a href="#structfield.symbols_subcache_uuid" class="anchor field">§</a><code>symbols_subcache_uuid: [<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.array.html">16</a>]</code></span><div class="docblock"><p>the UUID of the .symbols subcache</p>
</div><span id="structfield.images_across_all_subcaches_offset" class="structfield section-header"><a href="#structfield.images_across_all_subcaches_offset" class="anchor field">§</a><code>images_across_all_subcaches_offset: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;</code></span><div class="docblock"><p>file offset to first dyld_cache_image_info
Use this instead of images_offset if mapping_offset is at least 0x1c4.</p>
</div><span id="structfield.images_across_all_subcaches_count" class="structfield section-header"><a href="#structfield.images_across_all_subcaches_count" class="anchor field">§</a><code>images_across_all_subcaches_count: <a class="type" href="../endian/type.U32.html" title="type object::endian::U32">U32</a>&lt;E&gt;</code></span><div class="docblock"><p>number of dyld_cache_image_info entries
Use this instead of images_count if mapping_offset is at least 0x1c4.</p>
</div><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-DyldCacheHeader%3CE%3E" class="impl"><a class="src rightside" href="../../src/object/read/macho/dyld_cache.rs.html#215-306">source</a><a href="#impl-DyldCacheHeader%3CE%3E" class="anchor">§</a><h3 class="code-header">impl&lt;E: <a class="trait" href="../endian/trait.Endian.html" title="trait object::endian::Endian">Endian</a>&gt; <a class="struct" href="struct.DyldCacheHeader.html" title="struct object::macho::DyldCacheHeader">DyldCacheHeader</a>&lt;E&gt;</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.parse" class="method"><a class="src rightside" href="../../src/object/read/macho/dyld_cache.rs.html#217-220">source</a><h4 class="code-header">pub fn <a href="#method.parse" class="fn">parse</a>&lt;'data, R: <a class="trait" href="../read/trait.ReadRef.html" title="trait object::read::ReadRef">ReadRef</a>&lt;'data&gt;&gt;(data: R) -&gt; <a class="type" href="../read/type.Result.html" title="type object::read::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;'data Self</a>&gt;</h4></section></summary><div class="docblock"><p>Read the dyld cache header.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.parse_magic" class="method"><a class="src rightside" href="../../src/object/read/macho/dyld_cache.rs.html#223-241">source</a><h4 class="code-header">pub fn <a href="#method.parse_magic" class="fn">parse_magic</a>(&amp;self) -&gt; <a class="type" href="../read/type.Result.html" title="type object::read::Result">Result</a>&lt;(<a class="enum" href="../enum.Architecture.html" title="enum object::Architecture">Architecture</a>, E)&gt;</h4></section></summary><div class="docblock"><p>Returns (arch, endian) based on the magic string.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.mappings" class="method"><a class="src rightside" href="../../src/object/read/macho/dyld_cache.rs.html#244-254">source</a><h4 class="code-header">pub fn <a href="#method.mappings" class="fn">mappings</a>&lt;'data, R: <a class="trait" href="../read/trait.ReadRef.html" title="trait object::read::ReadRef">ReadRef</a>&lt;'data&gt;&gt;(
&amp;self,
endian: E,
data: R
) -&gt; <a class="type" href="../read/type.Result.html" title="type object::read::Result">Result</a>&lt;&amp;'data [<a class="struct" href="struct.DyldCacheMappingInfo.html" title="struct object::macho::DyldCacheMappingInfo">DyldCacheMappingInfo</a>&lt;E&gt;]&gt;</h4></section></summary><div class="docblock"><p>Return the mapping information table.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.subcaches" class="method"><a class="src rightside" href="../../src/object/read/macho/dyld_cache.rs.html#257-273">source</a><h4 class="code-header">pub fn <a href="#method.subcaches" class="fn">subcaches</a>&lt;'data, R: <a class="trait" href="../read/trait.ReadRef.html" title="trait object::read::ReadRef">ReadRef</a>&lt;'data&gt;&gt;(
&amp;self,
endian: E,
data: R
) -&gt; <a class="type" href="../read/type.Result.html" title="type object::read::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/1.76.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;'data [<a class="struct" href="struct.DyldSubCacheInfo.html" title="struct object::macho::DyldSubCacheInfo">DyldSubCacheInfo</a>&lt;E&gt;]&gt;&gt;</h4></section></summary><div class="docblock"><p>Return the information about subcaches, if present.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.symbols_subcache_uuid" class="method"><a class="src rightside" href="../../src/object/read/macho/dyld_cache.rs.html#276-284">source</a><h4 class="code-header">pub fn <a href="#method.symbols_subcache_uuid" class="fn">symbols_subcache_uuid</a>(&amp;self, endian: E) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.76.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.u8.html">u8</a>; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.array.html">16</a>]&gt;</h4></section></summary><div class="docblock"><p>Return the UUID for the .symbols subcache, if present.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.images" class="method"><a class="src rightside" href="../../src/object/read/macho/dyld_cache.rs.html#287-305">source</a><h4 class="code-header">pub fn <a href="#method.images" class="fn">images</a>&lt;'data, R: <a class="trait" href="../read/trait.ReadRef.html" title="trait object::read::ReadRef">ReadRef</a>&lt;'data&gt;&gt;(
&amp;self,
endian: E,
data: R
) -&gt; <a class="type" href="../read/type.Result.html" title="type object::read::Result">Result</a>&lt;&amp;'data [<a class="struct" href="struct.DyldCacheImageInfo.html" title="struct object::macho::DyldCacheImageInfo">DyldCacheImageInfo</a>&lt;E&gt;]&gt;</h4></section></summary><div class="docblock"><p>Return the image information table.</p>
</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-DyldCacheHeader%3CE%3E" class="impl"><a class="src rightside" href="../../src/object/macho.rs.html#293">source</a><a href="#impl-Clone-for-DyldCacheHeader%3CE%3E" class="anchor">§</a><h3 class="code-header">impl&lt;E: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="../endian/trait.Endian.html" title="trait object::endian::Endian">Endian</a>&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="struct.DyldCacheHeader.html" title="struct object::macho::DyldCacheHeader">DyldCacheHeader</a>&lt;E&gt;</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../src/object/macho.rs.html#293">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&amp;self) -&gt; <a class="struct" href="struct.DyldCacheHeader.html" title="struct object::macho::DyldCacheHeader">DyldCacheHeader</a>&lt;E&gt;</h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.76.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="src" href="https://doc.rust-lang.org/1.76.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&amp;mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.76.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-DyldCacheHeader%3CE%3E" class="impl"><a class="src rightside" href="../../src/object/macho.rs.html#293">source</a><a href="#impl-Debug-for-DyldCacheHeader%3CE%3E" class="anchor">§</a><h3 class="code-header">impl&lt;E: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> + <a class="trait" href="../endian/trait.Endian.html" title="trait object::endian::Endian">Endian</a>&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.DyldCacheHeader.html" title="struct object::macho::DyldCacheHeader">DyldCacheHeader</a>&lt;E&gt;</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../../src/object/macho.rs.html#293">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.76.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.76.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.76.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><section id="impl-Copy-for-DyldCacheHeader%3CE%3E" class="impl"><a class="src rightside" href="../../src/object/macho.rs.html#293">source</a><a href="#impl-Copy-for-DyldCacheHeader%3CE%3E" class="anchor">§</a><h3 class="code-header">impl&lt;E: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="../endian/trait.Endian.html" title="trait object::endian::Endian">Endian</a>&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="struct" href="struct.DyldCacheHeader.html" title="struct object::macho::DyldCacheHeader">DyldCacheHeader</a>&lt;E&gt;</h3></section><section id="impl-Pod-for-DyldCacheHeader%3CE%3E" class="impl"><a class="src rightside" href="../../src/object/macho.rs.html#3250-3307">source</a><a href="#impl-Pod-for-DyldCacheHeader%3CE%3E" class="anchor">§</a><h3 class="code-header">impl&lt;E: <a class="trait" href="../endian/trait.Endian.html" title="trait object::endian::Endian">Endian</a>&gt; <a class="trait" href="../pod/trait.Pod.html" title="trait object::pod::Pod">Pod</a> for <a class="struct" href="struct.DyldCacheHeader.html" title="struct object::macho::DyldCacheHeader">DyldCacheHeader</a>&lt;E&gt;</h3></section></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-DyldCacheHeader%3CE%3E" class="impl"><a href="#impl-RefUnwindSafe-for-DyldCacheHeader%3CE%3E" class="anchor">§</a><h3 class="code-header">impl&lt;E&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.DyldCacheHeader.html" title="struct object::macho::DyldCacheHeader">DyldCacheHeader</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a>,</div></h3></section><section id="impl-Send-for-DyldCacheHeader%3CE%3E" class="impl"><a href="#impl-Send-for-DyldCacheHeader%3CE%3E" class="anchor">§</a><h3 class="code-header">impl&lt;E&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.DyldCacheHeader.html" title="struct object::macho::DyldCacheHeader">DyldCacheHeader</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h3></section><section id="impl-Sync-for-DyldCacheHeader%3CE%3E" class="impl"><a href="#impl-Sync-for-DyldCacheHeader%3CE%3E" class="anchor">§</a><h3 class="code-header">impl&lt;E&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.DyldCacheHeader.html" title="struct object::macho::DyldCacheHeader">DyldCacheHeader</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h3></section><section id="impl-Unpin-for-DyldCacheHeader%3CE%3E" class="impl"><a href="#impl-Unpin-for-DyldCacheHeader%3CE%3E" class="anchor">§</a><h3 class="code-header">impl&lt;E&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.DyldCacheHeader.html" title="struct object::macho::DyldCacheHeader">DyldCacheHeader</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h3></section><section id="impl-UnwindSafe-for-DyldCacheHeader%3CE%3E" class="impl"><a href="#impl-UnwindSafe-for-DyldCacheHeader%3CE%3E" class="anchor">§</a><h3 class="code-header">impl&lt;E&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.DyldCacheHeader.html" title="struct object::macho::DyldCacheHeader">DyldCacheHeader</a>&lt;E&gt;<div class="where">where
E: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a>,</div></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/any.rs.html#140">source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/any.rs.html#141">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.76.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.76.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#763">source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#766">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -&gt; T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#747-749">source</a><a href="#impl-Into%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#756">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -&gt; U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
<p>That is, this conversion is whatever the implementation of
<code><a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for U</code> chooses to do.</p>
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToOwned-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/alloc/borrow.rs.html#83-85">source</a><a href="#impl-ToOwned-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T<div class="where">where
T: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></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.76.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="src rightside" href="https://doc.rust-lang.org/1.76.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.76.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&amp;self) -&gt; T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.76.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="src rightside" href="https://doc.rust-lang.org/1.76.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.76.0/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&amp;self, target: <a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&amp;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.76.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-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#803-805">source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.76.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#810">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.76.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.76.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.76.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#788-790">source</a><a href="#impl-TryInto%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-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.76.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.76.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.76.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#795">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.76.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.76.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.76.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>