edlang/gimli/read/struct.Unit.html
2024-02-13 06:38:44 +00:00

87 lines
40 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="All of the commonly used information for a unit in the `.debug_info` or `.debug_types` sections."><title>Unit in gimli::read - 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="gimli" 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="../../gimli/index.html">gimli</a><span class="version">0.28.1</span></h2></div><h2 class="location"><a href="#">Unit</a></h2><div class="sidebar-elems"><section><h3><a href="#fields">Fields</a></h3><ul class="block structfield"><li><a href="#structfield.abbreviations">abbreviations</a></li><li><a href="#structfield.addr_base">addr_base</a></li><li><a href="#structfield.comp_dir">comp_dir</a></li><li><a href="#structfield.dwo_id">dwo_id</a></li><li><a href="#structfield.header">header</a></li><li><a href="#structfield.line_program">line_program</a></li><li><a href="#structfield.loclists_base">loclists_base</a></li><li><a href="#structfield.low_pc">low_pc</a></li><li><a href="#structfield.name">name</a></li><li><a href="#structfield.rnglists_base">rnglists_base</a></li><li><a href="#structfield.str_offsets_base">str_offsets_base</a></li></ul><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.copy_relocated_attributes">copy_relocated_attributes</a></li><li><a href="#method.dwo_name">dwo_name</a></li><li><a href="#method.encoding">encoding</a></li><li><a href="#method.entries">entries</a></li><li><a href="#method.entries_at_offset">entries_at_offset</a></li><li><a href="#method.entries_raw">entries_raw</a></li><li><a href="#method.entries_tree">entries_tree</a></li><li><a href="#method.entry">entry</a></li><li><a href="#method.new">new</a></li><li><a href="#method.new_with_abbreviations">new_with_abbreviations</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Debug-for-Unit%3CR,+Offset%3E">Debug</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-RefUnwindSafe-for-Unit%3CR,+Offset%3E">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Unit%3CR,+Offset%3E">Send</a></li><li><a href="#impl-Sync-for-Unit%3CR,+Offset%3E">Sync</a></li><li><a href="#impl-Unpin-for-Unit%3CR,+Offset%3E">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Unit%3CR,+Offset%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-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 gimli::read</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="../../gimli/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">gimli</a>::<wbr><a href="index.html">read</a>::<wbr><a class="struct" href="#">Unit</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/gimli/read/dwarf.rs.html#827-864">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Unit&lt;R, Offset = &lt;R as <a class="trait" href="trait.Reader.html" title="trait gimli::read::Reader">Reader</a>&gt;::<a class="associatedtype" href="trait.Reader.html#associatedtype.Offset" title="type gimli::read::Reader::Offset">Offset</a>&gt;<div class="where">where
R: <a class="trait" href="trait.Reader.html" title="trait gimli::read::Reader">Reader</a>&lt;Offset = Offset&gt;,
Offset: <a class="trait" href="trait.ReaderOffset.html" title="trait gimli::read::ReaderOffset">ReaderOffset</a>,</div>{
pub header: <a class="struct" href="struct.UnitHeader.html" title="struct gimli::read::UnitHeader">UnitHeader</a>&lt;R, Offset&gt;,
pub abbreviations: <a class="struct" href="https://doc.rust-lang.org/1.76.0/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="struct.Abbreviations.html" title="struct gimli::read::Abbreviations">Abbreviations</a>&gt;,
pub name: <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;R&gt;,
pub comp_dir: <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;R&gt;,
pub low_pc: <a class="primitive" href="https://doc.rust-lang.org/1.76.0/core/primitive.u64.html">u64</a>,
pub str_offsets_base: <a class="struct" href="../struct.DebugStrOffsetsBase.html" title="struct gimli::DebugStrOffsetsBase">DebugStrOffsetsBase</a>&lt;Offset&gt;,
pub addr_base: <a class="struct" href="../struct.DebugAddrBase.html" title="struct gimli::DebugAddrBase">DebugAddrBase</a>&lt;Offset&gt;,
pub loclists_base: <a class="struct" href="../struct.DebugLocListsBase.html" title="struct gimli::DebugLocListsBase">DebugLocListsBase</a>&lt;Offset&gt;,
pub rnglists_base: <a class="struct" href="../struct.DebugRngListsBase.html" title="struct gimli::DebugRngListsBase">DebugRngListsBase</a>&lt;Offset&gt;,
pub line_program: <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="struct" href="struct.IncompleteLineProgram.html" title="struct gimli::read::IncompleteLineProgram">IncompleteLineProgram</a>&lt;R, Offset&gt;&gt;,
pub dwo_id: <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="struct" href="../struct.DwoId.html" title="struct gimli::DwoId">DwoId</a>&gt;,
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>All of the commonly used information for a unit in the <code>.debug_info</code> or <code>.debug_types</code>
sections.</p>
</div></details><h2 id="fields" class="fields section-header">Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.header" class="structfield section-header"><a href="#structfield.header" class="anchor field">§</a><code>header: <a class="struct" href="struct.UnitHeader.html" title="struct gimli::read::UnitHeader">UnitHeader</a>&lt;R, Offset&gt;</code></span><div class="docblock"><p>The header of the unit.</p>
</div><span id="structfield.abbreviations" class="structfield section-header"><a href="#structfield.abbreviations" class="anchor field">§</a><code>abbreviations: <a class="struct" href="https://doc.rust-lang.org/1.76.0/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="struct.Abbreviations.html" title="struct gimli::read::Abbreviations">Abbreviations</a>&gt;</code></span><div class="docblock"><p>The parsed abbreviations for the unit.</p>
</div><span id="structfield.name" class="structfield section-header"><a href="#structfield.name" class="anchor field">§</a><code>name: <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;R&gt;</code></span><div class="docblock"><p>The <code>DW_AT_name</code> attribute of the unit.</p>
</div><span id="structfield.comp_dir" class="structfield section-header"><a href="#structfield.comp_dir" class="anchor field">§</a><code>comp_dir: <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;R&gt;</code></span><div class="docblock"><p>The <code>DW_AT_comp_dir</code> attribute of the unit.</p>
</div><span id="structfield.low_pc" class="structfield section-header"><a href="#structfield.low_pc" class="anchor field">§</a><code>low_pc: <a class="primitive" href="https://doc.rust-lang.org/1.76.0/core/primitive.u64.html">u64</a></code></span><div class="docblock"><p>The <code>DW_AT_low_pc</code> attribute of the unit. Defaults to 0.</p>
</div><span id="structfield.str_offsets_base" class="structfield section-header"><a href="#structfield.str_offsets_base" class="anchor field">§</a><code>str_offsets_base: <a class="struct" href="../struct.DebugStrOffsetsBase.html" title="struct gimli::DebugStrOffsetsBase">DebugStrOffsetsBase</a>&lt;Offset&gt;</code></span><div class="docblock"><p>The <code>DW_AT_str_offsets_base</code> attribute of the unit. Defaults to 0.</p>
</div><span id="structfield.addr_base" class="structfield section-header"><a href="#structfield.addr_base" class="anchor field">§</a><code>addr_base: <a class="struct" href="../struct.DebugAddrBase.html" title="struct gimli::DebugAddrBase">DebugAddrBase</a>&lt;Offset&gt;</code></span><div class="docblock"><p>The <code>DW_AT_addr_base</code> attribute of the unit. Defaults to 0.</p>
</div><span id="structfield.loclists_base" class="structfield section-header"><a href="#structfield.loclists_base" class="anchor field">§</a><code>loclists_base: <a class="struct" href="../struct.DebugLocListsBase.html" title="struct gimli::DebugLocListsBase">DebugLocListsBase</a>&lt;Offset&gt;</code></span><div class="docblock"><p>The <code>DW_AT_loclists_base</code> attribute of the unit. Defaults to 0.</p>
</div><span id="structfield.rnglists_base" class="structfield section-header"><a href="#structfield.rnglists_base" class="anchor field">§</a><code>rnglists_base: <a class="struct" href="../struct.DebugRngListsBase.html" title="struct gimli::DebugRngListsBase">DebugRngListsBase</a>&lt;Offset&gt;</code></span><div class="docblock"><p>The <code>DW_AT_rnglists_base</code> attribute of the unit. Defaults to 0.</p>
</div><span id="structfield.line_program" class="structfield section-header"><a href="#structfield.line_program" class="anchor field">§</a><code>line_program: <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="struct" href="struct.IncompleteLineProgram.html" title="struct gimli::read::IncompleteLineProgram">IncompleteLineProgram</a>&lt;R, Offset&gt;&gt;</code></span><div class="docblock"><p>The line number program of the unit.</p>
</div><span id="structfield.dwo_id" class="structfield section-header"><a href="#structfield.dwo_id" class="anchor field">§</a><code>dwo_id: <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="struct" href="../struct.DwoId.html" title="struct gimli::DwoId">DwoId</a>&gt;</code></span><div class="docblock"><p>The DWO ID of a skeleton unit or split compilation unit.</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-Unit%3CR%3E" class="impl"><a class="src rightside" href="../../src/gimli/read/dwarf.rs.html#866-1060">source</a><a href="#impl-Unit%3CR%3E" class="anchor">§</a><h3 class="code-header">impl&lt;R: <a class="trait" href="trait.Reader.html" title="trait gimli::read::Reader">Reader</a>&gt; <a class="struct" href="struct.Unit.html" title="struct gimli::read::Unit">Unit</a>&lt;R&gt;</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../../src/gimli/read/dwarf.rs.html#869-872">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(dwarf: &amp;<a class="struct" href="struct.Dwarf.html" title="struct gimli::read::Dwarf">Dwarf</a>&lt;R&gt;, header: <a class="struct" href="struct.UnitHeader.html" title="struct gimli::read::UnitHeader">UnitHeader</a>&lt;R&gt;) -&gt; <a class="type" href="type.Result.html" title="type gimli::read::Result">Result</a>&lt;Self&gt;</h4></section></summary><div class="docblock"><p>Construct a new <code>Unit</code> from the given unit header.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.new_with_abbreviations" class="method"><a class="src rightside" href="../../src/gimli/read/dwarf.rs.html#880-992">source</a><h4 class="code-header">pub fn <a href="#method.new_with_abbreviations" class="fn">new_with_abbreviations</a>(
dwarf: &amp;<a class="struct" href="struct.Dwarf.html" title="struct gimli::read::Dwarf">Dwarf</a>&lt;R&gt;,
header: <a class="struct" href="struct.UnitHeader.html" title="struct gimli::read::UnitHeader">UnitHeader</a>&lt;R&gt;,
abbreviations: <a class="struct" href="https://doc.rust-lang.org/1.76.0/alloc/sync/struct.Arc.html" title="struct alloc::sync::Arc">Arc</a>&lt;<a class="struct" href="struct.Abbreviations.html" title="struct gimli::read::Abbreviations">Abbreviations</a>&gt;
) -&gt; <a class="type" href="type.Result.html" title="type gimli::read::Result">Result</a>&lt;Self&gt;</h4></section></summary><div class="docblock"><p>Construct a new <code>Unit</code> from the given unit header and abbreviations.</p>
<p>The abbreviations for this call can be obtained using <code>dwarf.abbreviations(&amp;header)</code>.
The caller may implement caching to reuse the <code>Abbreviations</code> across units with the
same <code>header.debug_abbrev_offset()</code> value.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.encoding" class="method"><a class="src rightside" href="../../src/gimli/read/dwarf.rs.html#996-998">source</a><h4 class="code-header">pub fn <a href="#method.encoding" class="fn">encoding</a>(&amp;self) -&gt; <a class="struct" href="../struct.Encoding.html" title="struct gimli::Encoding">Encoding</a></h4></section></summary><div class="docblock"><p>Return the encoding parameters for this unit.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.entry" class="method"><a class="src rightside" href="../../src/gimli/read/dwarf.rs.html#1001-1003">source</a><h4 class="code-header">pub fn <a href="#method.entry" class="fn">entry</a>(
&amp;self,
offset: <a class="struct" href="struct.UnitOffset.html" title="struct gimli::read::UnitOffset">UnitOffset</a>&lt;R::<a class="associatedtype" href="trait.Reader.html#associatedtype.Offset" title="type gimli::read::Reader::Offset">Offset</a>&gt;
) -&gt; <a class="type" href="type.Result.html" title="type gimli::read::Result">Result</a>&lt;<a class="struct" href="struct.DebuggingInformationEntry.html" title="struct gimli::read::DebuggingInformationEntry">DebuggingInformationEntry</a>&lt;'_, '_, R&gt;&gt;</h4></section></summary><div class="docblock"><p>Read the <code>DebuggingInformationEntry</code> at the given offset.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.entries" class="method"><a class="src rightside" href="../../src/gimli/read/dwarf.rs.html#1007-1009">source</a><h4 class="code-header">pub fn <a href="#method.entries" class="fn">entries</a>(&amp;self) -&gt; <a class="struct" href="struct.EntriesCursor.html" title="struct gimli::read::EntriesCursor">EntriesCursor</a>&lt;'_, '_, R&gt;</h4></section></summary><div class="docblock"><p>Navigate this units <code>DebuggingInformationEntry</code>s.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.entries_at_offset" class="method"><a class="src rightside" href="../../src/gimli/read/dwarf.rs.html#1014-1016">source</a><h4 class="code-header">pub fn <a href="#method.entries_at_offset" class="fn">entries_at_offset</a>(
&amp;self,
offset: <a class="struct" href="struct.UnitOffset.html" title="struct gimli::read::UnitOffset">UnitOffset</a>&lt;R::<a class="associatedtype" href="trait.Reader.html#associatedtype.Offset" title="type gimli::read::Reader::Offset">Offset</a>&gt;
) -&gt; <a class="type" href="type.Result.html" title="type gimli::read::Result">Result</a>&lt;<a class="struct" href="struct.EntriesCursor.html" title="struct gimli::read::EntriesCursor">EntriesCursor</a>&lt;'_, '_, R&gt;&gt;</h4></section></summary><div class="docblock"><p>Navigate this units <code>DebuggingInformationEntry</code>s
starting at the given offset.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.entries_tree" class="method"><a class="src rightside" href="../../src/gimli/read/dwarf.rs.html#1021-1023">source</a><h4 class="code-header">pub fn <a href="#method.entries_tree" class="fn">entries_tree</a>(
&amp;self,
offset: <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="struct" href="struct.UnitOffset.html" title="struct gimli::read::UnitOffset">UnitOffset</a>&lt;R::<a class="associatedtype" href="trait.Reader.html#associatedtype.Offset" title="type gimli::read::Reader::Offset">Offset</a>&gt;&gt;
) -&gt; <a class="type" href="type.Result.html" title="type gimli::read::Result">Result</a>&lt;<a class="struct" href="struct.EntriesTree.html" title="struct gimli::read::EntriesTree">EntriesTree</a>&lt;'_, '_, R&gt;&gt;</h4></section></summary><div class="docblock"><p>Navigate this units <code>DebuggingInformationEntry</code>s as a tree
starting at the given offset.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.entries_raw" class="method"><a class="src rightside" href="../../src/gimli/read/dwarf.rs.html#1027-1029">source</a><h4 class="code-header">pub fn <a href="#method.entries_raw" class="fn">entries_raw</a>(
&amp;self,
offset: <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="struct" href="struct.UnitOffset.html" title="struct gimli::read::UnitOffset">UnitOffset</a>&lt;R::<a class="associatedtype" href="trait.Reader.html#associatedtype.Offset" title="type gimli::read::Reader::Offset">Offset</a>&gt;&gt;
) -&gt; <a class="type" href="type.Result.html" title="type gimli::read::Result">Result</a>&lt;<a class="struct" href="struct.EntriesRaw.html" title="struct gimli::read::EntriesRaw">EntriesRaw</a>&lt;'_, '_, R&gt;&gt;</h4></section></summary><div class="docblock"><p>Read the raw data that defines the Debugging Information Entries.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.copy_relocated_attributes" class="method"><a class="src rightside" href="../../src/gimli/read/dwarf.rs.html#1034-1040">source</a><h4 class="code-header">pub fn <a href="#method.copy_relocated_attributes" class="fn">copy_relocated_attributes</a>(&amp;mut self, other: &amp;<a class="struct" href="struct.Unit.html" title="struct gimli::read::Unit">Unit</a>&lt;R&gt;)</h4></section></summary><div class="docblock"><p>Copy attributes that are subject to relocation from another unit. This is intended
to be used to copy attributes from a skeleton compilation unit to the corresponding
split compilation unit.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.dwo_name" class="method"><a class="src rightside" href="../../src/gimli/read/dwarf.rs.html#1047-1059">source</a><h4 class="code-header">pub fn <a href="#method.dwo_name" class="fn">dwo_name</a>(&amp;self) -&gt; <a class="type" href="type.Result.html" title="type gimli::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;<a class="enum" href="enum.AttributeValue.html" title="enum gimli::read::AttributeValue">AttributeValue</a>&lt;R&gt;&gt;&gt;</h4></section></summary><div class="docblock"><p>Find the dwo name (if any) for this unit, automatically handling the differences
between the standardized DWARF 5 split DWARF format and the pre-DWARF 5 GNU
extension.</p>
<p>The returned value is relative to this units <code>comp_dir</code>.</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-Debug-for-Unit%3CR,+Offset%3E" class="impl"><a class="src rightside" href="../../src/gimli/read/dwarf.rs.html#826">source</a><a href="#impl-Debug-for-Unit%3CR,+Offset%3E" class="anchor">§</a><h3 class="code-header">impl&lt;R, Offset&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.Unit.html" title="struct gimli::read::Unit">Unit</a>&lt;R, Offset&gt;<div class="where">where
R: <a class="trait" href="trait.Reader.html" title="trait gimli::read::Reader">Reader</a>&lt;Offset = Offset&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>,
Offset: <a class="trait" href="trait.ReaderOffset.html" title="trait gimli::read::ReaderOffset">ReaderOffset</a> + <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a>,</div></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/gimli/read/dwarf.rs.html#826">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></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-Unit%3CR,+Offset%3E" class="impl"><a href="#impl-RefUnwindSafe-for-Unit%3CR,+Offset%3E" class="anchor">§</a><h3 class="code-header">impl&lt;R, Offset&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.Unit.html" title="struct gimli::read::Unit">Unit</a>&lt;R, Offset&gt;<div class="where">where
Offset: <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>,
R: <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-Unit%3CR,+Offset%3E" class="impl"><a href="#impl-Send-for-Unit%3CR,+Offset%3E" class="anchor">§</a><h3 class="code-header">impl&lt;R, Offset&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.Unit.html" title="struct gimli::read::Unit">Unit</a>&lt;R, Offset&gt;<div class="where">where
Offset: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
R: <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-Unit%3CR,+Offset%3E" class="impl"><a href="#impl-Sync-for-Unit%3CR,+Offset%3E" class="anchor">§</a><h3 class="code-header">impl&lt;R, Offset&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.Unit.html" title="struct gimli::read::Unit">Unit</a>&lt;R, Offset&gt;<div class="where">where
Offset: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
R: <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-Unit%3CR,+Offset%3E" class="impl"><a href="#impl-Unpin-for-Unit%3CR,+Offset%3E" class="anchor">§</a><h3 class="code-header">impl&lt;R, Offset&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.Unit.html" title="struct gimli::read::Unit">Unit</a>&lt;R, Offset&gt;<div class="where">where
Offset: <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,
R: <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-Unit%3CR,+Offset%3E" class="impl"><a href="#impl-UnwindSafe-for-Unit%3CR,+Offset%3E" class="anchor">§</a><h3 class="code-header">impl&lt;R, Offset&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.Unit.html" title="struct gimli::read::Unit">Unit</a>&lt;R, Offset&gt;<div class="where">where
Offset: <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>,
R: <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/core/primitive.reference.html">&amp;T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.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/core/primitive.reference.html">&amp;mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.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-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>