This commit is contained in:
edg-l 2024-02-24 10:45:46 +00:00
parent a1bd044c0d
commit c01b45e14f
51 changed files with 763 additions and 155 deletions

File diff suppressed because one or more lines are too long

View file

@ -1,2 +1,2 @@
<!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="List of all items in this crate"><title>List of all items in this crate</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="edlang_check" 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="../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 mod sys"><!--[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="../edlang_check/index.html">edlang_check</a><span class="version">0.0.1-alpha.8</span></h2></div><div class="sidebar-elems"></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="../edlang_check/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"><h1>List of all items</h1></section></div></main></body></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="List of all items in this crate"><title>List of all items in this crate</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="edlang_check" 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="../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 mod sys"><!--[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="../edlang_check/index.html">edlang_check</a><span class="version">0.0.1-alpha.8</span></h2></div><div class="sidebar-elems"><section><ul class="block"><li><a href="#functions">Functions</a></li></ul></section></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="../edlang_check/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"><h1>List of all items</h1><h3 id="functions">Functions</h3><ul class="all-items"><li><a href="fn.lowering_error_to_report.html">lowering_error_to_report</a></li></ul></section></div></main></body></html>

View file

@ -0,0 +1,6 @@
<!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="Creates a report from a lowering error."><title>lowering_error_to_report in edlang_check - 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="edlang_check" 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 fn"><!--[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="../edlang_check/index.html">edlang_check</a><span class="version">0.0.1-alpha.8</span></h2></div><div class="sidebar-elems"></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="../edlang_check/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>Function <a href="index.html">edlang_check</a>::<wbr><a class="fn" href="#">lowering_error_to_report</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/edlang_check/lib.rs.html#8-109">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub fn lowering_error_to_report(
error: <a class="enum" href="../edlang_lowering/errors/enum.LoweringError.html" title="enum edlang_lowering::errors::LoweringError">LoweringError</a>,
session: &amp;<a class="struct" href="../edlang_session/struct.Session.html" title="struct edlang_session::Session">Session</a>
) -&gt; <a class="struct" href="../ariadne/struct.Report.html" title="struct ariadne::Report">Report</a>&lt;'_, (<a class="struct" href="https://doc.rust-lang.org/1.76.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, <a class="struct" href="https://doc.rust-lang.org/1.76.0/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.usize.html">usize</a>&gt;)&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Creates a report from a lowering error.</p>
</div></details></section></div></main></body></html>

View file

@ -1,3 +1,3 @@
<!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 `edlang_check` crate."><title>edlang_check - 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="edlang_check" 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="../crates.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 mod crate"><!--[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="../edlang_check/index.html">edlang_check</a><span class="version">0.0.1-alpha.8</span></h2></div><div class="sidebar-elems"><ul class="block">
<li><a id="all-types" href="all.html">All Items</a></li></ul></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="../edlang_check/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>Crate <a class="mod" href="#">edlang_check</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/edlang_check/lib.rs.html#1">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div></section></div></main></body></html>
<li><a id="all-types" href="all.html">All Items</a></li></ul><section><ul class="block"><li><a href="#functions">Functions</a></li></ul></section></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="../edlang_check/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>Crate <a class="mod" href="#">edlang_check</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/edlang_check/lib.rs.html#1-109">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2><ul class="item-table"><li><div class="item-name"><a class="fn" href="fn.lowering_error_to_report.html" title="fn edlang_check::lowering_error_to_report">lowering_error_to_report</a></div><div class="desc docblock-short">Creates a report from a lowering error.</div></li></ul></section></div></main></body></html>

View file

@ -1 +1 @@
window.SIDEBAR_ITEMS = {};
window.SIDEBAR_ITEMS = {"fn":["lowering_error_to_report"]};

View file

@ -1,2 +1,2 @@
<!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 `main` fn in crate `edlang_driver`."><title>main in edlang_driver - 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="edlang_driver" 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 fn"><!--[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="../edlang_driver/index.html">edlang_driver</a><span class="version">0.0.1-alpha.8</span></h2></div><div class="sidebar-elems"></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="../edlang_driver/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>Function <a href="index.html">edlang_driver</a>::<wbr><a class="fn" href="#">main</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/edlang_driver/lib.rs.html#48-147">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub fn main() -&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;<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/1.76.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html" title="trait core::error::Error">Error</a>&gt;&gt;</code></pre></section></div></main></body></html>
<main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../edlang_driver/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>Function <a href="index.html">edlang_driver</a>::<wbr><a class="fn" href="#">main</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/edlang_driver/lib.rs.html#48-155">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub fn main() -&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;<a class="primitive" href="https://doc.rust-lang.org/1.76.0/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/1.76.0/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a>&lt;dyn <a class="trait" href="https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html" title="trait core::error::Error">Error</a>&gt;&gt;</code></pre></section></div></main></body></html>

View file

@ -1,3 +1,3 @@
<!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 `edlang_driver` crate."><title>edlang_driver - 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="edlang_driver" 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="../crates.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 mod crate"><!--[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="../edlang_driver/index.html">edlang_driver</a><span class="version">0.0.1-alpha.8</span></h2></div><div class="sidebar-elems"><ul class="block">
<li><a id="all-types" href="all.html">All Items</a></li></ul><section><ul class="block"><li><a href="#structs">Structs</a></li><li><a href="#functions">Functions</a></li></ul></section></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="../edlang_driver/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>Crate <a class="mod" href="#">edlang_driver</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/edlang_driver/lib.rs.html#1-147">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.CompilerArgs.html" title="struct edlang_driver::CompilerArgs">CompilerArgs</a></div></li></ul><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2><ul class="item-table"><li><div class="item-name"><a class="fn" href="fn.main.html" title="fn edlang_driver::main">main</a></div></li></ul></section></div></main></body></html>
<main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../edlang_driver/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>Crate <a class="mod" href="#">edlang_driver</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/edlang_driver/lib.rs.html#1-155">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.CompilerArgs.html" title="struct edlang_driver::CompilerArgs">CompilerArgs</a></div></li></ul><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2><ul class="item-table"><li><div class="item-name"><a class="fn" href="fn.main.html" title="fn edlang_driver::main">main</a></div></li></ul></section></div></main></body></html>

View file

@ -1,2 +1,2 @@
<!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="List of all items in this crate"><title>List of all items in this crate</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="edlang_lowering" 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="../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 mod sys"><!--[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="../edlang_lowering/index.html">edlang_lowering</a><span class="version">0.0.1-alpha.8</span></h2></div><div class="sidebar-elems"><section><ul class="block"><li><a href="#functions">Functions</a></li></ul></section></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="../edlang_lowering/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"><h1>List of all items</h1><h3 id="functions">Functions</h3><ul class="all-items"><li><a href="fn.lower_modules.html">lower_modules</a></li><li><a href="fn.lower_type.html">lower_type</a></li></ul></section></div></main></body></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="List of all items in this crate"><title>List of all items in this crate</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="edlang_lowering" 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="../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 mod sys"><!--[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="../edlang_lowering/index.html">edlang_lowering</a><span class="version">0.0.1-alpha.8</span></h2></div><div class="sidebar-elems"><section><ul class="block"><li><a href="#enums">Enums</a></li><li><a href="#functions">Functions</a></li></ul></section></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="../edlang_lowering/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"><h1>List of all items</h1><h3 id="enums">Enums</h3><ul class="all-items"><li><a href="errors/enum.LoweringError.html">errors::LoweringError</a></li></ul><h3 id="functions">Functions</h3><ul class="all-items"><li><a href="fn.lower_modules.html">lower_modules</a></li><li><a href="fn.lower_type.html">lower_type</a></li></ul></section></div></main></body></html>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,2 @@
<!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 `errors` mod in crate `edlang_lowering`."><title>edlang_lowering::errors - 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="edlang_lowering" 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 mod"><!--[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="../../edlang_lowering/index.html">edlang_lowering</a><span class="version">0.0.1-alpha.8</span></h2></div><h2 class="location"><a href="#">Module errors</a></h2><div class="sidebar-elems"><section><ul class="block"><li><a href="#enums">Enums</a></li></ul></section><h2><a href="../index.html">In crate edlang_lowering</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="../../edlang_lowering/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>Module <a href="../index.html">edlang_lowering</a>::<wbr><a class="mod" href="#">errors</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/edlang_lowering/errors.rs.html#1-30">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><h2 id="enums" class="section-header"><a href="#enums">Enums</a></h2><ul class="item-table"><li><div class="item-name"><a class="enum" href="enum.LoweringError.html" title="enum edlang_lowering::errors::LoweringError">LoweringError</a></div></li></ul></section></div></main></body></html>

View file

@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"enum":["LoweringError"]};

View file

@ -1,2 +1,2 @@
<!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 `lower_modules` fn in crate `edlang_lowering`."><title>lower_modules in edlang_lowering - 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="edlang_lowering" 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 fn"><!--[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="../edlang_lowering/index.html">edlang_lowering</a><span class="version">0.0.1-alpha.8</span></h2></div><div class="sidebar-elems"></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="../edlang_lowering/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>Function <a href="index.html">edlang_lowering</a>::<wbr><a class="fn" href="#">lower_modules</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/edlang_lowering/lib.rs.html#16-40">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub fn lower_modules(modules: &amp;[<a class="struct" href="../edlang_ast/struct.Module.html" title="struct edlang_ast::Module">Module</a>]) -&gt; <a class="struct" href="../edlang_ir/struct.ProgramBody.html" title="struct edlang_ir::ProgramBody">ProgramBody</a></code></pre></section></div></main></body></html>
<main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../edlang_lowering/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>Function <a href="index.html">edlang_lowering</a>::<wbr><a class="fn" href="#">lower_modules</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/edlang_lowering/lib.rs.html#18-42">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub fn lower_modules(modules: &amp;[<a class="struct" href="../edlang_ast/struct.Module.html" title="struct edlang_ast::Module">Module</a>]) -&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;<a class="struct" href="../edlang_ir/struct.ProgramBody.html" title="struct edlang_ir::ProgramBody">ProgramBody</a>, <a class="enum" href="errors/enum.LoweringError.html" title="enum edlang_lowering::errors::LoweringError">LoweringError</a>&gt;</code></pre></section></div></main></body></html>

View file

@ -1,2 +1,6 @@
<!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 `lower_type` fn in crate `edlang_lowering`."><title>lower_type in edlang_lowering - 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="edlang_lowering" 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 fn"><!--[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="../edlang_lowering/index.html">edlang_lowering</a><span class="version">0.0.1-alpha.8</span></h2></div><div class="sidebar-elems"></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="../edlang_lowering/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>Function <a href="index.html">edlang_lowering</a>::<wbr><a class="fn" href="#">lower_type</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/edlang_lowering/lib.rs.html#1031-1118">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub fn lower_type(ctx: &amp;BuildCtx, t: &amp;<a class="struct" href="../edlang_ast/struct.Type.html" title="struct edlang_ast::Type">Type</a>, module_id: <a class="struct" href="../edlang_ir/struct.DefId.html" title="struct edlang_ir::DefId">DefId</a>) -&gt; <a class="struct" href="../edlang_ir/struct.TypeInfo.html" title="struct edlang_ir::TypeInfo">TypeInfo</a></code></pre></section></div></main></body></html>
<main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../edlang_lowering/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>Function <a href="index.html">edlang_lowering</a>::<wbr><a class="fn" href="#">lower_type</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/edlang_lowering/lib.rs.html#1080-1174">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub fn lower_type(
ctx: &amp;BuildCtx,
t: &amp;<a class="struct" href="../edlang_ast/struct.Type.html" title="struct edlang_ast::Type">Type</a>,
module_id: <a class="struct" href="../edlang_ir/struct.DefId.html" title="struct edlang_ir::DefId">DefId</a>
) -&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;<a class="struct" href="../edlang_ir/struct.TypeInfo.html" title="struct edlang_ir::TypeInfo">TypeInfo</a>, <a class="enum" href="errors/enum.LoweringError.html" title="enum edlang_lowering::errors::LoweringError">LoweringError</a>&gt;</code></pre></section></div></main></body></html>

View file

@ -1,3 +1,3 @@
<!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 `edlang_lowering` crate."><title>edlang_lowering - 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="edlang_lowering" 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="../crates.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 mod crate"><!--[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="../edlang_lowering/index.html">edlang_lowering</a><span class="version">0.0.1-alpha.8</span></h2></div><div class="sidebar-elems"><ul class="block">
<li><a id="all-types" href="all.html">All Items</a></li></ul><section><ul class="block"><li><a href="#functions">Functions</a></li></ul></section></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="../edlang_lowering/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>Crate <a class="mod" href="#">edlang_lowering</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/edlang_lowering/lib.rs.html#1-1118">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2><ul class="item-table"><li><div class="item-name"><a class="fn" href="fn.lower_modules.html" title="fn edlang_lowering::lower_modules">lower_modules</a></div></li><li><div class="item-name"><a class="fn" href="fn.lower_type.html" title="fn edlang_lowering::lower_type">lower_type</a></div></li></ul></section></div></main></body></html>
<li><a id="all-types" href="all.html">All Items</a></li></ul><section><ul class="block"><li><a href="#modules">Modules</a></li><li><a href="#functions">Functions</a></li></ul></section></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="../edlang_lowering/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>Crate <a class="mod" href="#">edlang_lowering</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/edlang_lowering/lib.rs.html#1-1174">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><h2 id="modules" class="section-header"><a href="#modules">Modules</a></h2><ul class="item-table"><li><div class="item-name"><a class="mod" href="errors/index.html" title="mod edlang_lowering::errors">errors</a></div></li></ul><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2><ul class="item-table"><li><div class="item-name"><a class="fn" href="fn.lower_modules.html" title="fn edlang_lowering::lower_modules">lower_modules</a></div></li><li><div class="item-name"><a class="fn" href="fn.lower_type.html" title="fn edlang_lowering::lower_type">lower_type</a></div></li></ul></section></div></main></body></html>

View file

@ -1 +1 @@
window.SIDEBAR_ITEMS = {"fn":["lower_modules","lower_type"]};
window.SIDEBAR_ITEMS = {"fn":["lower_modules","lower_type"],"mod":["errors"]};

View file

@ -1,3 +1,3 @@
<!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 `edlang_span` crate."><title>edlang_span - 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="edlang_span" 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="../crates.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 mod crate"><!--[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="../edlang_span/index.html">edlang_span</a><span class="version">0.0.1-alpha.8</span></h2></div><div class="sidebar-elems"><ul class="block">
<li><a id="all-types" href="all.html">All Items</a></li></ul><section><ul class="block"><li><a href="#structs">Structs</a></li></ul></section></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="../edlang_span/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>Crate <a class="mod" href="#">edlang_span</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/edlang_span/lib.rs.html#1-11">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.Span.html" title="struct edlang_span::Span">Span</a></div></li></ul></section></div></main></body></html>
<main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../edlang_span/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>Crate <a class="mod" href="#">edlang_span</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/edlang_span/lib.rs.html#1-19">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><h2 id="structs" class="section-header"><a href="#structs">Structs</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.Span.html" title="struct edlang_span::Span">Span</a></div></li></ul></section></div></main></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -25,7 +25,7 @@ var srcIndex = new Map(JSON.parse('[\
["edlang_codegen_llvm",["",[],["codegen.rs","lib.rs","linker.rs"]]],\
["edlang_driver",["",[],["lib.rs"]]],\
["edlang_ir",["",[],["lib.rs","scalar_int.rs"]]],\
["edlang_lowering",["",[],["common.rs","lib.rs","prepass.rs"]]],\
["edlang_lowering",["",[],["common.rs","errors.rs","lib.rs","prepass.rs"]]],\
["edlang_parser",["",[],["error.rs","lexer.rs","lib.rs","tokens.rs"]]],\
["edlang_session",["",[],["lib.rs"]]],\
["edlang_span",["",[],["lib.rs"]]],\

View file

@ -1,4 +1,220 @@
<!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="Source of the Rust file `lib/edlang_check/src/lib.rs`."><title>lib.rs - source</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="edlang_check" 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="../../static.files/src-script-39ed315d46fb705f.js"></script><script defer src="../../src-files.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 src"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"></nav><div class="sidebar-resizer"></div>
<main><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" 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="example-wrap"><div data-nosnippet><pre class="src-line-numbers"><a href="#1" id="1">1</a>
</pre></div><pre class="rust"><code>
<a href="#2" id="2">2</a>
<a href="#3" id="3">3</a>
<a href="#4" id="4">4</a>
<a href="#5" id="5">5</a>
<a href="#6" id="6">6</a>
<a href="#7" id="7">7</a>
<a href="#8" id="8">8</a>
<a href="#9" id="9">9</a>
<a href="#10" id="10">10</a>
<a href="#11" id="11">11</a>
<a href="#12" id="12">12</a>
<a href="#13" id="13">13</a>
<a href="#14" id="14">14</a>
<a href="#15" id="15">15</a>
<a href="#16" id="16">16</a>
<a href="#17" id="17">17</a>
<a href="#18" id="18">18</a>
<a href="#19" id="19">19</a>
<a href="#20" id="20">20</a>
<a href="#21" id="21">21</a>
<a href="#22" id="22">22</a>
<a href="#23" id="23">23</a>
<a href="#24" id="24">24</a>
<a href="#25" id="25">25</a>
<a href="#26" id="26">26</a>
<a href="#27" id="27">27</a>
<a href="#28" id="28">28</a>
<a href="#29" id="29">29</a>
<a href="#30" id="30">30</a>
<a href="#31" id="31">31</a>
<a href="#32" id="32">32</a>
<a href="#33" id="33">33</a>
<a href="#34" id="34">34</a>
<a href="#35" id="35">35</a>
<a href="#36" id="36">36</a>
<a href="#37" id="37">37</a>
<a href="#38" id="38">38</a>
<a href="#39" id="39">39</a>
<a href="#40" id="40">40</a>
<a href="#41" id="41">41</a>
<a href="#42" id="42">42</a>
<a href="#43" id="43">43</a>
<a href="#44" id="44">44</a>
<a href="#45" id="45">45</a>
<a href="#46" id="46">46</a>
<a href="#47" id="47">47</a>
<a href="#48" id="48">48</a>
<a href="#49" id="49">49</a>
<a href="#50" id="50">50</a>
<a href="#51" id="51">51</a>
<a href="#52" id="52">52</a>
<a href="#53" id="53">53</a>
<a href="#54" id="54">54</a>
<a href="#55" id="55">55</a>
<a href="#56" id="56">56</a>
<a href="#57" id="57">57</a>
<a href="#58" id="58">58</a>
<a href="#59" id="59">59</a>
<a href="#60" id="60">60</a>
<a href="#61" id="61">61</a>
<a href="#62" id="62">62</a>
<a href="#63" id="63">63</a>
<a href="#64" id="64">64</a>
<a href="#65" id="65">65</a>
<a href="#66" id="66">66</a>
<a href="#67" id="67">67</a>
<a href="#68" id="68">68</a>
<a href="#69" id="69">69</a>
<a href="#70" id="70">70</a>
<a href="#71" id="71">71</a>
<a href="#72" id="72">72</a>
<a href="#73" id="73">73</a>
<a href="#74" id="74">74</a>
<a href="#75" id="75">75</a>
<a href="#76" id="76">76</a>
<a href="#77" id="77">77</a>
<a href="#78" id="78">78</a>
<a href="#79" id="79">79</a>
<a href="#80" id="80">80</a>
<a href="#81" id="81">81</a>
<a href="#82" id="82">82</a>
<a href="#83" id="83">83</a>
<a href="#84" id="84">84</a>
<a href="#85" id="85">85</a>
<a href="#86" id="86">86</a>
<a href="#87" id="87">87</a>
<a href="#88" id="88">88</a>
<a href="#89" id="89">89</a>
<a href="#90" id="90">90</a>
<a href="#91" id="91">91</a>
<a href="#92" id="92">92</a>
<a href="#93" id="93">93</a>
<a href="#94" id="94">94</a>
<a href="#95" id="95">95</a>
<a href="#96" id="96">96</a>
<a href="#97" id="97">97</a>
<a href="#98" id="98">98</a>
<a href="#99" id="99">99</a>
<a href="#100" id="100">100</a>
<a href="#101" id="101">101</a>
<a href="#102" id="102">102</a>
<a href="#103" id="103">103</a>
<a href="#104" id="104">104</a>
<a href="#105" id="105">105</a>
<a href="#106" id="106">106</a>
<a href="#107" id="107">107</a>
<a href="#108" id="108">108</a>
<a href="#109" id="109">109</a>
</pre></div><pre class="rust"><code><span class="kw">use </span>std::ops::Range;
<span class="kw">use </span>ariadne::{ColorGenerator, Label, Report, ReportKind};
<span class="kw">use </span>edlang_lowering::errors::LoweringError;
<span class="kw">use </span>edlang_session::Session;
<span class="doccomment">/// Creates a report from a lowering error.
</span><span class="kw">pub fn </span>lowering_error_to_report(
error: LoweringError,
session: <span class="kw-2">&amp;</span>Session,
) -&gt; Report&lt;(String, Range&lt;usize&gt;)&gt; {
<span class="kw">let </span>path = session.file_path.display().to_string();
<span class="kw">let </span><span class="kw-2">mut </span>colors = ColorGenerator::new();
colors.next();
<span class="kw">match </span>error {
LoweringError::ModuleNotFound { span, module } =&gt; {
<span class="kw">let </span>offset = span.lo;
Report::build(ReportKind::Error, path.clone(), offset)
.with_code(<span class="string">"E1"</span>)
.with_label(
Label::new((path, span.into()))
.with_message(<span class="macro">format!</span>(<span class="string">"Module {module:?} not found."</span>))
.with_color(colors.next()),
)
.with_message(<span class="string">"Unresolved import."</span>)
.finish()
}
LoweringError::FunctionNotFound { span, function } =&gt; {
Report::build(ReportKind::Error, path.clone(), span.lo)
.with_code(<span class="string">"EFNNOTFOUND"</span>)
.with_label(
Label::new((path, span.into()))
.with_message(<span class="macro">format!</span>(<span class="string">"Function {function:?} not found."</span>))
.with_color(colors.next()),
)
.finish()
},
LoweringError::ImportNotFound { import_span, module_span, symbol } =&gt; {
<span class="kw">let </span>offset = symbol.span.lo;
Report::build(ReportKind::Error, path.clone(), offset)
.with_code(<span class="string">"E2"</span>)
.with_label(
Label::new((path.clone(), module_span.into()))
.with_message(<span class="string">"In module this module."</span>),
)
.with_label(
Label::new((path.clone(), import_span.into()))
.with_message(<span class="string">"In this import statement"</span>),
)
.with_label(
Label::new((path, symbol.span.into()))
.with_message(<span class="macro">format!</span>(<span class="string">"Failed to find symbol {:?}"</span>, symbol.name))
.with_color(colors.next()),
)
.with_message(<span class="string">"Unresolved import."</span>)
.finish()
},
LoweringError::BorrowNotMutable { span, name, type_span } =&gt; {
<span class="kw">let </span><span class="kw-2">mut </span>labels = <span class="macro">vec!</span>[
Label::new((path.clone(), span.into()))
.with_message(<span class="macro">format!</span>(<span class="string">"Can't mutate {name:?} because it's behind a immutable borrow"</span>))
.with_color(colors.next())
];
<span class="kw">if let </span><span class="prelude-val">Some</span>(type_span) = type_span {
labels.push(Label::new((path.clone(), type_span.into()))
.with_message(<span class="macro">format!</span>(<span class="string">"Variable {name:?} has this type"</span>))
.with_color(colors.next()));
}
Report::build(ReportKind::Error, path.clone(), span.lo)
.with_code(<span class="string">"EREFMUT"</span>)
.with_labels(labels)
.finish()
},
LoweringError::UnrecognizedType { span, name } =&gt; {
Report::build(ReportKind::Error, path.clone(), span.lo)
.with_code(<span class="string">"E3"</span>)
.with_label(
Label::new((path, span.into()))
.with_message(<span class="macro">format!</span>(<span class="string">"Failed to find type {:?}"</span>, name))
.with_color(colors.next()),
)
.with_message(<span class="macro">format!</span>(<span class="string">"Unresolved type {:?}."</span>, name))
.finish()
},
LoweringError::IdNotFound { span, id } =&gt; {
Report::build(ReportKind::Error, path.clone(), span.lo)
.with_code(<span class="string">"E_ID"</span>)
.with_label(
Label::new((path, span.into()))
.with_message(<span class="string">"Failed to definition id"</span>)
.with_color(colors.next()),
)
.with_message(<span class="macro">format!</span>(<span class="string">"Failed to find definition id {id:?}, this is most likely a compiler bug or a unimplemented lowering"</span>))
.finish()
},
LoweringError::NotYetImplemented { span, message } =&gt; {
Report::build(ReportKind::Error, path.clone(), span.lo)
.with_code(<span class="string">"TODO"</span>)
.with_label(
Label::new((path, span.into()))
.with_message(message)
.with_color(colors.next()),
)
.finish()
},
}
}
</code></pre></div></section></main></body></html>

View file

@ -146,6 +146,14 @@
<a href="#145" id="145">145</a>
<a href="#146" id="146">146</a>
<a href="#147" id="147">147</a>
<a href="#148" id="148">148</a>
<a href="#149" id="149">149</a>
<a href="#150" id="150">150</a>
<a href="#151" id="151">151</a>
<a href="#152" id="152">152</a>
<a href="#153" id="153">153</a>
<a href="#154" id="154">154</a>
<a href="#155" id="155">155</a>
</pre></div><pre class="rust"><code><span class="kw">use </span>std::{error::Error, path::PathBuf, time::Instant};
<span class="kw">use </span>ariadne::Source;
@ -273,7 +281,15 @@
<span class="kw">return </span><span class="prelude-val">Ok</span>(());
}
<span class="kw">let </span>program_ir = lower_modules(<span class="kw-2">&amp;</span>[module.clone()]);
<span class="kw">let </span>program_ir = <span class="kw">match </span>lower_modules(<span class="kw-2">&amp;</span>[module.clone()]) {
<span class="prelude-val">Ok</span>(ir) =&gt; ir,
<span class="prelude-val">Err</span>(error) =&gt; {
<span class="kw">let </span>report = edlang_check::lowering_error_to_report(error, <span class="kw-2">&amp;</span>session);
<span class="kw">let </span>path = session.file_path.display().to_string();
report.eprint((path, session.source.clone()))<span class="question-mark">?</span>;
std::process::exit(<span class="number">1</span>);
}
};
<span class="kw">if </span>args.ir {
<span class="macro">println!</span>(<span class="string">"{:#?}"</span>, program_ir);

View file

@ -0,0 +1,62 @@
<!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="Source of the Rust file `lib/edlang_lowering/src/errors.rs`."><title>errors.rs - source</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="edlang_lowering" 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="../../static.files/src-script-39ed315d46fb705f.js"></script><script defer src="../../src-files.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 src"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"></nav><div class="sidebar-resizer"></div>
<main><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" 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="example-wrap"><div data-nosnippet><pre class="src-line-numbers"><a href="#1" id="1">1</a>
<a href="#2" id="2">2</a>
<a href="#3" id="3">3</a>
<a href="#4" id="4">4</a>
<a href="#5" id="5">5</a>
<a href="#6" id="6">6</a>
<a href="#7" id="7">7</a>
<a href="#8" id="8">8</a>
<a href="#9" id="9">9</a>
<a href="#10" id="10">10</a>
<a href="#11" id="11">11</a>
<a href="#12" id="12">12</a>
<a href="#13" id="13">13</a>
<a href="#14" id="14">14</a>
<a href="#15" id="15">15</a>
<a href="#16" id="16">16</a>
<a href="#17" id="17">17</a>
<a href="#18" id="18">18</a>
<a href="#19" id="19">19</a>
<a href="#20" id="20">20</a>
<a href="#21" id="21">21</a>
<a href="#22" id="22">22</a>
<a href="#23" id="23">23</a>
<a href="#24" id="24">24</a>
<a href="#25" id="25">25</a>
<a href="#26" id="26">26</a>
<a href="#27" id="27">27</a>
<a href="#28" id="28">28</a>
<a href="#29" id="29">29</a>
<a href="#30" id="30">30</a>
</pre></div><pre class="rust"><code><span class="kw">use </span>edlang_ast::{Ident, Span};
<span class="kw">use </span>thiserror::Error;
<span class="kw">use </span><span class="kw">crate</span>::DefId;
<span class="attr">#[derive(Debug, Error, Clone)]
</span><span class="kw">pub enum </span>LoweringError {
<span class="attr">#[error(<span class="string">"module {module:?} not found"</span>)]
</span>ModuleNotFound { span: Span, module: String },
<span class="attr">#[error(<span class="string">"function {function:?} not found"</span>)]
</span>FunctionNotFound { span: Span, function: String },
<span class="attr">#[error(<span class="string">"symbol {:?} not found"</span>, symbol.name)]
</span>ImportNotFound {
module_span: Span,
import_span: Span,
symbol: Ident,
},
<span class="attr">#[error(<span class="string">"trying to mutate a non-mutable reference"</span>)]
</span>BorrowNotMutable {
span: Span,
type_span: <span class="prelude-ty">Option</span>&lt;Span&gt;,
name: String,
},
<span class="attr">#[error(<span class="string">"unrecognized type {name}"</span>)]
</span>UnrecognizedType { span: Span, name: String },
<span class="attr">#[error(<span class="string">"id not found"</span>)]
</span>IdNotFound { span: Span, id: DefId },
<span class="attr">#[error(<span class="string">"feature not yet implemented: {message}"</span>)]
</span>NotYetImplemented { span: Span, message: <span class="kw-2">&amp;</span><span class="lifetime">'static </span>str },
}
</code></pre></div></section></main></body></html>

View file

@ -1117,12 +1117,69 @@
<a href="#1116" id="1116">1116</a>
<a href="#1117" id="1117">1117</a>
<a href="#1118" id="1118">1118</a>
<a href="#1119" id="1119">1119</a>
<a href="#1120" id="1120">1120</a>
<a href="#1121" id="1121">1121</a>
<a href="#1122" id="1122">1122</a>
<a href="#1123" id="1123">1123</a>
<a href="#1124" id="1124">1124</a>
<a href="#1125" id="1125">1125</a>
<a href="#1126" id="1126">1126</a>
<a href="#1127" id="1127">1127</a>
<a href="#1128" id="1128">1128</a>
<a href="#1129" id="1129">1129</a>
<a href="#1130" id="1130">1130</a>
<a href="#1131" id="1131">1131</a>
<a href="#1132" id="1132">1132</a>
<a href="#1133" id="1133">1133</a>
<a href="#1134" id="1134">1134</a>
<a href="#1135" id="1135">1135</a>
<a href="#1136" id="1136">1136</a>
<a href="#1137" id="1137">1137</a>
<a href="#1138" id="1138">1138</a>
<a href="#1139" id="1139">1139</a>
<a href="#1140" id="1140">1140</a>
<a href="#1141" id="1141">1141</a>
<a href="#1142" id="1142">1142</a>
<a href="#1143" id="1143">1143</a>
<a href="#1144" id="1144">1144</a>
<a href="#1145" id="1145">1145</a>
<a href="#1146" id="1146">1146</a>
<a href="#1147" id="1147">1147</a>
<a href="#1148" id="1148">1148</a>
<a href="#1149" id="1149">1149</a>
<a href="#1150" id="1150">1150</a>
<a href="#1151" id="1151">1151</a>
<a href="#1152" id="1152">1152</a>
<a href="#1153" id="1153">1153</a>
<a href="#1154" id="1154">1154</a>
<a href="#1155" id="1155">1155</a>
<a href="#1156" id="1156">1156</a>
<a href="#1157" id="1157">1157</a>
<a href="#1158" id="1158">1158</a>
<a href="#1159" id="1159">1159</a>
<a href="#1160" id="1160">1160</a>
<a href="#1161" id="1161">1161</a>
<a href="#1162" id="1162">1162</a>
<a href="#1163" id="1163">1163</a>
<a href="#1164" id="1164">1164</a>
<a href="#1165" id="1165">1165</a>
<a href="#1166" id="1166">1166</a>
<a href="#1167" id="1167">1167</a>
<a href="#1168" id="1168">1168</a>
<a href="#1169" id="1169">1169</a>
<a href="#1170" id="1170">1170</a>
<a href="#1171" id="1171">1171</a>
<a href="#1172" id="1172">1172</a>
<a href="#1173" id="1173">1173</a>
<a href="#1174" id="1174">1174</a>
</pre></div><pre class="rust"><code><span class="kw">use </span>std::collections::HashMap;
<span class="kw">use </span>ast::{BinaryOp, ModuleStatement, Span, WhileStmt};
<span class="kw">use </span>common::{BodyBuilder, BuildCtx};
<span class="kw">use </span>edlang_ast <span class="kw">as </span>ast;
<span class="kw">use </span>edlang_ir <span class="kw">as </span>ir;
<span class="kw">use </span>errors::LoweringError;
<span class="kw">use </span>ir::{
AdtBody, AdtVariant, BasicBlock, Body, DefId, Local, LocalKind, Operand, Place, PlaceElem,
ProgramBody, RValue, Statement, StatementKind, SwitchTarget, Terminator, TypeInfo, TypeKind,
@ -1130,19 +1187,20 @@
<span class="kw">use </span>tracing::trace;
<span class="kw">mod </span>common;
<span class="kw">pub mod </span>errors;
<span class="kw">mod </span>prepass;
<span class="kw">pub fn </span>lower_modules(modules: <span class="kw-2">&amp;</span>[ast::Module]) -&gt; ProgramBody {
<span class="kw">pub fn </span>lower_modules(modules: <span class="kw-2">&amp;</span>[ast::Module]) -&gt; <span class="prelude-ty">Result</span>&lt;ProgramBody, LoweringError&gt; {
<span class="kw">let </span><span class="kw-2">mut </span>ctx = BuildCtx::default();
<span class="comment">// resolve symbols
</span><span class="kw">for </span>module <span class="kw">in </span>modules {
ctx = prepass::prepass_module(ctx, module);
ctx = prepass::prepass_module(ctx, module)<span class="question-mark">?</span>;
}
<span class="comment">// resolve imports
</span><span class="kw">for </span>module <span class="kw">in </span>modules {
ctx = prepass::prepass_imports(ctx, module);
ctx = prepass::prepass_imports(ctx, module)<span class="question-mark">?</span>;
}
<span class="kw">for </span>mod_def <span class="kw">in </span>modules {
@ -1152,19 +1210,23 @@
.get(<span class="kw-2">&amp;</span>mod_def.name.name)
.expect(<span class="string">"module should exist"</span>);
ctx = lower_module(ctx, mod_def, id);
ctx = lower_module(ctx, mod_def, id)<span class="question-mark">?</span>;
}
ctx.body
<span class="prelude-val">Ok</span>(ctx.body)
}
<span class="kw">fn </span>lower_module(<span class="kw-2">mut </span>ctx: BuildCtx, module: <span class="kw-2">&amp;</span>ast::Module, id: DefId) -&gt; BuildCtx {
<span class="kw">fn </span>lower_module(
<span class="kw-2">mut </span>ctx: BuildCtx,
module: <span class="kw-2">&amp;</span>ast::Module,
id: DefId,
) -&gt; <span class="prelude-ty">Result</span>&lt;BuildCtx, LoweringError&gt; {
<span class="comment">// lower first structs, constants, types
</span><span class="kw">for </span>content <span class="kw">in </span><span class="kw-2">&amp;</span>module.contents {
<span class="kw">match </span>content {
ModuleStatement::Constant(<span class="kw">_</span>) =&gt; <span class="macro">todo!</span>(),
ModuleStatement::Struct(info) =&gt; {
ctx = lower_struct(ctx, info, id);
ctx = lower_struct(ctx, info, id)<span class="question-mark">?</span>;
}
<span class="comment">// ModuleStatement::Type(_) =&gt; todo!(),
</span><span class="kw">_ </span>=&gt; {}
@ -1182,12 +1244,12 @@
<span class="kw">let </span>ret_type;
<span class="kw">for </span>arg <span class="kw">in </span><span class="kw-2">&amp;</span>fn_def.params {
<span class="kw">let </span>ty = lower_type(<span class="kw-2">&amp;</span>ctx, <span class="kw-2">&amp;</span>arg.arg_type, id);
<span class="kw">let </span>ty = lower_type(<span class="kw-2">&amp;</span>ctx, <span class="kw-2">&amp;</span>arg.arg_type, id)<span class="question-mark">?</span>;
args.push(ty);
}
<span class="kw">if let </span><span class="prelude-val">Some</span>(ty) = <span class="kw-2">&amp;</span>fn_def.return_type {
ret_type = lower_type(<span class="kw-2">&amp;</span>ctx, ty, id);
ret_type = lower_type(<span class="kw-2">&amp;</span>ctx, ty, id)<span class="question-mark">?</span>;
} <span class="kw">else </span>{
ret_type = TypeInfo {
span: <span class="prelude-val">None</span>,
@ -1202,7 +1264,7 @@
<span class="kw">for </span>content <span class="kw">in </span><span class="kw-2">&amp;</span>module.contents {
<span class="kw">match </span>content {
ModuleStatement::Function(fn_def) =&gt; {
ctx = lower_function(ctx, fn_def, id);
ctx = lower_function(ctx, fn_def, id)<span class="question-mark">?</span>;
}
<span class="comment">// ModuleStatement::Type(_) =&gt; todo!(),
</span>ModuleStatement::Module(_mod_def) =&gt; {}
@ -1210,10 +1272,14 @@
}
}
ctx
<span class="prelude-val">Ok</span>(ctx)
}
<span class="kw">fn </span>lower_struct(<span class="kw-2">mut </span>ctx: BuildCtx, info: <span class="kw-2">&amp;</span>ast::Struct, module_id: DefId) -&gt; BuildCtx {
<span class="kw">fn </span>lower_struct(
<span class="kw-2">mut </span>ctx: BuildCtx,
info: <span class="kw-2">&amp;</span>ast::Struct,
module_id: DefId,
) -&gt; <span class="prelude-ty">Result</span>&lt;BuildCtx, LoweringError&gt; {
<span class="kw">let </span><span class="kw-2">mut </span>body = AdtBody {
def_id: {
<span class="kw">let </span>body = ctx.body.modules.get(<span class="kw-2">&amp;</span>module_id).unwrap();
@ -1230,7 +1296,7 @@
<span class="kw">let </span>variant = AdtVariant {
def_id: ctx.gen.next_defid(),
name: field.name.name.clone(),
ty: lower_type(<span class="kw-2">&amp;</span>ctx, <span class="kw-2">&amp;</span>field.r#type, module_id),
ty: lower_type(<span class="kw-2">&amp;</span>ctx, <span class="kw-2">&amp;</span>field.r#type, module_id)<span class="question-mark">?</span>,
};
body.variants.push(variant);
body.name_to_idx
@ -1238,10 +1304,14 @@
}
ctx.body.structs.insert(body.def_id, body);
ctx
<span class="prelude-val">Ok</span>(ctx)
}
<span class="kw">fn </span>lower_function(ctx: BuildCtx, func: <span class="kw-2">&amp;</span>ast::Function, module_id: DefId) -&gt; BuildCtx {
<span class="kw">fn </span>lower_function(
ctx: BuildCtx,
func: <span class="kw-2">&amp;</span>ast::Function,
module_id: DefId,
) -&gt; <span class="prelude-ty">Result</span>&lt;BuildCtx, LoweringError&gt; {
<span class="kw">let </span><span class="kw-2">mut </span>builder = BodyBuilder {
body: Body {
blocks: Default::default(),
@ -1299,7 +1369,7 @@
<span class="comment">// Get all user defined locals
</span><span class="kw">for </span>stmt <span class="kw">in </span><span class="kw-2">&amp;</span>func.body.body {
<span class="kw">if let </span>ast::Statement::Let(info) = stmt {
<span class="kw">let </span>ty = lower_type(<span class="kw-2">&amp;</span>builder.ctx, <span class="kw-2">&amp;</span>info.r#type, builder.local_module);
<span class="kw">let </span>ty = lower_type(<span class="kw-2">&amp;</span>builder.ctx, <span class="kw-2">&amp;</span>info.r#type, builder.local_module)<span class="question-mark">?</span>;
builder
.name_to_local
.insert(info.name.name.clone(), builder.body.locals.len());
@ -1314,7 +1384,7 @@
}
<span class="kw">for </span>stmt <span class="kw">in </span><span class="kw-2">&amp;</span>func.body.body {
lower_statement(<span class="kw-2">&amp;mut </span>builder, stmt, <span class="kw-2">&amp;</span>ret_ty.kind);
lower_statement(<span class="kw-2">&amp;mut </span>builder, stmt, <span class="kw-2">&amp;</span>ret_ty.kind)<span class="question-mark">?</span>;
}
<span class="kw">if </span>!builder.statements.is_empty() {
@ -1329,10 +1399,14 @@
<span class="kw">let </span>(<span class="kw-2">mut </span>ctx, body) = (builder.ctx, builder.body);
ctx.unresolved_function_signatures.remove(<span class="kw-2">&amp;</span>body.def_id);
ctx.body.functions.insert(body.def_id, body);
ctx
<span class="prelude-val">Ok</span>(ctx)
}
<span class="kw">fn </span>lower_statement(builder: <span class="kw-2">&amp;mut </span>BodyBuilder, info: <span class="kw-2">&amp;</span>ast::Statement, ret_type: <span class="kw-2">&amp;</span>TypeKind) {
<span class="kw">fn </span>lower_statement(
builder: <span class="kw-2">&amp;mut </span>BodyBuilder,
info: <span class="kw-2">&amp;</span>ast::Statement,
ret_type: <span class="kw-2">&amp;</span>TypeKind,
) -&gt; <span class="prelude-ty">Result</span>&lt;(), LoweringError&gt; {
<span class="kw">match </span>info {
ast::Statement::Let(info) =&gt; lower_let(builder, info),
ast::Statement::Assign(info) =&gt; lower_assign(builder, info),
@ -1341,12 +1415,17 @@
ast::Statement::If(info) =&gt; lower_if_stmt(builder, info, ret_type),
ast::Statement::Return(info) =&gt; lower_return(builder, info, ret_type),
ast::Statement::FnCall(info) =&gt; {
lower_fn_call(builder, info);
lower_fn_call(builder, info)<span class="question-mark">?</span>;
<span class="prelude-val">Ok</span>(())
}
}
}
<span class="kw">fn </span>lower_while(builder: <span class="kw-2">&amp;mut </span>BodyBuilder, info: <span class="kw-2">&amp;</span>WhileStmt, ret_type: <span class="kw-2">&amp;</span>TypeKind) {
<span class="kw">fn </span>lower_while(
builder: <span class="kw-2">&amp;mut </span>BodyBuilder,
info: <span class="kw-2">&amp;</span>WhileStmt,
ret_type: <span class="kw-2">&amp;</span>TypeKind,
) -&gt; <span class="prelude-ty">Result</span>&lt;(), LoweringError&gt; {
<span class="kw">let </span>statements = std::mem::take(<span class="kw-2">&amp;mut </span>builder.statements);
builder.body.blocks.push(BasicBlock {
statements: statements.into(),
@ -1354,7 +1433,8 @@
terminator_span: <span class="prelude-val">Some</span>(info.block.span),
});
<span class="kw">let </span>(discriminator, discriminator_type, disc_span) = lower_expr(builder, <span class="kw-2">&amp;</span>info.condition, <span class="prelude-val">None</span>);
<span class="kw">let </span>(discriminator, discriminator_type, disc_span) =
lower_expr(builder, <span class="kw-2">&amp;</span>info.condition, <span class="prelude-val">None</span>)<span class="question-mark">?</span>;
<span class="kw">let </span>local = builder.add_temp_local(TypeKind::Bool);
<span class="kw">let </span>place = Place {
@ -1381,7 +1461,7 @@
</span><span class="kw">let </span>first_then_block_idx = builder.body.blocks.len();
<span class="kw">for </span>stmt <span class="kw">in </span><span class="kw-2">&amp;</span>info.block.body {
lower_statement(builder, stmt, ret_type);
lower_statement(builder, stmt, ret_type)<span class="question-mark">?</span>;
}
<span class="comment">// keet idx to change terminator if there is no return
@ -1418,11 +1498,18 @@
<span class="kw">if let </span><span class="prelude-val">Some</span>(last_then_block_idx) = last_then_block_idx {
builder.body.blocks[last_then_block_idx].terminator = Terminator::Target(check_block_idx);
}
<span class="prelude-val">Ok</span>(())
}
<span class="kw">fn </span>lower_if_stmt(builder: <span class="kw-2">&amp;mut </span>BodyBuilder, info: <span class="kw-2">&amp;</span>ast::IfStmt, ret_type: <span class="kw-2">&amp;</span>TypeKind) {
<span class="kw">let </span>cond_ty = find_expr_type(builder, <span class="kw-2">&amp;</span>info.condition).expect(<span class="string">"coouldnt find cond type"</span>);
<span class="kw">let </span>(condition, condition_ty, cond_span) = lower_expr(builder, <span class="kw-2">&amp;</span>info.condition, <span class="prelude-val">Some</span>(<span class="kw-2">&amp;</span>cond_ty));
<span class="kw">fn </span>lower_if_stmt(
builder: <span class="kw-2">&amp;mut </span>BodyBuilder,
info: <span class="kw-2">&amp;</span>ast::IfStmt,
ret_type: <span class="kw-2">&amp;</span>TypeKind,
) -&gt; <span class="prelude-ty">Result</span>&lt;(), LoweringError&gt; {
<span class="kw">let </span>cond_ty = find_expr_type(builder, <span class="kw-2">&amp;</span>info.condition).expect(<span class="string">"couldnt find cond type"</span>);
<span class="kw">let </span>(condition, condition_ty, cond_span) =
lower_expr(builder, <span class="kw-2">&amp;</span>info.condition, <span class="prelude-val">Some</span>(<span class="kw-2">&amp;</span>cond_ty))<span class="question-mark">?</span>;
<span class="kw">let </span>local = builder.add_temp_local(TypeKind::Bool);
<span class="kw">let </span>place = Place {
@ -1449,7 +1536,7 @@
</span><span class="kw">let </span>first_then_block_idx = builder.body.blocks.len();
<span class="kw">for </span>stmt <span class="kw">in </span><span class="kw-2">&amp;</span>info.then_block.body {
lower_statement(builder, stmt, ret_type);
lower_statement(builder, stmt, ret_type)<span class="question-mark">?</span>;
}
<span class="comment">// keet idx to change terminator
@ -1473,7 +1560,7 @@
<span class="kw">if let </span><span class="prelude-val">Some</span>(contents) = <span class="kw-2">&amp;</span>info.else_block {
<span class="kw">for </span>stmt <span class="kw">in </span><span class="kw-2">&amp;</span>contents.body {
lower_statement(builder, stmt, ret_type);
lower_statement(builder, stmt, ret_type)<span class="question-mark">?</span>;
}
}
@ -1515,11 +1602,13 @@
<span class="kw">if let </span><span class="prelude-val">Some</span>(idx) = last_else_block_idx {
builder.body.blocks[idx].terminator = Terminator::Target(next_block_idx);
}
<span class="prelude-val">Ok</span>(())
}
<span class="kw">fn </span>lower_let(builder: <span class="kw-2">&amp;mut </span>BodyBuilder, info: <span class="kw-2">&amp;</span>ast::LetStmt) {
<span class="kw">let </span>ty = lower_type(<span class="kw-2">&amp;</span>builder.ctx, <span class="kw-2">&amp;</span>info.r#type, builder.local_module);
<span class="kw">let </span>(rvalue, _ty, _span) = lower_expr(builder, <span class="kw-2">&amp;</span>info.value, <span class="prelude-val">Some</span>(<span class="kw-2">&amp;</span>ty.kind));
<span class="kw">fn </span>lower_let(builder: <span class="kw-2">&amp;mut </span>BodyBuilder, info: <span class="kw-2">&amp;</span>ast::LetStmt) -&gt; <span class="prelude-ty">Result</span>&lt;(), LoweringError&gt; {
<span class="kw">let </span>ty = lower_type(<span class="kw-2">&amp;</span>builder.ctx, <span class="kw-2">&amp;</span>info.r#type, builder.local_module)<span class="question-mark">?</span>;
<span class="kw">let </span>(rvalue, _ty, _span) = lower_expr(builder, <span class="kw-2">&amp;</span>info.value, <span class="prelude-val">Some</span>(<span class="kw-2">&amp;</span>ty.kind))<span class="question-mark">?</span>;
<span class="kw">let </span>local_idx = builder.name_to_local.get(<span class="kw-2">&amp;</span>info.name.name).copied().unwrap();
builder.statements.push(Statement {
span: <span class="prelude-val">Some</span>(info.name.span),
@ -1535,10 +1624,12 @@
rvalue,
),
});
<span class="prelude-val">Ok</span>(())
}
<span class="kw">fn </span>lower_assign(builder: <span class="kw-2">&amp;mut </span>BodyBuilder, info: <span class="kw-2">&amp;</span>ast::AssignStmt) {
<span class="kw">let </span>(<span class="kw-2">mut </span>place, <span class="kw-2">mut </span>ty, _span) = lower_path(builder, <span class="kw-2">&amp;</span>info.name);
<span class="kw">fn </span>lower_assign(builder: <span class="kw-2">&amp;mut </span>BodyBuilder, info: <span class="kw-2">&amp;</span>ast::AssignStmt) -&gt; <span class="prelude-ty">Result</span>&lt;(), LoweringError&gt; {
<span class="kw">let </span>(<span class="kw-2">mut </span>place, <span class="kw-2">mut </span>ty, _span) = lower_path(builder, <span class="kw-2">&amp;</span>info.name)<span class="question-mark">?</span>;
<span class="kw">for _ in </span><span class="number">0</span>..info.deref_times {
<span class="kw">match </span><span class="kw-2">&amp;</span>ty {
@ -1559,12 +1650,14 @@
place.projection.push(PlaceElem::Deref);
}
<span class="kw">let </span>(rvalue, _ty, _span) = lower_expr(builder, <span class="kw-2">&amp;</span>info.value, <span class="prelude-val">Some</span>(<span class="kw-2">&amp;</span>ty));
<span class="kw">let </span>(rvalue, _ty, _span) = lower_expr(builder, <span class="kw-2">&amp;</span>info.value, <span class="prelude-val">Some</span>(<span class="kw-2">&amp;</span>ty))<span class="question-mark">?</span>;
builder.statements.push(Statement {
span: <span class="prelude-val">Some</span>(info.name.first.span),
kind: StatementKind::Assign(place, rvalue),
});
<span class="prelude-val">Ok</span>(())
}
<span class="kw">fn </span>find_expr_type(builder: <span class="kw-2">&amp;mut </span>BodyBuilder, info: <span class="kw-2">&amp;</span>ast::Expression) -&gt; <span class="prelude-ty">Option</span>&lt;TypeKind&gt; {
@ -1629,22 +1722,22 @@
builder: <span class="kw-2">&amp;mut </span>BodyBuilder,
info: <span class="kw-2">&amp;</span>ast::Expression,
type_hint: <span class="prelude-ty">Option</span>&lt;<span class="kw-2">&amp;</span>TypeKind&gt;,
) -&gt; (ir::RValue, TypeKind, Span) {
<span class="kw">match </span>info {
) -&gt; <span class="prelude-ty">Result</span>&lt;(ir::RValue, TypeKind, Span), LoweringError&gt; {
<span class="prelude-val">Ok</span>(<span class="kw">match </span>info {
ast::Expression::Value(info) =&gt; {
<span class="kw">let </span>(value, ty, span) = lower_value(builder, info, type_hint);
<span class="kw">let </span>(value, ty, span) = lower_value(builder, info, type_hint)<span class="question-mark">?</span>;
(ir::RValue::Use(value, span), ty, span)
}
ast::Expression::FnCall(info) =&gt; {
<span class="kw">let </span>(value, ty, span) = lower_fn_call(builder, info);
<span class="kw">let </span>(value, ty, span) = lower_fn_call(builder, info)<span class="question-mark">?</span>;
(ir::RValue::Use(value, span), ty, span)
}
ast::Expression::Unary(<span class="kw">_</span>, <span class="kw">_</span>) =&gt; <span class="macro">todo!</span>(),
ast::Expression::Binary(lhs, op, rhs) =&gt; {
lower_binary_expr(builder, lhs, op, rhs, type_hint)
}
lower_binary_expr(builder, lhs, op, rhs, type_hint)<span class="question-mark">?
</span>}
ast::Expression::Deref(inner) =&gt; {
<span class="kw">let </span>(value, ty, span) = lower_expr(builder, inner, type_hint);
<span class="kw">let </span>(value, ty, span) = lower_expr(builder, inner, type_hint)<span class="question-mark">?</span>;
<span class="comment">// check if its a use directly, to avoid a temporary.
</span><span class="kw">let </span><span class="kw-2">mut </span>value = <span class="kw">match </span>value {
@ -1668,7 +1761,7 @@
},
<span class="prelude-val">None </span>=&gt; <span class="prelude-val">None</span>,
};
<span class="kw">let </span>(<span class="kw-2">mut </span>value, ty, span) = lower_expr(builder, inner, type_hint);
<span class="kw">let </span>(<span class="kw-2">mut </span>value, ty, span) = lower_expr(builder, inner, type_hint)<span class="question-mark">?</span>;
<span class="comment">// check if its a use directly, to avoid a temporary.
</span>value = <span class="kw">match </span>value {
@ -1736,7 +1829,7 @@
<span class="kw">let </span>variant = <span class="kw-2">&amp;</span>struct_body.variants[idx].ty.kind;
<span class="kw">let </span>(value, _value_ty, span) = lower_expr(builder, <span class="kw-2">&amp;</span>value.value, <span class="prelude-val">Some</span>(variant));
<span class="kw">let </span>(value, _value_ty, span) = lower_expr(builder, <span class="kw-2">&amp;</span>value.value, <span class="prelude-val">Some</span>(variant))<span class="question-mark">?</span>;
builder.statements.push(Statement {
span: <span class="prelude-val">Some</span>(span),
@ -1746,7 +1839,7 @@
(RValue::Use(Operand::Move(place), info.span), ty, info.span)
}
}
})
}
<span class="kw">fn </span>lower_binary_expr(
@ -1755,22 +1848,22 @@
op: <span class="kw-2">&amp;</span>ast::BinaryOp,
rhs: <span class="kw-2">&amp;</span>ast::Expression,
type_hint: <span class="prelude-ty">Option</span>&lt;<span class="kw-2">&amp;</span>TypeKind&gt;,
) -&gt; (ir::RValue, TypeKind, Span) {
) -&gt; <span class="prelude-ty">Result</span>&lt;(ir::RValue, TypeKind, Span), LoweringError&gt; {
<span class="macro">trace!</span>(<span class="string">"lowering binary op: {:?}"</span>, op);
<span class="kw">let </span>(lhs, lhs_ty, <span class="kw">_</span>) = <span class="kw">if </span>type_hint.is_none() {
<span class="kw">let </span>ty = find_expr_type(builder, lhs)
.unwrap_or_else(|| find_expr_type(builder, rhs).expect(<span class="string">"cant find type"</span>));
lower_expr(builder, lhs, <span class="prelude-val">Some</span>(<span class="kw-2">&amp;</span>ty))
} <span class="kw">else </span>{
lower_expr(builder, lhs, type_hint)
};
lower_expr(builder, lhs, <span class="prelude-val">Some</span>(<span class="kw-2">&amp;</span>ty))<span class="question-mark">?
</span>} <span class="kw">else </span>{
lower_expr(builder, lhs, type_hint)<span class="question-mark">?
</span>};
<span class="kw">let </span>(rhs, rhs_ty, <span class="kw">_</span>) = <span class="kw">if </span>type_hint.is_none() {
<span class="kw">let </span>ty = find_expr_type(builder, rhs).unwrap_or(lhs_ty.clone());
lower_expr(builder, rhs, <span class="prelude-val">Some</span>(<span class="kw-2">&amp;</span>ty))
} <span class="kw">else </span>{
lower_expr(builder, rhs, type_hint)
};
lower_expr(builder, rhs, <span class="prelude-val">Some</span>(<span class="kw-2">&amp;</span>ty))<span class="question-mark">?
</span>} <span class="kw">else </span>{
lower_expr(builder, rhs, type_hint)<span class="question-mark">?
</span>};
<span class="kw">let </span>lhs = <span class="kw">match </span>lhs {
RValue::Use(op, _span) =&gt; op,
@ -1816,7 +1909,7 @@
}
};
<span class="kw">match </span>op {
<span class="prelude-val">Ok</span>(<span class="kw">match </span>op {
ast::BinaryOp::Arith(op, span) =&gt; (
<span class="kw">match </span>op {
ast::ArithOp::Add =&gt; ir::RValue::BinOp(ir::BinOp::Add, lhs, rhs, <span class="kw-2">*</span>span),
@ -1857,10 +1950,13 @@
lhs_ty,
<span class="kw-2">*</span>span,
),
}
})
}
<span class="kw">fn </span>lower_fn_call(builder: <span class="kw-2">&amp;mut </span>BodyBuilder, info: <span class="kw-2">&amp;</span>ast::FnCallExpr) -&gt; (Operand, TypeKind, Span) {
<span class="kw">fn </span>lower_fn_call(
builder: <span class="kw-2">&amp;mut </span>BodyBuilder,
info: <span class="kw-2">&amp;</span>ast::FnCallExpr,
) -&gt; <span class="prelude-ty">Result</span>&lt;(Operand, TypeKind, Span), LoweringError&gt; {
<span class="kw">let </span>fn_id = {
<span class="kw">let </span>mod_body = builder.get_module_body();
@ -1886,14 +1982,14 @@
<span class="kw">let </span>args: Vec&lt;<span class="kw">_</span>&gt; = args
.iter()
.map(|x| lower_type(<span class="kw-2">&amp;</span>builder.ctx, x, builder.local_module))
.collect();
.collect::&lt;<span class="prelude-ty">Result</span>&lt;Vec&lt;<span class="kw">_</span>&gt;, LoweringError&gt;&gt;()<span class="question-mark">?</span>;
<span class="kw">let </span>ret = ret
.as_ref()
.map(|x| lower_type(<span class="kw-2">&amp;</span>builder.ctx, x, builder.local_module))
.unwrap_or(TypeInfo {
.unwrap_or(<span class="prelude-val">Ok</span>(TypeInfo {
span: <span class="prelude-val">None</span>,
kind: TypeKind::Unit,
});
}))<span class="question-mark">?</span>;
builder
.ctx
.body
@ -1906,7 +2002,7 @@
<span class="kw">let </span><span class="kw-2">mut </span>args = Vec::new();
<span class="kw">for </span>(arg, arg_ty) <span class="kw">in </span>info.params.iter().zip(args_ty) {
<span class="kw">let </span>(rvalue, _rvalue_ty, _span) = lower_expr(builder, arg, <span class="prelude-val">Some</span>(<span class="kw-2">&amp;</span>arg_ty.kind));
<span class="kw">let </span>(rvalue, _rvalue_ty, _span) = lower_expr(builder, arg, <span class="prelude-val">Some</span>(<span class="kw-2">&amp;</span>arg_ty.kind))<span class="question-mark">?</span>;
args.push(rvalue);
}
@ -1934,15 +2030,15 @@
terminator_span: <span class="prelude-val">Some</span>(info.span),
});
(Operand::Move(dest_place), ret_ty.kind.clone(), info.span)
<span class="prelude-val">Ok</span>((Operand::Move(dest_place), ret_ty.kind.clone(), info.span))
}
<span class="kw">fn </span>lower_value(
builder: <span class="kw-2">&amp;mut </span>BodyBuilder,
info: <span class="kw-2">&amp;</span>ast::ValueExpr,
type_hint: <span class="prelude-ty">Option</span>&lt;<span class="kw-2">&amp;</span>TypeKind&gt;,
) -&gt; (Operand, TypeKind, Span) {
<span class="kw">match </span>info {
) -&gt; <span class="prelude-ty">Result</span>&lt;(Operand, TypeKind, Span), LoweringError&gt; {
<span class="prelude-val">Ok</span>(<span class="kw">match </span>info {
ast::ValueExpr::Bool { value, span } =&gt; (
ir::Operand::Constant(ir::ConstData {
span: <span class="prelude-val">Some</span>(<span class="kw-2">*</span>span),
@ -2078,15 +2174,19 @@
},
ast::ValueExpr::Str { value: <span class="kw">_</span>, span: <span class="kw">_ </span>} =&gt; <span class="macro">todo!</span>(),
ast::ValueExpr::Path(info) =&gt; {
<span class="kw">let </span>(place, ty, span) = lower_path(builder, info);
<span class="kw">let </span>(place, ty, span) = lower_path(builder, info)<span class="question-mark">?</span>;
(Operand::Move(place), ty, span)
}
}
})
}
<span class="kw">fn </span>lower_return(builder: <span class="kw-2">&amp;mut </span>BodyBuilder, info: <span class="kw-2">&amp;</span>ast::ReturnStmt, return_type: <span class="kw-2">&amp;</span>TypeKind) {
<span class="kw">fn </span>lower_return(
builder: <span class="kw-2">&amp;mut </span>BodyBuilder,
info: <span class="kw-2">&amp;</span>ast::ReturnStmt,
return_type: <span class="kw-2">&amp;</span>TypeKind,
) -&gt; <span class="prelude-ty">Result</span>&lt;(), LoweringError&gt; {
<span class="kw">if let </span><span class="prelude-val">Some</span>(value_expr) = <span class="kw-2">&amp;</span>info.value {
<span class="kw">let </span>(value, _ty, span) = lower_expr(builder, value_expr, <span class="prelude-val">Some</span>(return_type));
<span class="kw">let </span>(value, _ty, span) = lower_expr(builder, value_expr, <span class="prelude-val">Some</span>(return_type))<span class="question-mark">?</span>;
builder.statements.push(Statement {
span: <span class="prelude-val">Some</span>(span),
kind: StatementKind::Assign(
@ -2105,9 +2205,14 @@
terminator: Terminator::Return,
terminator_span: <span class="prelude-val">Some</span>(info.span),
});
<span class="prelude-val">Ok</span>(())
}
<span class="kw">fn </span>lower_path(builder: <span class="kw-2">&amp;mut </span>BodyBuilder, info: <span class="kw-2">&amp;</span>ast::PathExpr) -&gt; (ir::Place, TypeKind, Span) {
<span class="kw">fn </span>lower_path(
builder: <span class="kw-2">&amp;mut </span>BodyBuilder,
info: <span class="kw-2">&amp;</span>ast::PathExpr,
) -&gt; <span class="prelude-ty">Result</span>&lt;(ir::Place, TypeKind, Span), LoweringError&gt; {
<span class="kw">let </span>local = <span class="kw-2">*</span>builder
.name_to_local
.get(<span class="kw-2">&amp;</span>info.first.name)
@ -2136,18 +2241,22 @@
}
}
(
<span class="prelude-val">Ok</span>((
Place {
local,
projection: projection.into(), <span class="comment">// todo, array
</span>},
ty,
info.span,
)
))
}
<span class="attr">#[allow(clippy::only_used_in_recursion)]
</span><span class="kw">pub fn </span>lower_type(ctx: <span class="kw-2">&amp;</span>BuildCtx, t: <span class="kw-2">&amp;</span>ast::Type, module_id: DefId) -&gt; ir::TypeInfo {
</span><span class="kw">pub fn </span>lower_type(
ctx: <span class="kw-2">&amp;</span>BuildCtx,
t: <span class="kw-2">&amp;</span>ast::Type,
module_id: DefId,
) -&gt; <span class="prelude-ty">Result</span>&lt;ir::TypeInfo, LoweringError&gt; {
<span class="kw">let </span><span class="kw-2">mut </span>ty = <span class="kw">match </span>t.name.name.as_str() {
<span class="string">"()" </span>=&gt; ir::TypeInfo {
span: <span class="prelude-val">Some</span>(t.span),
@ -2214,8 +2323,11 @@
kind: TypeKind::Struct(<span class="kw-2">*</span>struct_id),
}
} <span class="kw">else </span>{
<span class="macro">todo!</span>(<span class="string">"{:?}"</span>, other)
}
<span class="prelude-val">Err</span>(LoweringError::UnrecognizedType {
span: t.name.span,
name: t.name.name.clone(),
})<span class="question-mark">?
</span>}
}
};
@ -2233,6 +2345,6 @@
};
}
ty
<span class="prelude-val">Ok</span>(ty)
}
</code></pre></div></section></main></body></html>

View file

@ -316,15 +316,71 @@
<a href="#315" id="315">315</a>
<a href="#316" id="316">316</a>
<a href="#317" id="317">317</a>
<a href="#318" id="318">318</a>
<a href="#319" id="319">319</a>
<a href="#320" id="320">320</a>
<a href="#321" id="321">321</a>
<a href="#322" id="322">322</a>
<a href="#323" id="323">323</a>
<a href="#324" id="324">324</a>
<a href="#325" id="325">325</a>
<a href="#326" id="326">326</a>
<a href="#327" id="327">327</a>
<a href="#328" id="328">328</a>
<a href="#329" id="329">329</a>
<a href="#330" id="330">330</a>
<a href="#331" id="331">331</a>
<a href="#332" id="332">332</a>
<a href="#333" id="333">333</a>
<a href="#334" id="334">334</a>
<a href="#335" id="335">335</a>
<a href="#336" id="336">336</a>
<a href="#337" id="337">337</a>
<a href="#338" id="338">338</a>
<a href="#339" id="339">339</a>
<a href="#340" id="340">340</a>
<a href="#341" id="341">341</a>
<a href="#342" id="342">342</a>
<a href="#343" id="343">343</a>
<a href="#344" id="344">344</a>
<a href="#345" id="345">345</a>
<a href="#346" id="346">346</a>
<a href="#347" id="347">347</a>
<a href="#348" id="348">348</a>
<a href="#349" id="349">349</a>
<a href="#350" id="350">350</a>
<a href="#351" id="351">351</a>
<a href="#352" id="352">352</a>
<a href="#353" id="353">353</a>
<a href="#354" id="354">354</a>
<a href="#355" id="355">355</a>
<a href="#356" id="356">356</a>
<a href="#357" id="357">357</a>
<a href="#358" id="358">358</a>
<a href="#359" id="359">359</a>
<a href="#360" id="360">360</a>
<a href="#361" id="361">361</a>
<a href="#362" id="362">362</a>
<a href="#363" id="363">363</a>
<a href="#364" id="364">364</a>
<a href="#365" id="365">365</a>
<a href="#366" id="366">366</a>
<a href="#367" id="367">367</a>
<a href="#368" id="368">368</a>
<a href="#369" id="369">369</a>
<a href="#370" id="370">370</a>
<a href="#371" id="371">371</a>
<a href="#372" id="372">372</a>
<a href="#373" id="373">373</a>
</pre></div><pre class="rust"><code><span class="kw">use </span>std::collections::HashMap;
<span class="kw">use </span><span class="kw">crate</span>::DefId;
<span class="kw">use crate</span>::{errors::LoweringError, DefId};
<span class="kw">use </span><span class="kw">super</span>::common::BuildCtx;
<span class="kw">use </span>edlang_ast <span class="kw">as </span>ast;
<span class="kw">use </span>edlang_ir::ModuleBody;
<span class="kw">pub fn </span>prepass_module(<span class="kw-2">mut </span>ctx: BuildCtx, mod_def: <span class="kw-2">&amp;</span>ast::Module) -&gt; BuildCtx {
<span class="kw">pub fn </span>prepass_module(<span class="kw-2">mut </span>ctx: BuildCtx, mod_def: <span class="kw-2">&amp;</span>ast::Module) -&gt; <span class="prelude-ty">Result</span>&lt;BuildCtx, LoweringError&gt; {
<span class="kw">let </span>module_id = ctx.gen.next_defid();
<span class="macro">tracing::debug!</span>(<span class="string">"running ir prepass on module {:?}"</span>, module_id);
@ -424,11 +480,11 @@
.expect(<span class="string">"module should exist"</span>);
<span class="kw">let </span>next_id = <span class="kw-2">*</span>current_module.symbols.modules.get(<span class="kw-2">&amp;</span>info.name.name).unwrap();
ctx = prepass_sub_module(ctx, <span class="kw-2">&amp;</span>[module_id], next_id, info);
ctx = prepass_sub_module(ctx, <span class="kw-2">&amp;</span>[module_id], next_id, info)<span class="question-mark">?</span>;
}
}
ctx
<span class="prelude-val">Ok</span>(ctx)
}
<span class="kw">pub fn </span>prepass_sub_module(
@ -436,7 +492,7 @@
parent_ids: <span class="kw-2">&amp;</span>[DefId],
module_id: DefId,
mod_def: <span class="kw-2">&amp;</span>ast::Module,
) -&gt; BuildCtx {
) -&gt; <span class="prelude-ty">Result</span>&lt;BuildCtx, LoweringError&gt; {
<span class="macro">tracing::debug!</span>(<span class="string">"running ir prepass on submodule {:?}"</span>, module_id);
<span class="kw">let </span><span class="kw-2">mut </span>submodule_parents_ids = parent_ids.to_vec();
submodule_parents_ids.push(module_id);
@ -519,14 +575,17 @@
<span class="kw">for </span>ct <span class="kw">in </span><span class="kw-2">&amp;</span>mod_def.contents {
<span class="kw">if let </span>ast::ModuleStatement::Module(info) = ct {
<span class="kw">let </span>next_id = ctx.gen.next_defid();
ctx = prepass_sub_module(ctx, <span class="kw-2">&amp;</span>submodule_parents_ids, next_id, info);
ctx = prepass_sub_module(ctx, <span class="kw-2">&amp;</span>submodule_parents_ids, next_id, info)<span class="question-mark">?</span>;
}
}
ctx
<span class="prelude-val">Ok</span>(ctx)
}
<span class="kw">pub fn </span>prepass_imports(<span class="kw-2">mut </span>ctx: BuildCtx, mod_def: <span class="kw-2">&amp;</span>ast::Module) -&gt; BuildCtx {
<span class="kw">pub fn </span>prepass_imports(
<span class="kw-2">mut </span>ctx: BuildCtx,
mod_def: <span class="kw-2">&amp;</span>ast::Module,
) -&gt; <span class="prelude-ty">Result</span>&lt;BuildCtx, LoweringError&gt; {
<span class="kw">let </span>mod_id = <span class="kw-2">*</span>ctx
.body
.top_level_module_names
@ -538,12 +597,34 @@
.body
.top_level_module_names
.get(<span class="kw-2">&amp;</span>import.module[<span class="number">0</span>].name)
.expect(<span class="string">"import module not found"</span>);
<span class="kw">let </span><span class="kw-2">mut </span>imported_module = ctx.body.modules.get(imported_module_id).unwrap();
.ok_or_else(|| LoweringError::ModuleNotFound {
span: import.module[<span class="number">0</span>].span,
module: import.module[<span class="number">0</span>].name.clone(),
})<span class="question-mark">?</span>;
<span class="kw">let </span><span class="kw-2">mut </span>imported_module =
ctx.body
.modules
.get(imported_module_id)
.ok_or(LoweringError::IdNotFound {
span: mod_def.span,
id: <span class="kw-2">*</span>imported_module_id,
})<span class="question-mark">?</span>;
<span class="kw">for </span>x <span class="kw">in </span>import.module.iter().skip(<span class="number">1</span>) {
<span class="kw">let </span>imported_module_id = imported_module.symbols.modules.get(<span class="kw-2">&amp;</span>x.name).unwrap();
imported_module = ctx.body.modules.get(imported_module_id).unwrap();
<span class="kw">for </span>module_path <span class="kw">in </span>import.module.iter().skip(<span class="number">1</span>) {
<span class="kw">let </span>imported_module_id = imported_module
.symbols
.modules
.get(<span class="kw-2">&amp;</span>module_path.name)
.ok_or_else(|| LoweringError::ModuleNotFound {
span: module_path.span,
module: module_path.name.clone(),
})<span class="question-mark">?</span>;
imported_module = ctx.body.modules.get(imported_module_id).ok_or({
LoweringError::IdNotFound {
span: module_path.span,
id: <span class="kw-2">*</span>imported_module_id,
}
})<span class="question-mark">?</span>;
}
<span class="kw">let </span><span class="kw-2">mut </span>imports = HashMap::new();
@ -558,7 +639,11 @@
} <span class="kw">else if let </span><span class="prelude-val">Some</span>(id) = imported_module.symbols.constants.get(<span class="kw-2">&amp;</span>sym.name) {
imports.insert(sym.name.clone(), <span class="kw-2">*</span>id);
} <span class="kw">else </span>{
<span class="macro">panic!</span>(<span class="string">"import symbol not found"</span>)
<span class="prelude-val">Err</span>(LoweringError::ImportNotFound {
module_span: mod_def.span,
import_span: import.span,
symbol: sym.clone(),
})<span class="question-mark">?</span>;
}
}
@ -572,18 +657,18 @@
<span class="kw">for </span>c <span class="kw">in </span><span class="kw-2">&amp;</span>mod_def.contents {
<span class="kw">if let </span>ast::ModuleStatement::Module(info) = c {
ctx = prepass_imports_submodule(ctx, info, mod_id);
ctx = prepass_imports_submodule(ctx, info, mod_id)<span class="question-mark">?</span>;
}
}
ctx
<span class="prelude-val">Ok</span>(ctx)
}
<span class="kw">pub fn </span>prepass_imports_submodule(
<span class="kw-2">mut </span>ctx: BuildCtx,
mod_def: <span class="kw-2">&amp;</span>ast::Module,
parent_id: DefId,
) -&gt; BuildCtx {
) -&gt; <span class="prelude-ty">Result</span>&lt;BuildCtx, LoweringError&gt; {
<span class="kw">let </span>mod_id = <span class="kw-2">*</span>ctx
.body
.modules
@ -592,19 +677,42 @@
.symbols
.modules
.get(<span class="kw-2">&amp;</span>mod_def.name.name)
.unwrap();
.ok_or_else(|| LoweringError::ModuleNotFound {
span: mod_def.span,
module: mod_def.name.name.clone(),
})<span class="question-mark">?</span>;
<span class="kw">for </span>import <span class="kw">in </span><span class="kw-2">&amp;</span>mod_def.imports {
<span class="kw">let </span>imported_module_id = ctx
.body
.top_level_module_names
.get(<span class="kw-2">&amp;</span>import.module[<span class="number">0</span>].name)
.expect(<span class="string">"import module not found"</span>);
<span class="kw">let </span><span class="kw-2">mut </span>imported_module = ctx.body.modules.get(imported_module_id).unwrap();
.ok_or_else(|| LoweringError::ModuleNotFound {
span: import.module[<span class="number">0</span>].span,
module: import.module[<span class="number">0</span>].name.clone(),
})<span class="question-mark">?</span>;
<span class="kw">let </span><span class="kw-2">mut </span>imported_module = ctx.body.modules.get(imported_module_id).ok_or_else(|| {
LoweringError::ModuleNotFound {
span: import.module[<span class="number">0</span>].span,
module: import.module[<span class="number">0</span>].name.clone(),
}
})<span class="question-mark">?</span>;
<span class="kw">for </span>x <span class="kw">in </span>import.module.iter().skip(<span class="number">1</span>) {
<span class="kw">let </span>imported_module_id = imported_module.symbols.modules.get(<span class="kw-2">&amp;</span>x.name).unwrap();
imported_module = ctx.body.modules.get(imported_module_id).unwrap();
<span class="kw">for </span>module_path <span class="kw">in </span>import.module.iter().skip(<span class="number">1</span>) {
<span class="kw">let </span>imported_module_id = imported_module
.symbols
.modules
.get(<span class="kw-2">&amp;</span>module_path.name)
.ok_or_else(|| LoweringError::ModuleNotFound {
span: module_path.span,
module: module_path.name.clone(),
})<span class="question-mark">?</span>;
imported_module = ctx.body.modules.get(imported_module_id).ok_or({
LoweringError::IdNotFound {
span: import.span,
id: <span class="kw-2">*</span>imported_module_id,
}
})<span class="question-mark">?</span>;
}
<span class="kw">let </span><span class="kw-2">mut </span>imports = HashMap::new();
@ -619,7 +727,11 @@
} <span class="kw">else if let </span><span class="prelude-val">Some</span>(id) = imported_module.symbols.constants.get(<span class="kw-2">&amp;</span>sym.name) {
imports.insert(sym.name.clone(), <span class="kw-2">*</span>id);
} <span class="kw">else </span>{
<span class="macro">panic!</span>(<span class="string">"import symbol not found"</span>)
<span class="prelude-val">Err</span>(LoweringError::ImportNotFound {
module_span: mod_def.span,
import_span: import.span,
symbol: sym.clone(),
})<span class="question-mark">?</span>;
}
}
@ -631,6 +743,6 @@
.extend(imports);
}
ctx
<span class="prelude-val">Ok</span>(ctx)
}
</code></pre></div></section></main></body></html>

View file

@ -10,7 +10,17 @@
<a href="#9" id="9">9</a>
<a href="#10" id="10">10</a>
<a href="#11" id="11">11</a>
</pre></div><pre class="rust"><code><span class="attr">#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Default, Hash)]
<a href="#12" id="12">12</a>
<a href="#13" id="13">13</a>
<a href="#14" id="14">14</a>
<a href="#15" id="15">15</a>
<a href="#16" id="16">16</a>
<a href="#17" id="17">17</a>
<a href="#18" id="18">18</a>
<a href="#19" id="19">19</a>
</pre></div><pre class="rust"><code><span class="kw">use </span>std::ops::Range;
<span class="attr">#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Default, Hash)]
</span><span class="kw">pub struct </span>Span {
<span class="kw">pub </span>lo: usize,
<span class="kw">pub </span>hi: usize,
@ -21,4 +31,10 @@
<span class="self">Self </span>{ lo, hi }
}
}
<span class="kw">impl </span>From&lt;Span&gt; <span class="kw">for </span>Range&lt;usize&gt; {
<span class="kw">fn </span>from(val: Span) -&gt; <span class="self">Self </span>{
val.lo..val.hi
}
}
</code></pre></div></section></main></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -14,7 +14,7 @@
"object":[["impl&lt;E: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> + <a class=\"trait\" href=\"object/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/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"object/endian/struct.U64Bytes.html\" title=\"struct object::endian::U64Bytes\">U64Bytes</a>&lt;E&gt;"],["impl&lt;E: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> + <a class=\"trait\" href=\"object/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/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"object/endian/struct.I64Bytes.html\" title=\"struct object::endian::I64Bytes\">I64Bytes</a>&lt;E&gt;"],["impl&lt;E: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> + <a class=\"trait\" href=\"object/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/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"object/endian/struct.U32Bytes.html\" title=\"struct object::endian::U32Bytes\">U32Bytes</a>&lt;E&gt;"],["impl&lt;E: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> + <a class=\"trait\" href=\"object/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/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"object/endian/struct.I32Bytes.html\" title=\"struct object::endian::I32Bytes\">I32Bytes</a>&lt;E&gt;"],["impl&lt;E: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> + <a class=\"trait\" href=\"object/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/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"object/endian/struct.I16Bytes.html\" title=\"struct object::endian::I16Bytes\">I16Bytes</a>&lt;E&gt;"],["impl&lt;E: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> + <a class=\"trait\" href=\"object/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/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"object/endian/struct.U16Bytes.html\" title=\"struct object::endian::U16Bytes\">U16Bytes</a>&lt;E&gt;"]],
"proc_macro2":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"proc_macro2/struct.Ident.html\" title=\"struct proc_macro2::Ident\">Ident</a>"]],
"regex_automata":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_automata/util/primitives/struct.SmallIndex.html\" title=\"struct regex_automata::util::primitives::SmallIndex\">SmallIndex</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_automata/util/primitives/struct.StateID.html\" title=\"struct regex_automata::util::primitives::StateID\">StateID</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_automata/util/alphabet/struct.Unit.html\" title=\"struct regex_automata::util::alphabet::Unit\">Unit</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_automata/util/primitives/struct.NonMaxUsize.html\" title=\"struct regex_automata::util::primitives::NonMaxUsize\">NonMaxUsize</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_automata/struct.PatternID.html\" title=\"struct regex_automata::PatternID\">PatternID</a>"]],
"regex_syntax":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_syntax/utf8/struct.Utf8Range.html\" title=\"struct regex_syntax::utf8::Utf8Range\">Utf8Range</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.ClassBytesRange.html\" title=\"struct regex_syntax::hir::ClassBytesRange\">ClassBytesRange</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_syntax/ast/struct.Span.html\" title=\"struct regex_syntax::ast::Span\">Span</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"enum\" href=\"regex_syntax/utf8/enum.Utf8Sequence.html\" title=\"enum regex_syntax::utf8::Utf8Sequence\">Utf8Sequence</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_syntax/hir/literal/struct.Literal.html\" title=\"struct regex_syntax::hir::literal::Literal\">Literal</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_syntax/ast/struct.Position.html\" title=\"struct regex_syntax::ast::Position\">Position</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.ClassUnicodeRange.html\" title=\"struct regex_syntax::hir::ClassUnicodeRange\">ClassUnicodeRange</a>"]],
"regex_syntax":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"enum\" href=\"regex_syntax/utf8/enum.Utf8Sequence.html\" title=\"enum regex_syntax::utf8::Utf8Sequence\">Utf8Sequence</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_syntax/ast/struct.Span.html\" title=\"struct regex_syntax::ast::Span\">Span</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.ClassBytesRange.html\" title=\"struct regex_syntax::hir::ClassBytesRange\">ClassBytesRange</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.ClassUnicodeRange.html\" title=\"struct regex_syntax::hir::ClassUnicodeRange\">ClassUnicodeRange</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_syntax/hir/literal/struct.Literal.html\" title=\"struct regex_syntax::hir::literal::Literal\">Literal</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_syntax/ast/struct.Position.html\" title=\"struct regex_syntax::ast::Position\">Position</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"regex_syntax/utf8/struct.Utf8Range.html\" title=\"struct regex_syntax::utf8::Utf8Range\">Utf8Range</a>"]],
"smallvec":[["impl&lt;A: <a class=\"trait\" href=\"smallvec/trait.Array.html\" title=\"trait smallvec::Array\">Array</a>&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"smallvec/struct.SmallVec.html\" title=\"struct smallvec::SmallVec\">SmallVec</a>&lt;A&gt;<div class=\"where\">where\n A::<a class=\"associatedtype\" href=\"smallvec/trait.Array.html#associatedtype.Item\" title=\"type smallvec::Array::Item\">Item</a>: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a>,</div>"]],
"syn":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"syn/struct.Lifetime.html\" title=\"struct syn::Lifetime\">Lifetime</a>"]],
"tracing_core":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"tracing_core/struct.LevelFilter.html\" title=\"struct tracing_core::LevelFilter\">LevelFilter</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"tracing_core/struct.Level.html\" title=\"struct tracing_core::Level\">Level</a>"]],

File diff suppressed because one or more lines are too long

View file

@ -14,7 +14,7 @@
"object":[["impl&lt;E: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> + <a class=\"trait\" href=\"object/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/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"object/endian/struct.I32Bytes.html\" title=\"struct object::endian::I32Bytes\">I32Bytes</a>&lt;E&gt;"],["impl&lt;E: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> + <a class=\"trait\" href=\"object/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/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"object/endian/struct.I64Bytes.html\" title=\"struct object::endian::I64Bytes\">I64Bytes</a>&lt;E&gt;"],["impl&lt;E: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> + <a class=\"trait\" href=\"object/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/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"object/endian/struct.U64Bytes.html\" title=\"struct object::endian::U64Bytes\">U64Bytes</a>&lt;E&gt;"],["impl&lt;E: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> + <a class=\"trait\" href=\"object/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/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"object/endian/struct.U32Bytes.html\" title=\"struct object::endian::U32Bytes\">U32Bytes</a>&lt;E&gt;"],["impl&lt;E: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> + <a class=\"trait\" href=\"object/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/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"object/endian/struct.U16Bytes.html\" title=\"struct object::endian::U16Bytes\">U16Bytes</a>&lt;E&gt;"],["impl&lt;E: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> + <a class=\"trait\" href=\"object/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/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"object/endian/struct.I16Bytes.html\" title=\"struct object::endian::I16Bytes\">I16Bytes</a>&lt;E&gt;"]],
"proc_macro2":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"proc_macro2/struct.Ident.html\" title=\"struct proc_macro2::Ident\">Ident</a>"]],
"regex_automata":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_automata/util/primitives/struct.SmallIndex.html\" title=\"struct regex_automata::util::primitives::SmallIndex\">SmallIndex</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_automata/util/primitives/struct.NonMaxUsize.html\" title=\"struct regex_automata::util::primitives::NonMaxUsize\">NonMaxUsize</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_automata/util/primitives/struct.StateID.html\" title=\"struct regex_automata::util::primitives::StateID\">StateID</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_automata/struct.PatternID.html\" title=\"struct regex_automata::PatternID\">PatternID</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_automata/util/alphabet/struct.Unit.html\" title=\"struct regex_automata::util::alphabet::Unit\">Unit</a>"]],
"regex_syntax":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_syntax/utf8/struct.Utf8Range.html\" title=\"struct regex_syntax::utf8::Utf8Range\">Utf8Range</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"enum\" href=\"regex_syntax/utf8/enum.Utf8Sequence.html\" title=\"enum regex_syntax::utf8::Utf8Sequence\">Utf8Sequence</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.ClassUnicodeRange.html\" title=\"struct regex_syntax::hir::ClassUnicodeRange\">ClassUnicodeRange</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_syntax/ast/struct.Position.html\" title=\"struct regex_syntax::ast::Position\">Position</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.ClassBytesRange.html\" title=\"struct regex_syntax::hir::ClassBytesRange\">ClassBytesRange</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_syntax/hir/literal/struct.Literal.html\" title=\"struct regex_syntax::hir::literal::Literal\">Literal</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_syntax/ast/struct.Span.html\" title=\"struct regex_syntax::ast::Span\">Span</a>"]],
"regex_syntax":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"enum\" href=\"regex_syntax/utf8/enum.Utf8Sequence.html\" title=\"enum regex_syntax::utf8::Utf8Sequence\">Utf8Sequence</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.ClassBytesRange.html\" title=\"struct regex_syntax::hir::ClassBytesRange\">ClassBytesRange</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_syntax/ast/struct.Position.html\" title=\"struct regex_syntax::ast::Position\">Position</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_syntax/ast/struct.Span.html\" title=\"struct regex_syntax::ast::Span\">Span</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_syntax/hir/literal/struct.Literal.html\" title=\"struct regex_syntax::hir::literal::Literal\">Literal</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.ClassUnicodeRange.html\" title=\"struct regex_syntax::hir::ClassUnicodeRange\">ClassUnicodeRange</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"regex_syntax/utf8/struct.Utf8Range.html\" title=\"struct regex_syntax::utf8::Utf8Range\">Utf8Range</a>"]],
"smallvec":[["impl&lt;A: <a class=\"trait\" href=\"smallvec/trait.Array.html\" title=\"trait smallvec::Array\">Array</a>&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"smallvec/struct.SmallVec.html\" title=\"struct smallvec::SmallVec\">SmallVec</a>&lt;A&gt;<div class=\"where\">where\n A::<a class=\"associatedtype\" href=\"smallvec/trait.Array.html#associatedtype.Item\" title=\"type smallvec::Array::Item\">Item</a>: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a>,</div>"]],
"syn":[["impl&lt;'a&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"syn/buffer/struct.Cursor.html\" title=\"struct syn::buffer::Cursor\">Cursor</a>&lt;'a&gt;"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"syn/struct.Lifetime.html\" title=\"struct syn::Lifetime\">Lifetime</a>"]],
"tracing_core":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a>&lt;<a class=\"struct\" href=\"tracing_core/struct.LevelFilter.html\" title=\"struct tracing_core::LevelFilter\">LevelFilter</a>&gt; for <a class=\"struct\" href=\"tracing_core/struct.Level.html\" title=\"struct tracing_core::Level\">Level</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a>&lt;<a class=\"struct\" href=\"tracing_core/struct.Level.html\" title=\"struct tracing_core::Level\">Level</a>&gt; for <a class=\"struct\" href=\"tracing_core/struct.LevelFilter.html\" title=\"struct tracing_core::LevelFilter\">LevelFilter</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"tracing_core/struct.Level.html\" title=\"struct tracing_core::Level\">Level</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"tracing_core/struct.LevelFilter.html\" title=\"struct tracing_core::LevelFilter\">LevelFilter</a>"]],

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1,6 +1,7 @@
(function() {var implementors = {
"clap_builder":[["impl&lt;F: <a class=\"trait\" href=\"clap_builder/error/trait.ErrorFormatter.html\" title=\"trait clap_builder::error::ErrorFormatter\">ErrorFormatter</a>&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"clap_builder/error/struct.Error.html\" title=\"struct clap_builder::error::Error\">Error</a>&lt;F&gt;"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"clap_builder/parser/enum.MatchesError.html\" title=\"enum clap_builder::parser::MatchesError\">MatchesError</a>"]],
"color_spantrace":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"color_spantrace/struct.InstallThemeError.html\" title=\"struct color_spantrace::InstallThemeError\">InstallThemeError</a>"]],
"edlang_lowering":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"edlang_lowering/errors/enum.LoweringError.html\" title=\"enum edlang_lowering::errors::LoweringError\">LoweringError</a>"]],
"either":[["impl&lt;L, R&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"either/enum.Either.html\" title=\"enum either::Either\">Either</a>&lt;L, R&gt;<div class=\"where\">where\n L: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a>,\n R: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a>,</div>"]],
"eyre":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"eyre/struct.InstallError.html\" title=\"struct eyre::InstallError\">InstallError</a>"]],
"inkwell":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"inkwell/execution_engine/enum.FunctionLookupError.html\" title=\"enum inkwell::execution_engine::FunctionLookupError\">FunctionLookupError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"inkwell/support/struct.LLVMString.html\" title=\"struct inkwell::support::LLVMString\">LLVMString</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"inkwell/support/enum.LoadLibraryError.html\" title=\"enum inkwell::support::LoadLibraryError\">LoadLibraryError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"inkwell/builder/enum.BuilderError.html\" title=\"enum inkwell::builder::BuilderError\">BuilderError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"inkwell/execution_engine/enum.RemoveModuleError.html\" title=\"enum inkwell::execution_engine::RemoveModuleError\">RemoveModuleError</a>"]],
@ -10,7 +11,7 @@
"proc_macro2":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"proc_macro2/struct.LexError.html\" title=\"struct proc_macro2::LexError\">LexError</a>"]],
"regex":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"regex/enum.Error.html\" title=\"enum regex::Error\">Error</a>"]],
"regex_automata":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_automata/nfa/thompson/struct.BuildError.html\" title=\"struct regex_automata::nfa::thompson::BuildError\">BuildError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_automata/struct.PatternSetInsertError.html\" title=\"struct regex_automata::PatternSetInsertError\">PatternSetInsertError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_automata/util/wire/struct.DeserializeError.html\" title=\"struct regex_automata::util::wire::DeserializeError\">DeserializeError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_automata/util/primitives/struct.PatternIDError.html\" title=\"struct regex_automata::util::primitives::PatternIDError\">PatternIDError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_automata/util/primitives/struct.SmallIndexError.html\" title=\"struct regex_automata::util::primitives::SmallIndexError\">SmallIndexError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_automata/util/captures/struct.GroupInfoError.html\" title=\"struct regex_automata::util::captures::GroupInfoError\">GroupInfoError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_automata/util/wire/struct.SerializeError.html\" title=\"struct regex_automata::util::wire::SerializeError\">SerializeError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_automata/util/look/struct.UnicodeWordBoundaryError.html\" title=\"struct regex_automata::util::look::UnicodeWordBoundaryError\">UnicodeWordBoundaryError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_automata/struct.MatchError.html\" title=\"struct regex_automata::MatchError\">MatchError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_automata/meta/struct.BuildError.html\" title=\"struct regex_automata::meta::BuildError\">BuildError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_automata/util/primitives/struct.StateIDError.html\" title=\"struct regex_automata::util::primitives::StateIDError\">StateIDError</a>"]],
"regex_syntax":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_syntax/ast/struct.Error.html\" title=\"struct regex_syntax::ast::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.CaseFoldError.html\" title=\"struct regex_syntax::hir::CaseFoldError\">CaseFoldError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_syntax/struct.UnicodeWordError.html\" title=\"struct regex_syntax::UnicodeWordError\">UnicodeWordError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.Error.html\" title=\"struct regex_syntax::hir::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"regex_syntax/enum.Error.html\" title=\"enum regex_syntax::Error\">Error</a>"]],
"regex_syntax":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_syntax/ast/struct.Error.html\" title=\"struct regex_syntax::ast::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"regex_syntax/enum.Error.html\" title=\"enum regex_syntax::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.Error.html\" title=\"struct regex_syntax::hir::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.CaseFoldError.html\" title=\"struct regex_syntax::hir::CaseFoldError\">CaseFoldError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"regex_syntax/struct.UnicodeWordError.html\" title=\"struct regex_syntax::UnicodeWordError\">UnicodeWordError</a>"]],
"strsim":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"strsim/enum.StrSimError.html\" title=\"enum strsim::StrSimError\">StrSimError</a>"]],
"syn":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"syn/parse/struct.Error.html\" title=\"struct syn::parse::Error\">Error</a>"]],
"tracing_core":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"tracing_core/dispatcher/struct.SetGlobalDefaultError.html\" title=\"struct tracing_core::dispatcher::SetGlobalDefaultError\">SetGlobalDefaultError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"tracing_core/metadata/struct.ParseLevelError.html\" title=\"struct tracing_core::metadata::ParseLevelError\">ParseLevelError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"struct\" href=\"tracing_core/metadata/struct.ParseLevelFilterError.html\" title=\"struct tracing_core::metadata::ParseLevelFilterError\">ParseLevelFilterError</a>"]],

File diff suppressed because one or more lines are too long

View file

@ -7,6 +7,7 @@
"clap_builder":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"clap_builder/error/enum.ContextKind.html\" title=\"enum clap_builder::error::ContextKind\">ContextKind</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"clap_builder/builder/struct.Arg.html\" title=\"struct clap_builder::builder::Arg\">Arg</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"clap_builder/error/enum.ErrorKind.html\" title=\"enum clap_builder::error::ErrorKind\">ErrorKind</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"clap_builder/parser/enum.MatchesError.html\" title=\"enum clap_builder::parser::MatchesError\">MatchesError</a>"],["impl&lt;F: <a class=\"trait\" href=\"clap_builder/error/trait.ErrorFormatter.html\" title=\"trait clap_builder::error::ErrorFormatter\">ErrorFormatter</a>&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"clap_builder/error/struct.Error.html\" title=\"struct clap_builder::error::Error\">Error</a>&lt;F&gt;"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"clap_builder/error/enum.ContextValue.html\" title=\"enum clap_builder::error::ContextValue\">ContextValue</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"clap_builder/builder/struct.ValueRange.html\" title=\"struct clap_builder::builder::ValueRange\">ValueRange</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"clap_builder/builder/struct.Str.html\" title=\"struct clap_builder::builder::Str\">Str</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"clap_builder/enum.ColorChoice.html\" title=\"enum clap_builder::ColorChoice\">ColorChoice</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"clap_builder/builder/struct.StyledStr.html\" title=\"struct clap_builder::builder::StyledStr\">StyledStr</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"clap_builder/struct.Id.html\" title=\"struct clap_builder::Id\">Id</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"clap_builder/builder/struct.Command.html\" title=\"struct clap_builder::builder::Command\">Command</a>"]],
"color_eyre":[["impl&lt;H, B&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"color_eyre/section/struct.IndentedSection.html\" title=\"struct color_eyre::section::IndentedSection\">IndentedSection</a>&lt;H, B&gt;<div class=\"where\">where\n H: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> + 'static,\n B: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> + 'static,</div>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"color_eyre/config/struct.PanicReport.html\" title=\"struct color_eyre::config::PanicReport\">PanicReport</a>&lt;'_&gt;"]],
"color_spantrace":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"color_spantrace/struct.InstallThemeError.html\" title=\"struct color_spantrace::InstallThemeError\">InstallThemeError</a>"]],
"edlang_lowering":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"edlang_lowering/errors/enum.LoweringError.html\" title=\"enum edlang_lowering::errors::LoweringError\">LoweringError</a>"]],
"edlang_parser":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"edlang_parser/lexer/enum.LexicalError.html\" title=\"enum edlang_parser::lexer::LexicalError\">LexicalError</a>"]],
"either":[["impl&lt;L, R&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"either/enum.Either.html\" title=\"enum either::Either\">Either</a>&lt;L, R&gt;<div class=\"where\">where\n L: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a>,\n R: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a>,</div>"]],
"eyre":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"eyre/struct.InstallError.html\" title=\"struct eyre::InstallError\">InstallError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"eyre/struct.Report.html\" title=\"struct eyre::Report\">Report</a>"]],
@ -22,7 +23,7 @@
"proc_macro2":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"proc_macro2/struct.TokenStream.html\" title=\"struct proc_macro2::TokenStream\">TokenStream</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"proc_macro2/struct.Ident.html\" title=\"struct proc_macro2::Ident\">Ident</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"proc_macro2/struct.Literal.html\" title=\"struct proc_macro2::Literal\">Literal</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"proc_macro2/struct.Group.html\" title=\"struct proc_macro2::Group\">Group</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"proc_macro2/enum.TokenTree.html\" title=\"enum proc_macro2::TokenTree\">TokenTree</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"proc_macro2/struct.LexError.html\" title=\"struct proc_macro2::LexError\">LexError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"proc_macro2/struct.Punct.html\" title=\"struct proc_macro2::Punct\">Punct</a>"]],
"regex":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"regex/enum.Error.html\" title=\"enum regex::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex/bytes/struct.Regex.html\" title=\"struct regex::bytes::Regex\">Regex</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex/struct.Regex.html\" title=\"struct regex::Regex\">Regex</a>"]],
"regex_automata":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_automata/nfa/thompson/struct.BuildError.html\" title=\"struct regex_automata::nfa::thompson::BuildError\">BuildError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_automata/struct.MatchError.html\" title=\"struct regex_automata::MatchError\">MatchError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_automata/meta/struct.BuildError.html\" title=\"struct regex_automata::meta::BuildError\">BuildError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_automata/struct.PatternSetInsertError.html\" title=\"struct regex_automata::PatternSetInsertError\">PatternSetInsertError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_automata/util/primitives/struct.StateIDError.html\" title=\"struct regex_automata::util::primitives::StateIDError\">StateIDError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_automata/util/wire/struct.DeserializeError.html\" title=\"struct regex_automata::util::wire::DeserializeError\">DeserializeError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_automata/util/wire/struct.SerializeError.html\" title=\"struct regex_automata::util::wire::SerializeError\">SerializeError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_automata/util/look/struct.UnicodeWordBoundaryError.html\" title=\"struct regex_automata::util::look::UnicodeWordBoundaryError\">UnicodeWordBoundaryError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_automata/util/captures/struct.GroupInfoError.html\" title=\"struct regex_automata::util::captures::GroupInfoError\">GroupInfoError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_automata/util/primitives/struct.PatternIDError.html\" title=\"struct regex_automata::util::primitives::PatternIDError\">PatternIDError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_automata/util/primitives/struct.SmallIndexError.html\" title=\"struct regex_automata::util::primitives::SmallIndexError\">SmallIndexError</a>"]],
"regex_syntax":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"regex_syntax/ast/enum.ErrorKind.html\" title=\"enum regex_syntax::ast::ErrorKind\">ErrorKind</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"regex_syntax/ast/enum.Ast.html\" title=\"enum regex_syntax::ast::Ast\">Ast</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.CaseFoldError.html\" title=\"struct regex_syntax::hir::CaseFoldError\">CaseFoldError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_syntax/struct.UnicodeWordError.html\" title=\"struct regex_syntax::UnicodeWordError\">UnicodeWordError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"regex_syntax/hir/enum.ErrorKind.html\" title=\"enum regex_syntax::hir::ErrorKind\">ErrorKind</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"regex_syntax/enum.Error.html\" title=\"enum regex_syntax::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_syntax/ast/struct.Error.html\" title=\"struct regex_syntax::ast::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.Error.html\" title=\"struct regex_syntax::hir::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.Hir.html\" title=\"struct regex_syntax::hir::Hir\">Hir</a>"]],
"regex_syntax":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"regex_syntax/enum.Error.html\" title=\"enum regex_syntax::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_syntax/ast/struct.Error.html\" title=\"struct regex_syntax::ast::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_syntax/struct.UnicodeWordError.html\" title=\"struct regex_syntax::UnicodeWordError\">UnicodeWordError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"regex_syntax/ast/enum.Ast.html\" title=\"enum regex_syntax::ast::Ast\">Ast</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"regex_syntax/hir/enum.ErrorKind.html\" title=\"enum regex_syntax::hir::ErrorKind\">ErrorKind</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"regex_syntax/ast/enum.ErrorKind.html\" title=\"enum regex_syntax::ast::ErrorKind\">ErrorKind</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.Hir.html\" title=\"struct regex_syntax::hir::Hir\">Hir</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.CaseFoldError.html\" title=\"struct regex_syntax::hir::CaseFoldError\">CaseFoldError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.Error.html\" title=\"struct regex_syntax::hir::Error\">Error</a>"]],
"rustc_demangle":[["impl&lt;'a&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"rustc_demangle/struct.Demangle.html\" title=\"struct rustc_demangle::Demangle\">Demangle</a>&lt;'a&gt;"]],
"smallvec":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"smallvec/enum.CollectionAllocErr.html\" title=\"enum smallvec::CollectionAllocErr\">CollectionAllocErr</a>"]],
"strsim":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"strsim/enum.StrSimError.html\" title=\"enum strsim::StrSimError\">StrSimError</a>"]],

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -5,7 +5,7 @@
"inkwell":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/targets/struct.TargetMachine.html\" title=\"struct inkwell::targets::TargetMachine\">TargetMachine</a>"],["impl&lt;'ctx&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/debug_info/struct.DebugInfoBuilder.html\" title=\"struct inkwell::debug_info::DebugInfoBuilder\">DebugInfoBuilder</a>&lt;'ctx&gt;"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/execution_engine/struct.ExecutionEngine.html\" title=\"struct inkwell::execution_engine::ExecutionEngine\">ExecutionEngine</a>&lt;'_&gt;"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/context/struct.Context.html\" title=\"struct inkwell::context::Context\">Context</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/builder/struct.Builder.html\" title=\"struct inkwell::builder::Builder\">Builder</a>&lt;'_&gt;"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/object_file/struct.ObjectFile.html\" title=\"struct inkwell::object_file::ObjectFile\">ObjectFile</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/module/struct.Module.html\" title=\"struct inkwell::module::Module\">Module</a>&lt;'_&gt;"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/passes/struct.PassBuilderOptions.html\" title=\"struct inkwell::passes::PassBuilderOptions\">PassBuilderOptions</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/support/struct.LLVMString.html\" title=\"struct inkwell::support::LLVMString\">LLVMString</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/object_file/struct.SectionIterator.html\" title=\"struct inkwell::object_file::SectionIterator\">SectionIterator</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/targets/struct.TargetData.html\" title=\"struct inkwell::targets::TargetData\">TargetData</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/object_file/struct.RelocationIterator.html\" title=\"struct inkwell::object_file::RelocationIterator\">RelocationIterator</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/memory_buffer/struct.MemoryBuffer.html\" title=\"struct inkwell::memory_buffer::MemoryBuffer\">MemoryBuffer</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/values/struct.GenericValue.html\" title=\"struct inkwell::values::GenericValue\">GenericValue</a>&lt;'_&gt;"],["impl&lt;T&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/passes/struct.PassManager.html\" title=\"struct inkwell::passes::PassManager\">PassManager</a>&lt;T&gt;"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"inkwell/object_file/struct.SymbolIterator.html\" title=\"struct inkwell::object_file::SymbolIterator\">SymbolIterator</a>"]],
"itertools":[["impl&lt;'a, I&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"itertools/structs/struct.Chunk.html\" title=\"struct itertools::structs::Chunk\">Chunk</a>&lt;'a, I&gt;<div class=\"where\">where\n I: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a>,\n I::<a class=\"associatedtype\" href=\"https://doc.rust-lang.org/1.76.0/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item\" title=\"type core::iter::traits::iterator::Iterator::Item\">Item</a>: 'a,</div>"],["impl&lt;'a, K, I, F&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"itertools/structs/struct.Group.html\" title=\"struct itertools::structs::Group\">Group</a>&lt;'a, K, I, F&gt;<div class=\"where\">where\n I: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a>,\n I::<a class=\"associatedtype\" href=\"https://doc.rust-lang.org/1.76.0/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item\" title=\"type core::iter::traits::iterator::Iterator::Item\">Item</a>: 'a,</div>"]],
"once_cell":[["impl&lt;T&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"once_cell/race/struct.OnceBox.html\" title=\"struct once_cell::race::OnceBox\">OnceBox</a>&lt;T&gt;"]],
"regex_syntax":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.Hir.html\" title=\"struct regex_syntax::hir::Hir\">Hir</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"enum\" href=\"regex_syntax/ast/enum.Ast.html\" title=\"enum regex_syntax::ast::Ast\">Ast</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"enum\" href=\"regex_syntax/ast/enum.ClassSet.html\" title=\"enum regex_syntax::ast::ClassSet\">ClassSet</a>"]],
"regex_syntax":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"enum\" href=\"regex_syntax/ast/enum.ClassSet.html\" title=\"enum regex_syntax::ast::ClassSet\">ClassSet</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"regex_syntax/hir/struct.Hir.html\" title=\"struct regex_syntax::hir::Hir\">Hir</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"enum\" href=\"regex_syntax/ast/enum.Ast.html\" title=\"enum regex_syntax::ast::Ast\">Ast</a>"]],
"sharded_slab":[["impl&lt;T, C&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"sharded_slab/pool/struct.OwnedRef.html\" title=\"struct sharded_slab::pool::OwnedRef\">OwnedRef</a>&lt;T, C&gt;<div class=\"where\">where\n T: <a class=\"trait\" href=\"sharded_slab/trait.Clear.html\" title=\"trait sharded_slab::Clear\">Clear</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/default/trait.Default.html\" title=\"trait core::default::Default\">Default</a>,\n C: <a class=\"trait\" href=\"sharded_slab/trait.Config.html\" title=\"trait sharded_slab::Config\">Config</a>,</div>"],["impl&lt;'a, T, C&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"sharded_slab/pool/struct.RefMut.html\" title=\"struct sharded_slab::pool::RefMut\">RefMut</a>&lt;'a, T, C&gt;<div class=\"where\">where\n T: <a class=\"trait\" href=\"sharded_slab/trait.Clear.html\" title=\"trait sharded_slab::Clear\">Clear</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/default/trait.Default.html\" title=\"trait core::default::Default\">Default</a>,\n C: <a class=\"trait\" href=\"sharded_slab/trait.Config.html\" title=\"trait sharded_slab::Config\">Config</a>,</div>"],["impl&lt;T, C&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"sharded_slab/struct.OwnedEntry.html\" title=\"struct sharded_slab::OwnedEntry\">OwnedEntry</a>&lt;T, C&gt;<div class=\"where\">where\n C: <a class=\"trait\" href=\"sharded_slab/trait.Config.html\" title=\"trait sharded_slab::Config\">Config</a>,</div>"],["impl&lt;T, C&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"sharded_slab/pool/struct.OwnedRefMut.html\" title=\"struct sharded_slab::pool::OwnedRefMut\">OwnedRefMut</a>&lt;T, C&gt;<div class=\"where\">where\n T: <a class=\"trait\" href=\"sharded_slab/trait.Clear.html\" title=\"trait sharded_slab::Clear\">Clear</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/default/trait.Default.html\" title=\"trait core::default::Default\">Default</a>,\n C: <a class=\"trait\" href=\"sharded_slab/trait.Config.html\" title=\"trait sharded_slab::Config\">Config</a>,</div>"],["impl&lt;'a, T, C: <a class=\"trait\" href=\"sharded_slab/trait.Config.html\" title=\"trait sharded_slab::Config\">Config</a>&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"sharded_slab/struct.Entry.html\" title=\"struct sharded_slab::Entry\">Entry</a>&lt;'a, T, C&gt;"],["impl&lt;'a, T, C&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"sharded_slab/pool/struct.Ref.html\" title=\"struct sharded_slab::pool::Ref\">Ref</a>&lt;'a, T, C&gt;<div class=\"where\">where\n T: <a class=\"trait\" href=\"sharded_slab/trait.Clear.html\" title=\"trait sharded_slab::Clear\">Clear</a> + <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/default/trait.Default.html\" title=\"trait core::default::Default\">Default</a>,\n C: <a class=\"trait\" href=\"sharded_slab/trait.Config.html\" title=\"trait sharded_slab::Config\">Config</a>,</div>"]],
"smallvec":[["impl&lt;A: <a class=\"trait\" href=\"smallvec/trait.Array.html\" title=\"trait smallvec::Array\">Array</a>&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"smallvec/struct.SmallVec.html\" title=\"struct smallvec::SmallVec\">SmallVec</a>&lt;A&gt;"],["impl&lt;A: <a class=\"trait\" href=\"smallvec/trait.Array.html\" title=\"trait smallvec::Array\">Array</a>&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"smallvec/struct.IntoIter.html\" title=\"struct smallvec::IntoIter\">IntoIter</a>&lt;A&gt;"],["impl&lt;'a, T: 'a + <a class=\"trait\" href=\"smallvec/trait.Array.html\" title=\"trait smallvec::Array\">Array</a>&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"smallvec/struct.Drain.html\" title=\"struct smallvec::Drain\">Drain</a>&lt;'a, T&gt;"]],
"syn":[["impl&lt;'a&gt; <a class=\"trait\" href=\"https://doc.rust-lang.org/1.76.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"syn/parse/struct.ParseBuffer.html\" title=\"struct syn::parse::ParseBuffer\">ParseBuffer</a>&lt;'a&gt;"]],

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long