diff options
author | johannst <johannst@users.noreply.github.com> | 2023-12-07 23:53:44 +0000 |
---|---|---|
committer | johannst <johannst@users.noreply.github.com> | 2023-12-07 23:53:44 +0000 |
commit | d3e1eff9593501ff8677b9399e1f0625f415ec78 (patch) | |
tree | fbc8aa062fdd4ca510fae17ea515354549636f29 | |
parent | 2294180c3778d0fcfa877818e98c420fcd54bb8a (diff) | |
download | juicebox-asm-d3e1eff9593501ff8677b9399e1f0625f415ec78.tar.gz juicebox-asm-d3e1eff9593501ff8677b9399e1f0625f415ec78.zip |
deploy: b5aea3fb5fcce31599e3d7397d5413a934132231
102 files changed, 1279 insertions, 1341 deletions
diff --git a/fib/index.html b/fib/index.html index 6d09b7f..5447c2b 100644 --- a/fib/index.html +++ b/fib/index.html @@ -1,4 +1,4 @@ -<!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="Fibonacci example."><title>fib - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="fib" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="../crates.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../fib/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../fib/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Crate fib</a></h2><div class="sidebar-elems"><ul class="block"><li class="version">Version 0.1.0</li><li><a id="all-types" href="all.html">All Items</a></li></ul></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Crate <a class="mod" href="#">fib</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/fib/fib.rs.html#1-78">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Fibonacci example.</p> +<!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="Fibonacci example."><title>fib - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="fib" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="../crates.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../fib/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../fib/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Crate fib</a></h2><div class="sidebar-elems"><ul class="block"><li class="version">Version 0.1.0</li><li><a id="all-types" href="all.html">All Items</a></li></ul></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Crate <a class="mod" href="#">fib</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/fib/fib.rs.html#1-79">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Fibonacci example.</p> <p>Jit compile a function at runtime (generate native host code) to compute the fibonacci sequence to demonstrate the <a href="../juicebox_asm/index.html" title="mod juicebox_asm"><code>juicebox_asm</code></a> crate.</p> </div></details></section></div></main></body></html>
\ No newline at end of file @@ -1 +1 @@ -<!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="Documentation for Rustdoc"><title>Rustdoc help</title><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="./static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="./static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="./" data-static-root-path="./static.files/" data-current-crate="fib" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="./static.files/storage-fec3eaa3851e447d.js"></script><script defer src="./static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="./static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="./fib/index.html"><img class="rust-logo" src="./static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="./fib/index.html"><img class="rust-logo" src="./static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location">Help</h2><div class="sidebar-elems"></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="./help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="./settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="./static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Rustdoc help</h1><span class="out-of-band"><a id="back" href="javascript:void(0)" onclick="history.back();">Back</a></span></div><noscript><section><p>You need to enable JavaScript to use keyboard commands or search.</p><p>For more information, browse the <a href="https://doc.rust-lang.org/rustdoc/">rustdoc handbook</a>.</p></section></noscript></section></div></main></body></html>
\ No newline at end of file +<!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="Documentation for Rustdoc"><title>Rustdoc help</title><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="./static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="./static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="./" data-static-root-path="./static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="./static.files/storage-fec3eaa3851e447d.js"></script><script defer src="./static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="./static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="./tiny_vm/index.html"><img class="rust-logo" src="./static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="./tiny_vm/index.html"><img class="rust-logo" src="./static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location">Help</h2><div class="sidebar-elems"></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="./help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="./settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="./static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Rustdoc help</h1><span class="out-of-band"><a id="back" href="javascript:void(0)" onclick="history.back();">Back</a></span></div><noscript><section><p>You need to enable JavaScript to use keyboard commands or search.</p><p>For more information, browse the <a href="https://doc.rust-lang.org/rustdoc/">rustdoc handbook</a>.</p></section></noscript></section></div></main></body></html>
\ No newline at end of file diff --git a/implementors/core/clone/trait.Clone.js b/implementors/core/clone/trait.Clone.js index 3d5056c..905201f 100644 --- a/implementors/core/clone/trait.Clone.js +++ b/implementors/core/clone/trait.Clone.js @@ -1,4 +1,4 @@ (function() {var implementors = { -"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html\" title=\"trait core::clone::Clone\">Clone</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg32.html\" title=\"enum juicebox_asm::prelude::Reg32\">Reg32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html\" title=\"trait core::clone::Clone\">Clone</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg8.html\" title=\"enum juicebox_asm::prelude::Reg8\">Reg8</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html\" title=\"trait core::clone::Clone\">Clone</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg64.html\" title=\"enum juicebox_asm::prelude::Reg64\">Reg64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html\" title=\"trait core::clone::Clone\">Clone</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg16.html\" title=\"enum juicebox_asm::prelude::Reg16\">Reg16</a>"]], +"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html\" title=\"trait core::clone::Clone\">Clone</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg32.html\" title=\"enum juicebox_asm::Reg32\">Reg32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html\" title=\"trait core::clone::Clone\">Clone</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg8.html\" title=\"enum juicebox_asm::Reg8\">Reg8</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html\" title=\"trait core::clone::Clone\">Clone</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg64.html\" title=\"enum juicebox_asm::Reg64\">Reg64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html\" title=\"trait core::clone::Clone\">Clone</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg16.html\" title=\"enum juicebox_asm::Reg16\">Reg16</a>"]], "tiny_vm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html\" title=\"trait core::clone::Clone\">Clone</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyReg.html\" title=\"enum tiny_vm::TinyReg\">TinyReg</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html\" title=\"trait core::clone::Clone\">Clone</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyInsn.html\" title=\"enum tiny_vm::TinyInsn\">TinyInsn</a>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file diff --git a/implementors/core/convert/trait.From.js b/implementors/core/convert/trait.From.js index 99058f2..9e4dad6 100644 --- a/implementors/core/convert/trait.From.js +++ b/implementors/core/convert/trait.From.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i32.html\">i32</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm32.html\" title=\"struct juicebox_asm::prelude::Imm32\">Imm32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u16.html\">u16</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm32.html\" title=\"struct juicebox_asm::prelude::Imm32\">Imm32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i8.html\">i8</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm8.html\" title=\"struct juicebox_asm::prelude::Imm8\">Imm8</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u8.html\">u8</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm8.html\" title=\"struct juicebox_asm::prelude::Imm8\">Imm8</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i16.html\">i16</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i16.html\">i16</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm16.html\" title=\"struct juicebox_asm::prelude::Imm16\">Imm16</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u16.html\">u16</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm16.html\" title=\"struct juicebox_asm::prelude::Imm16\">Imm16</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i64.html\">i64</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u32.html\">u32</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i8.html\">i8</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u8.html\">u8</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i8.html\">i8</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm32.html\" title=\"struct juicebox_asm::prelude::Imm32\">Imm32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u32.html\">u32</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm32.html\" title=\"struct juicebox_asm::prelude::Imm32\">Imm32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u16.html\">u16</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i8.html\">i8</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm16.html\" title=\"struct juicebox_asm::prelude::Imm16\">Imm16</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u64.html\">u64</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i32.html\">i32</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u8.html\">u8</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm32.html\" title=\"struct juicebox_asm::prelude::Imm32\">Imm32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u8.html\">u8</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm16.html\" title=\"struct juicebox_asm::prelude::Imm16\">Imm16</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i16.html\">i16</a>> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm32.html\" title=\"struct juicebox_asm::prelude::Imm32\">Imm32</a>"]] +"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i32.html\">i32</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm32.html\" title=\"struct juicebox_asm::Imm32\">Imm32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u16.html\">u16</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm32.html\" title=\"struct juicebox_asm::Imm32\">Imm32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i8.html\">i8</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm8.html\" title=\"struct juicebox_asm::Imm8\">Imm8</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u8.html\">u8</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm8.html\" title=\"struct juicebox_asm::Imm8\">Imm8</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.usize.html\">usize</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i16.html\">i16</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i16.html\">i16</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm16.html\" title=\"struct juicebox_asm::Imm16\">Imm16</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u16.html\">u16</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm16.html\" title=\"struct juicebox_asm::Imm16\">Imm16</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i64.html\">i64</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u32.html\">u32</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i8.html\">i8</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u8.html\">u8</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i8.html\">i8</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm32.html\" title=\"struct juicebox_asm::Imm32\">Imm32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u32.html\">u32</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm32.html\" title=\"struct juicebox_asm::Imm32\">Imm32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u16.html\">u16</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i8.html\">i8</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm16.html\" title=\"struct juicebox_asm::Imm16\">Imm16</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u64.html\">u64</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i32.html\">i32</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.isize.html\">isize</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u8.html\">u8</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm32.html\" title=\"struct juicebox_asm::Imm32\">Imm32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.u8.html\">u8</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm16.html\" title=\"struct juicebox_asm::Imm16\">Imm16</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html\" title=\"trait core::convert::From\">From</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.74.0/std/primitive.i16.html\">i16</a>> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm32.html\" title=\"struct juicebox_asm::Imm32\">Imm32</a>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file diff --git a/implementors/core/marker/trait.Copy.js b/implementors/core/marker/trait.Copy.js index 7220462..f3c8d33 100644 --- a/implementors/core/marker/trait.Copy.js +++ b/implementors/core/marker/trait.Copy.js @@ -1,4 +1,4 @@ (function() {var implementors = { -"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html\" title=\"trait core::marker::Copy\">Copy</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg64.html\" title=\"enum juicebox_asm::prelude::Reg64\">Reg64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html\" title=\"trait core::marker::Copy\">Copy</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg32.html\" title=\"enum juicebox_asm::prelude::Reg32\">Reg32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html\" title=\"trait core::marker::Copy\">Copy</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg16.html\" title=\"enum juicebox_asm::prelude::Reg16\">Reg16</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html\" title=\"trait core::marker::Copy\">Copy</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg8.html\" title=\"enum juicebox_asm::prelude::Reg8\">Reg8</a>"]], +"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html\" title=\"trait core::marker::Copy\">Copy</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg64.html\" title=\"enum juicebox_asm::Reg64\">Reg64</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html\" title=\"trait core::marker::Copy\">Copy</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg32.html\" title=\"enum juicebox_asm::Reg32\">Reg32</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html\" title=\"trait core::marker::Copy\">Copy</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg16.html\" title=\"enum juicebox_asm::Reg16\">Reg16</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html\" title=\"trait core::marker::Copy\">Copy</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg8.html\" title=\"enum juicebox_asm::Reg8\">Reg8</a>"]], "tiny_vm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html\" title=\"trait core::marker::Copy\">Copy</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyInsn.html\" title=\"enum tiny_vm::TinyInsn\">TinyInsn</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html\" title=\"trait core::marker::Copy\">Copy</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyReg.html\" title=\"enum tiny_vm::TinyReg\">TinyReg</a>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file diff --git a/implementors/core/marker/trait.Freeze.js b/implementors/core/marker/trait.Freeze.js index a20eabc..13b78cd 100644 --- a/implementors/core/marker/trait.Freeze.js +++ b/implementors/core/marker/trait.Freeze.js @@ -1,4 +1,4 @@ (function() {var implementors = { -"juicebox_asm":[["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm16.html\" title=\"struct juicebox_asm::prelude::Imm16\">Imm16</a>",1,["juicebox_asm::imm::Imm16"]],["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm32.html\" title=\"struct juicebox_asm::prelude::Imm32\">Imm32</a>",1,["juicebox_asm::imm::Imm32"]],["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>",1,["juicebox_asm::imm::Imm64"]],["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm8.html\" title=\"struct juicebox_asm::prelude::Imm8\">Imm8</a>",1,["juicebox_asm::imm::Imm8"]],["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Label.html\" title=\"struct juicebox_asm::prelude::Label\">Label</a>",1,["juicebox_asm::label::Label"]],["impl Freeze for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg16.html\" title=\"enum juicebox_asm::prelude::Reg16\">Reg16</a>",1,["juicebox_asm::reg::Reg16"]],["impl Freeze for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg32.html\" title=\"enum juicebox_asm::prelude::Reg32\">Reg32</a>",1,["juicebox_asm::reg::Reg32"]],["impl Freeze for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg64.html\" title=\"enum juicebox_asm::prelude::Reg64\">Reg64</a>",1,["juicebox_asm::reg::Reg64"]],["impl Freeze for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg8.html\" title=\"enum juicebox_asm::prelude::Reg8\">Reg8</a>",1,["juicebox_asm::reg::Reg8"]],["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>",1,["juicebox_asm::rt::Runtime"]],["impl Freeze for <a class=\"enum\" href=\"juicebox_asm/enum.MemOp.html\" title=\"enum juicebox_asm::MemOp\">MemOp</a>",1,["juicebox_asm::MemOp"]],["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/struct.Asm.html\" title=\"struct juicebox_asm::Asm\">Asm</a>",1,["juicebox_asm::Asm"]]], +"juicebox_asm":[["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/struct.Asm.html\" title=\"struct juicebox_asm::Asm\">Asm</a>",1,["juicebox_asm::asm::Asm"]],["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/struct.Imm8.html\" title=\"struct juicebox_asm::Imm8\">Imm8</a>",1,["juicebox_asm::imm::Imm8"]],["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/struct.Imm16.html\" title=\"struct juicebox_asm::Imm16\">Imm16</a>",1,["juicebox_asm::imm::Imm16"]],["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/struct.Imm32.html\" title=\"struct juicebox_asm::Imm32\">Imm32</a>",1,["juicebox_asm::imm::Imm32"]],["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>",1,["juicebox_asm::imm::Imm64"]],["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/struct.Label.html\" title=\"struct juicebox_asm::Label\">Label</a>",1,["juicebox_asm::label::Label"]],["impl Freeze for <a class=\"enum\" href=\"juicebox_asm/enum.Reg64.html\" title=\"enum juicebox_asm::Reg64\">Reg64</a>",1,["juicebox_asm::reg::Reg64"]],["impl Freeze for <a class=\"enum\" href=\"juicebox_asm/enum.Reg32.html\" title=\"enum juicebox_asm::Reg32\">Reg32</a>",1,["juicebox_asm::reg::Reg32"]],["impl Freeze for <a class=\"enum\" href=\"juicebox_asm/enum.Reg16.html\" title=\"enum juicebox_asm::Reg16\">Reg16</a>",1,["juicebox_asm::reg::Reg16"]],["impl Freeze for <a class=\"enum\" href=\"juicebox_asm/enum.Reg8.html\" title=\"enum juicebox_asm::Reg8\">Reg8</a>",1,["juicebox_asm::reg::Reg8"]],["impl Freeze for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>",1,["juicebox_asm::rt::Runtime"]],["impl Freeze for <a class=\"enum\" href=\"juicebox_asm/enum.MemOp.html\" title=\"enum juicebox_asm::MemOp\">MemOp</a>",1,["juicebox_asm::MemOp"]]], "tiny_vm":[["impl Freeze for <a class=\"struct\" href=\"tiny_vm/struct.PhysAddr.html\" title=\"struct tiny_vm::PhysAddr\">PhysAddr</a>",1,["tiny_vm::PhysAddr"]],["impl Freeze for <a class=\"enum\" href=\"tiny_vm/enum.TinyReg.html\" title=\"enum tiny_vm::TinyReg\">TinyReg</a>",1,["tiny_vm::TinyReg"]],["impl Freeze for <a class=\"enum\" href=\"tiny_vm/enum.TinyInsn.html\" title=\"enum tiny_vm::TinyInsn\">TinyInsn</a>",1,["tiny_vm::TinyInsn"]],["impl Freeze for <a class=\"struct\" href=\"tiny_vm/struct.TinyVm.html\" title=\"struct tiny_vm::TinyVm\">TinyVm</a>",1,["tiny_vm::TinyVm"]],["impl Freeze for <a class=\"struct\" href=\"tiny_vm/struct.Fixup.html\" title=\"struct tiny_vm::Fixup\">Fixup</a>",1,["tiny_vm::Fixup"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file diff --git a/implementors/core/marker/trait.Send.js b/implementors/core/marker/trait.Send.js index 448e624..2839e60 100644 --- a/implementors/core/marker/trait.Send.js +++ b/implementors/core/marker/trait.Send.js @@ -1,4 +1,4 @@ (function() {var implementors = { -"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm16.html\" title=\"struct juicebox_asm::prelude::Imm16\">Imm16</a>",1,["juicebox_asm::imm::Imm16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm32.html\" title=\"struct juicebox_asm::prelude::Imm32\">Imm32</a>",1,["juicebox_asm::imm::Imm32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>",1,["juicebox_asm::imm::Imm64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm8.html\" title=\"struct juicebox_asm::prelude::Imm8\">Imm8</a>",1,["juicebox_asm::imm::Imm8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Label.html\" title=\"struct juicebox_asm::prelude::Label\">Label</a>",1,["juicebox_asm::label::Label"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg16.html\" title=\"enum juicebox_asm::prelude::Reg16\">Reg16</a>",1,["juicebox_asm::reg::Reg16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg32.html\" title=\"enum juicebox_asm::prelude::Reg32\">Reg32</a>",1,["juicebox_asm::reg::Reg32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg64.html\" title=\"enum juicebox_asm::prelude::Reg64\">Reg64</a>",1,["juicebox_asm::reg::Reg64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg8.html\" title=\"enum juicebox_asm::prelude::Reg8\">Reg8</a>",1,["juicebox_asm::reg::Reg8"]],["impl !<a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>",1,["juicebox_asm::rt::Runtime"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"enum\" href=\"juicebox_asm/enum.MemOp.html\" title=\"enum juicebox_asm::MemOp\">MemOp</a>",1,["juicebox_asm::MemOp"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Asm.html\" title=\"struct juicebox_asm::Asm\">Asm</a>",1,["juicebox_asm::Asm"]]], +"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Asm.html\" title=\"struct juicebox_asm::Asm\">Asm</a>",1,["juicebox_asm::asm::Asm"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm8.html\" title=\"struct juicebox_asm::Imm8\">Imm8</a>",1,["juicebox_asm::imm::Imm8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm16.html\" title=\"struct juicebox_asm::Imm16\">Imm16</a>",1,["juicebox_asm::imm::Imm16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm32.html\" title=\"struct juicebox_asm::Imm32\">Imm32</a>",1,["juicebox_asm::imm::Imm32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>",1,["juicebox_asm::imm::Imm64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Label.html\" title=\"struct juicebox_asm::Label\">Label</a>",1,["juicebox_asm::label::Label"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg64.html\" title=\"enum juicebox_asm::Reg64\">Reg64</a>",1,["juicebox_asm::reg::Reg64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg32.html\" title=\"enum juicebox_asm::Reg32\">Reg32</a>",1,["juicebox_asm::reg::Reg32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg16.html\" title=\"enum juicebox_asm::Reg16\">Reg16</a>",1,["juicebox_asm::reg::Reg16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg8.html\" title=\"enum juicebox_asm::Reg8\">Reg8</a>",1,["juicebox_asm::reg::Reg8"]],["impl !<a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>",1,["juicebox_asm::rt::Runtime"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"enum\" href=\"juicebox_asm/enum.MemOp.html\" title=\"enum juicebox_asm::MemOp\">MemOp</a>",1,["juicebox_asm::MemOp"]]], "tiny_vm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"tiny_vm/struct.PhysAddr.html\" title=\"struct tiny_vm::PhysAddr\">PhysAddr</a>",1,["tiny_vm::PhysAddr"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyReg.html\" title=\"enum tiny_vm::TinyReg\">TinyReg</a>",1,["tiny_vm::TinyReg"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyInsn.html\" title=\"enum tiny_vm::TinyInsn\">TinyInsn</a>",1,["tiny_vm::TinyInsn"]],["impl !<a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"tiny_vm/struct.TinyVm.html\" title=\"struct tiny_vm::TinyVm\">TinyVm</a>",1,["tiny_vm::TinyVm"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html\" title=\"trait core::marker::Send\">Send</a> for <a class=\"struct\" href=\"tiny_vm/struct.Fixup.html\" title=\"struct tiny_vm::Fixup\">Fixup</a>",1,["tiny_vm::Fixup"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file diff --git a/implementors/core/marker/trait.Sync.js b/implementors/core/marker/trait.Sync.js index 507e5cb..b641c3b 100644 --- a/implementors/core/marker/trait.Sync.js +++ b/implementors/core/marker/trait.Sync.js @@ -1,4 +1,4 @@ (function() {var implementors = { -"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm16.html\" title=\"struct juicebox_asm::prelude::Imm16\">Imm16</a>",1,["juicebox_asm::imm::Imm16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm32.html\" title=\"struct juicebox_asm::prelude::Imm32\">Imm32</a>",1,["juicebox_asm::imm::Imm32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>",1,["juicebox_asm::imm::Imm64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm8.html\" title=\"struct juicebox_asm::prelude::Imm8\">Imm8</a>",1,["juicebox_asm::imm::Imm8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Label.html\" title=\"struct juicebox_asm::prelude::Label\">Label</a>",1,["juicebox_asm::label::Label"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg16.html\" title=\"enum juicebox_asm::prelude::Reg16\">Reg16</a>",1,["juicebox_asm::reg::Reg16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg32.html\" title=\"enum juicebox_asm::prelude::Reg32\">Reg32</a>",1,["juicebox_asm::reg::Reg32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg64.html\" title=\"enum juicebox_asm::prelude::Reg64\">Reg64</a>",1,["juicebox_asm::reg::Reg64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg8.html\" title=\"enum juicebox_asm::prelude::Reg8\">Reg8</a>",1,["juicebox_asm::reg::Reg8"]],["impl !<a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>",1,["juicebox_asm::rt::Runtime"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"enum\" href=\"juicebox_asm/enum.MemOp.html\" title=\"enum juicebox_asm::MemOp\">MemOp</a>",1,["juicebox_asm::MemOp"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Asm.html\" title=\"struct juicebox_asm::Asm\">Asm</a>",1,["juicebox_asm::Asm"]]], +"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Asm.html\" title=\"struct juicebox_asm::Asm\">Asm</a>",1,["juicebox_asm::asm::Asm"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm8.html\" title=\"struct juicebox_asm::Imm8\">Imm8</a>",1,["juicebox_asm::imm::Imm8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm16.html\" title=\"struct juicebox_asm::Imm16\">Imm16</a>",1,["juicebox_asm::imm::Imm16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm32.html\" title=\"struct juicebox_asm::Imm32\">Imm32</a>",1,["juicebox_asm::imm::Imm32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>",1,["juicebox_asm::imm::Imm64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Label.html\" title=\"struct juicebox_asm::Label\">Label</a>",1,["juicebox_asm::label::Label"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg64.html\" title=\"enum juicebox_asm::Reg64\">Reg64</a>",1,["juicebox_asm::reg::Reg64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg32.html\" title=\"enum juicebox_asm::Reg32\">Reg32</a>",1,["juicebox_asm::reg::Reg32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg16.html\" title=\"enum juicebox_asm::Reg16\">Reg16</a>",1,["juicebox_asm::reg::Reg16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg8.html\" title=\"enum juicebox_asm::Reg8\">Reg8</a>",1,["juicebox_asm::reg::Reg8"]],["impl !<a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>",1,["juicebox_asm::rt::Runtime"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"enum\" href=\"juicebox_asm/enum.MemOp.html\" title=\"enum juicebox_asm::MemOp\">MemOp</a>",1,["juicebox_asm::MemOp"]]], "tiny_vm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"tiny_vm/struct.PhysAddr.html\" title=\"struct tiny_vm::PhysAddr\">PhysAddr</a>",1,["tiny_vm::PhysAddr"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyReg.html\" title=\"enum tiny_vm::TinyReg\">TinyReg</a>",1,["tiny_vm::TinyReg"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyInsn.html\" title=\"enum tiny_vm::TinyInsn\">TinyInsn</a>",1,["tiny_vm::TinyInsn"]],["impl !<a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"tiny_vm/struct.TinyVm.html\" title=\"struct tiny_vm::TinyVm\">TinyVm</a>",1,["tiny_vm::TinyVm"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html\" title=\"trait core::marker::Sync\">Sync</a> for <a class=\"struct\" href=\"tiny_vm/struct.Fixup.html\" title=\"struct tiny_vm::Fixup\">Fixup</a>",1,["tiny_vm::Fixup"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file diff --git a/implementors/core/marker/trait.Unpin.js b/implementors/core/marker/trait.Unpin.js index 2515ec9..5dc3918 100644 --- a/implementors/core/marker/trait.Unpin.js +++ b/implementors/core/marker/trait.Unpin.js @@ -1,4 +1,4 @@ (function() {var implementors = { -"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm16.html\" title=\"struct juicebox_asm::prelude::Imm16\">Imm16</a>",1,["juicebox_asm::imm::Imm16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm32.html\" title=\"struct juicebox_asm::prelude::Imm32\">Imm32</a>",1,["juicebox_asm::imm::Imm32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>",1,["juicebox_asm::imm::Imm64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm8.html\" title=\"struct juicebox_asm::prelude::Imm8\">Imm8</a>",1,["juicebox_asm::imm::Imm8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Label.html\" title=\"struct juicebox_asm::prelude::Label\">Label</a>",1,["juicebox_asm::label::Label"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg16.html\" title=\"enum juicebox_asm::prelude::Reg16\">Reg16</a>",1,["juicebox_asm::reg::Reg16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg32.html\" title=\"enum juicebox_asm::prelude::Reg32\">Reg32</a>",1,["juicebox_asm::reg::Reg32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg64.html\" title=\"enum juicebox_asm::prelude::Reg64\">Reg64</a>",1,["juicebox_asm::reg::Reg64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg8.html\" title=\"enum juicebox_asm::prelude::Reg8\">Reg8</a>",1,["juicebox_asm::reg::Reg8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>",1,["juicebox_asm::rt::Runtime"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"enum\" href=\"juicebox_asm/enum.MemOp.html\" title=\"enum juicebox_asm::MemOp\">MemOp</a>",1,["juicebox_asm::MemOp"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Asm.html\" title=\"struct juicebox_asm::Asm\">Asm</a>",1,["juicebox_asm::Asm"]]], +"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Asm.html\" title=\"struct juicebox_asm::Asm\">Asm</a>",1,["juicebox_asm::asm::Asm"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm8.html\" title=\"struct juicebox_asm::Imm8\">Imm8</a>",1,["juicebox_asm::imm::Imm8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm16.html\" title=\"struct juicebox_asm::Imm16\">Imm16</a>",1,["juicebox_asm::imm::Imm16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm32.html\" title=\"struct juicebox_asm::Imm32\">Imm32</a>",1,["juicebox_asm::imm::Imm32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>",1,["juicebox_asm::imm::Imm64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Label.html\" title=\"struct juicebox_asm::Label\">Label</a>",1,["juicebox_asm::label::Label"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg64.html\" title=\"enum juicebox_asm::Reg64\">Reg64</a>",1,["juicebox_asm::reg::Reg64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg32.html\" title=\"enum juicebox_asm::Reg32\">Reg32</a>",1,["juicebox_asm::reg::Reg32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg16.html\" title=\"enum juicebox_asm::Reg16\">Reg16</a>",1,["juicebox_asm::reg::Reg16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg8.html\" title=\"enum juicebox_asm::Reg8\">Reg8</a>",1,["juicebox_asm::reg::Reg8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>",1,["juicebox_asm::rt::Runtime"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"enum\" href=\"juicebox_asm/enum.MemOp.html\" title=\"enum juicebox_asm::MemOp\">MemOp</a>",1,["juicebox_asm::MemOp"]]], "tiny_vm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"tiny_vm/struct.PhysAddr.html\" title=\"struct tiny_vm::PhysAddr\">PhysAddr</a>",1,["tiny_vm::PhysAddr"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyReg.html\" title=\"enum tiny_vm::TinyReg\">TinyReg</a>",1,["tiny_vm::TinyReg"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyInsn.html\" title=\"enum tiny_vm::TinyInsn\">TinyInsn</a>",1,["tiny_vm::TinyInsn"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"tiny_vm/struct.TinyVm.html\" title=\"struct tiny_vm::TinyVm\">TinyVm</a>",1,["tiny_vm::TinyVm"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html\" title=\"trait core::marker::Unpin\">Unpin</a> for <a class=\"struct\" href=\"tiny_vm/struct.Fixup.html\" title=\"struct tiny_vm::Fixup\">Fixup</a>",1,["tiny_vm::Fixup"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file diff --git a/implementors/core/ops/drop/trait.Drop.js b/implementors/core/ops/drop/trait.Drop.js index 2868c93..b6aa53b 100644 --- a/implementors/core/ops/drop/trait.Drop.js +++ b/implementors/core/ops/drop/trait.Drop.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Label.html\" title=\"struct juicebox_asm::prelude::Label\">Label</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>"]] +"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Label.html\" title=\"struct juicebox_asm::Label\">Label</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html\" title=\"trait core::ops::drop::Drop\">Drop</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file diff --git a/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js b/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js index 09f6fae..f644b0d 100644 --- a/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js +++ b/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js @@ -1,4 +1,4 @@ (function() {var implementors = { -"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm16.html\" title=\"struct juicebox_asm::prelude::Imm16\">Imm16</a>",1,["juicebox_asm::imm::Imm16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm32.html\" title=\"struct juicebox_asm::prelude::Imm32\">Imm32</a>",1,["juicebox_asm::imm::Imm32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>",1,["juicebox_asm::imm::Imm64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm8.html\" title=\"struct juicebox_asm::prelude::Imm8\">Imm8</a>",1,["juicebox_asm::imm::Imm8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Label.html\" title=\"struct juicebox_asm::prelude::Label\">Label</a>",1,["juicebox_asm::label::Label"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg16.html\" title=\"enum juicebox_asm::prelude::Reg16\">Reg16</a>",1,["juicebox_asm::reg::Reg16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg32.html\" title=\"enum juicebox_asm::prelude::Reg32\">Reg32</a>",1,["juicebox_asm::reg::Reg32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg64.html\" title=\"enum juicebox_asm::prelude::Reg64\">Reg64</a>",1,["juicebox_asm::reg::Reg64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg8.html\" title=\"enum juicebox_asm::prelude::Reg8\">Reg8</a>",1,["juicebox_asm::reg::Reg8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>",1,["juicebox_asm::rt::Runtime"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/enum.MemOp.html\" title=\"enum juicebox_asm::MemOp\">MemOp</a>",1,["juicebox_asm::MemOp"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Asm.html\" title=\"struct juicebox_asm::Asm\">Asm</a>",1,["juicebox_asm::Asm"]]], +"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Asm.html\" title=\"struct juicebox_asm::Asm\">Asm</a>",1,["juicebox_asm::asm::Asm"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm8.html\" title=\"struct juicebox_asm::Imm8\">Imm8</a>",1,["juicebox_asm::imm::Imm8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm16.html\" title=\"struct juicebox_asm::Imm16\">Imm16</a>",1,["juicebox_asm::imm::Imm16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm32.html\" title=\"struct juicebox_asm::Imm32\">Imm32</a>",1,["juicebox_asm::imm::Imm32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>",1,["juicebox_asm::imm::Imm64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Label.html\" title=\"struct juicebox_asm::Label\">Label</a>",1,["juicebox_asm::label::Label"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg64.html\" title=\"enum juicebox_asm::Reg64\">Reg64</a>",1,["juicebox_asm::reg::Reg64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg32.html\" title=\"enum juicebox_asm::Reg32\">Reg32</a>",1,["juicebox_asm::reg::Reg32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg16.html\" title=\"enum juicebox_asm::Reg16\">Reg16</a>",1,["juicebox_asm::reg::Reg16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg8.html\" title=\"enum juicebox_asm::Reg8\">Reg8</a>",1,["juicebox_asm::reg::Reg8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>",1,["juicebox_asm::rt::Runtime"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/enum.MemOp.html\" title=\"enum juicebox_asm::MemOp\">MemOp</a>",1,["juicebox_asm::MemOp"]]], "tiny_vm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"tiny_vm/struct.PhysAddr.html\" title=\"struct tiny_vm::PhysAddr\">PhysAddr</a>",1,["tiny_vm::PhysAddr"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyReg.html\" title=\"enum tiny_vm::TinyReg\">TinyReg</a>",1,["tiny_vm::TinyReg"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyInsn.html\" title=\"enum tiny_vm::TinyInsn\">TinyInsn</a>",1,["tiny_vm::TinyInsn"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"tiny_vm/struct.TinyVm.html\" title=\"struct tiny_vm::TinyVm\">TinyVm</a>",1,["tiny_vm::TinyVm"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html\" title=\"trait core::panic::unwind_safe::RefUnwindSafe\">RefUnwindSafe</a> for <a class=\"struct\" href=\"tiny_vm/struct.Fixup.html\" title=\"struct tiny_vm::Fixup\">Fixup</a>",1,["tiny_vm::Fixup"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file diff --git a/implementors/core/panic/unwind_safe/trait.UnwindSafe.js b/implementors/core/panic/unwind_safe/trait.UnwindSafe.js index e9552a2..80030bf 100644 --- a/implementors/core/panic/unwind_safe/trait.UnwindSafe.js +++ b/implementors/core/panic/unwind_safe/trait.UnwindSafe.js @@ -1,4 +1,4 @@ (function() {var implementors = { -"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm16.html\" title=\"struct juicebox_asm::prelude::Imm16\">Imm16</a>",1,["juicebox_asm::imm::Imm16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm32.html\" title=\"struct juicebox_asm::prelude::Imm32\">Imm32</a>",1,["juicebox_asm::imm::Imm32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm64.html\" title=\"struct juicebox_asm::prelude::Imm64\">Imm64</a>",1,["juicebox_asm::imm::Imm64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Imm8.html\" title=\"struct juicebox_asm::prelude::Imm8\">Imm8</a>",1,["juicebox_asm::imm::Imm8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/prelude/struct.Label.html\" title=\"struct juicebox_asm::prelude::Label\">Label</a>",1,["juicebox_asm::label::Label"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg16.html\" title=\"enum juicebox_asm::prelude::Reg16\">Reg16</a>",1,["juicebox_asm::reg::Reg16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg32.html\" title=\"enum juicebox_asm::prelude::Reg32\">Reg32</a>",1,["juicebox_asm::reg::Reg32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg64.html\" title=\"enum juicebox_asm::prelude::Reg64\">Reg64</a>",1,["juicebox_asm::reg::Reg64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/prelude/enum.Reg8.html\" title=\"enum juicebox_asm::prelude::Reg8\">Reg8</a>",1,["juicebox_asm::reg::Reg8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>",1,["juicebox_asm::rt::Runtime"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/enum.MemOp.html\" title=\"enum juicebox_asm::MemOp\">MemOp</a>",1,["juicebox_asm::MemOp"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Asm.html\" title=\"struct juicebox_asm::Asm\">Asm</a>",1,["juicebox_asm::Asm"]]], +"juicebox_asm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Asm.html\" title=\"struct juicebox_asm::Asm\">Asm</a>",1,["juicebox_asm::asm::Asm"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm8.html\" title=\"struct juicebox_asm::Imm8\">Imm8</a>",1,["juicebox_asm::imm::Imm8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm16.html\" title=\"struct juicebox_asm::Imm16\">Imm16</a>",1,["juicebox_asm::imm::Imm16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm32.html\" title=\"struct juicebox_asm::Imm32\">Imm32</a>",1,["juicebox_asm::imm::Imm32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Imm64.html\" title=\"struct juicebox_asm::Imm64\">Imm64</a>",1,["juicebox_asm::imm::Imm64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Label.html\" title=\"struct juicebox_asm::Label\">Label</a>",1,["juicebox_asm::label::Label"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg64.html\" title=\"enum juicebox_asm::Reg64\">Reg64</a>",1,["juicebox_asm::reg::Reg64"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg32.html\" title=\"enum juicebox_asm::Reg32\">Reg32</a>",1,["juicebox_asm::reg::Reg32"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg16.html\" title=\"enum juicebox_asm::Reg16\">Reg16</a>",1,["juicebox_asm::reg::Reg16"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/enum.Reg8.html\" title=\"enum juicebox_asm::Reg8\">Reg8</a>",1,["juicebox_asm::reg::Reg8"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"juicebox_asm/struct.Runtime.html\" title=\"struct juicebox_asm::Runtime\">Runtime</a>",1,["juicebox_asm::rt::Runtime"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"enum\" href=\"juicebox_asm/enum.MemOp.html\" title=\"enum juicebox_asm::MemOp\">MemOp</a>",1,["juicebox_asm::MemOp"]]], "tiny_vm":[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"tiny_vm/struct.PhysAddr.html\" title=\"struct tiny_vm::PhysAddr\">PhysAddr</a>",1,["tiny_vm::PhysAddr"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyReg.html\" title=\"enum tiny_vm::TinyReg\">TinyReg</a>",1,["tiny_vm::TinyReg"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"enum\" href=\"tiny_vm/enum.TinyInsn.html\" title=\"enum tiny_vm::TinyInsn\">TinyInsn</a>",1,["tiny_vm::TinyInsn"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"tiny_vm/struct.TinyVm.html\" title=\"struct tiny_vm::TinyVm\">TinyVm</a>",1,["tiny_vm::TinyVm"]],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html\" title=\"trait core::panic::unwind_safe::UnwindSafe\">UnwindSafe</a> for <a class=\"struct\" href=\"tiny_vm/struct.Fixup.html\" title=\"struct tiny_vm::Fixup\">Fixup</a>",1,["tiny_vm::Fixup"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})()
\ No newline at end of file diff --git a/juicebox_asm/all.html b/juicebox_asm/all.html index fd61c52..b58db88 100644 --- a/juicebox_asm/all.html +++ b/juicebox_asm/all.html @@ -1 +1 @@ -<!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/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Crate juicebox_asm</a></h2><div class="sidebar-elems"><section><ul class="block"><li><a href="#structs">Structs</a></li><li><a href="#enums">Enums</a></li><li><a href="#traits">Traits</a></li></ul></section></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><h1>List of all items</h1><h3 id="structs">Structs</h3><ul class="all-items"><li><a href="struct.Asm.html">Asm</a></li><li><a href="struct.Imm16.html">Imm16</a></li><li><a href="struct.Imm32.html">Imm32</a></li><li><a href="struct.Imm64.html">Imm64</a></li><li><a href="struct.Imm8.html">Imm8</a></li><li><a href="struct.Label.html">Label</a></li><li><a href="struct.Runtime.html">Runtime</a></li><li><a href="prelude/struct.Imm16.html">prelude::Imm16</a></li><li><a href="prelude/struct.Imm32.html">prelude::Imm32</a></li><li><a href="prelude/struct.Imm64.html">prelude::Imm64</a></li><li><a href="prelude/struct.Imm8.html">prelude::Imm8</a></li><li><a href="prelude/struct.Label.html">prelude::Label</a></li></ul><h3 id="enums">Enums</h3><ul class="all-items"><li><a href="enum.MemOp.html">MemOp</a></li><li><a href="enum.Reg16.html">Reg16</a></li><li><a href="enum.Reg32.html">Reg32</a></li><li><a href="enum.Reg64.html">Reg64</a></li><li><a href="enum.Reg8.html">Reg8</a></li><li><a href="prelude/enum.Reg16.html">prelude::Reg16</a></li><li><a href="prelude/enum.Reg32.html">prelude::Reg32</a></li><li><a href="prelude/enum.Reg64.html">prelude::Reg64</a></li><li><a href="prelude/enum.Reg8.html">prelude::Reg8</a></li></ul><h3 id="traits">Traits</h3><ul class="all-items"><li><a href="prelude/trait.Add.html">prelude::Add</a></li><li><a href="prelude/trait.Call.html">prelude::Call</a></li><li><a href="prelude/trait.Cmp.html">prelude::Cmp</a></li><li><a href="prelude/trait.Dec.html">prelude::Dec</a></li><li><a href="prelude/trait.Jmp.html">prelude::Jmp</a></li><li><a href="prelude/trait.Jnz.html">prelude::Jnz</a></li><li><a href="prelude/trait.Jz.html">prelude::Jz</a></li><li><a href="prelude/trait.Mov.html">prelude::Mov</a></li><li><a href="prelude/trait.Test.html">prelude::Test</a></li></ul></section></div></main></body></html>
\ No newline at end of file +<!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/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Crate juicebox_asm</a></h2><div class="sidebar-elems"><section><ul class="block"><li><a href="#structs">Structs</a></li><li><a href="#enums">Enums</a></li><li><a href="#traits">Traits</a></li></ul></section></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><h1>List of all items</h1><h3 id="structs">Structs</h3><ul class="all-items"><li><a href="struct.Asm.html">Asm</a></li><li><a href="struct.Imm16.html">Imm16</a></li><li><a href="struct.Imm32.html">Imm32</a></li><li><a href="struct.Imm64.html">Imm64</a></li><li><a href="struct.Imm8.html">Imm8</a></li><li><a href="struct.Label.html">Label</a></li><li><a href="struct.Runtime.html">Runtime</a></li></ul><h3 id="enums">Enums</h3><ul class="all-items"><li><a href="enum.MemOp.html">MemOp</a></li><li><a href="enum.Reg16.html">Reg16</a></li><li><a href="enum.Reg32.html">Reg32</a></li><li><a href="enum.Reg64.html">Reg64</a></li><li><a href="enum.Reg8.html">Reg8</a></li></ul><h3 id="traits">Traits</h3><ul class="all-items"><li><a href="insn/trait.Add.html">insn::Add</a></li><li><a href="insn/trait.Call.html">insn::Call</a></li><li><a href="insn/trait.Cmp.html">insn::Cmp</a></li><li><a href="insn/trait.Dec.html">insn::Dec</a></li><li><a href="insn/trait.Jmp.html">insn::Jmp</a></li><li><a href="insn/trait.Jnz.html">insn::Jnz</a></li><li><a href="insn/trait.Jz.html">insn::Jz</a></li><li><a href="insn/trait.Mov.html">insn::Mov</a></li><li><a href="insn/trait.Test.html">insn::Test</a></li></ul></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/asm/struct.Asm.html b/juicebox_asm/asm/struct.Asm.html new file mode 100644 index 0000000..efe1767 --- /dev/null +++ b/juicebox_asm/asm/struct.Asm.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/struct.Asm.html"> + <title>Redirection</title> +</head> +<body> + <p>Redirecting to <a href="../../juicebox_asm/struct.Asm.html">../../juicebox_asm/struct.Asm.html</a>...</p> + <script>location.replace("../../juicebox_asm/struct.Asm.html" + location.search + location.hash);</script> +</body> +</html>
\ No newline at end of file diff --git a/juicebox_asm/enum.MemOp.html b/juicebox_asm/enum.MemOp.html index f00cfc3..aec71c8 100644 --- a/juicebox_asm/enum.MemOp.html +++ b/juicebox_asm/enum.MemOp.html @@ -1,10 +1,10 @@ -<!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="Type representing a memory operand."><title>MemOp in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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 enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">MemOp</a></h2><div class="sidebar-elems"><section><h3><a href="#variants">Variants</a></h3><ul class="block"><li><a href="#variant.Indirect">Indirect</a></li><li><a href="#variant.IndirectDisp">IndirectDisp</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm">Add<MemOp, Imm16></a></li><li><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm">Add<MemOp, Reg16></a></li><li><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm">Cmp<MemOp, Imm16></a></li><li><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm">Mov<MemOp, Imm16></a></li><li><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm">Mov<MemOp, Reg16></a></li><li><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm">Mov<MemOp, Reg32></a></li><li><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm">Mov<MemOp, Reg64></a></li><li><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm">Mov<MemOp, Reg8></a></li><li><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm">Mov<Reg16, MemOp></a></li><li><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm">Mov<Reg32, MemOp></a></li><li><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm">Mov<Reg64, MemOp></a></li><li><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm">Mov<Reg8, MemOp></a></li><li><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm">Test<MemOp, Imm16></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-MemOp">RefUnwindSafe</a></li><li><a href="#impl-Send-for-MemOp">Send</a></li><li><a href="#impl-Sync-for-MemOp">Sync</a></li><li><a href="#impl-Unpin-for-MemOp">Unpin</a></li><li><a href="#impl-UnwindSafe-for-MemOp">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-MemOp">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-MemOp">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-MemOp">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-MemOp">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-MemOp">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-MemOp">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-MemOp">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Enum <a href="index.html">juicebox_asm</a>::<wbr><a class="enum" href="#">MemOp</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/juicebox_asm/lib.rs.html#92-98">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub enum MemOp { - Indirect(<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>), - IndirectDisp(<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>), +<!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="Type representing a memory operand."><title>MemOp in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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 enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">MemOp</a></h2><div class="sidebar-elems"><section><h3><a href="#variants">Variants</a></h3><ul class="block"><li><a href="#variant.Indirect">Indirect</a></li><li><a href="#variant.IndirectDisp">IndirectDisp</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm">Add<MemOp, Imm16></a></li><li><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm">Add<MemOp, Reg16></a></li><li><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm">Cmp<MemOp, Imm16></a></li><li><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm">Mov<MemOp, Imm16></a></li><li><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm">Mov<MemOp, Reg16></a></li><li><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm">Mov<MemOp, Reg32></a></li><li><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm">Mov<MemOp, Reg64></a></li><li><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm">Mov<MemOp, Reg8></a></li><li><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm">Mov<Reg16, MemOp></a></li><li><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm">Mov<Reg32, MemOp></a></li><li><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm">Mov<Reg64, MemOp></a></li><li><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm">Mov<Reg8, MemOp></a></li><li><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm">Test<MemOp, Imm16></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-MemOp">RefUnwindSafe</a></li><li><a href="#impl-Send-for-MemOp">Send</a></li><li><a href="#impl-Sync-for-MemOp">Sync</a></li><li><a href="#impl-Unpin-for-MemOp">Unpin</a></li><li><a href="#impl-UnwindSafe-for-MemOp">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-MemOp">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-MemOp">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-MemOp">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-MemOp">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-MemOp">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-MemOp">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-MemOp">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Enum <a href="index.html">juicebox_asm</a>::<wbr><a class="enum" href="#">MemOp</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/juicebox_asm/lib.rs.html#91-97">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub enum MemOp { + Indirect(<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>), + IndirectDisp(<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>), }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Type representing a memory operand.</p> -</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.Indirect" class="variant"><a href="#variant.Indirect" class="anchor">§</a><h3 class="code-header">Indirect(<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h3></section><div class="docblock"><p>An indirect memory operand, eg <code>mov [rax], rcx</code>.</p> -</div><section id="variant.IndirectDisp" class="variant"><a href="#variant.IndirectDisp" class="anchor">§</a><h3 class="code-header">IndirectDisp(<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>)</h3></section><div class="docblock"><p>An indirect memory operand with additional displacement, eg <code>mov [rax + 0x10], rcx</code>.</p> -</div></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#21-25">source</a><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#22-24">source</a><a href="#method.add-1" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#15-19">source</a><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#16-18">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#3-7">source</a><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Cmp.html" title="trait juicebox_asm::prelude::Cmp">Cmp</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#4-6">source</a><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Cmp.html#tymethod.cmp" class="fn">cmp</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a compare call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#109-113">source</a><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#110-112">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#43-47">source</a><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-5" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#44-46">source</a><a href="#method.mov-5" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#37-41">source</a><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#38-40">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#31-35">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#32-34">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#49-53">source</a><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-4" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#50-52">source</a><a href="#method.mov-4" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#69-73">source</a><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#70-72">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#63-67">source</a><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-8" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#64-66">source</a><a href="#method.mov-8" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#57-61">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-7" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#58-60">source</a><a href="#method.mov-7" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#75-79">source</a><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-6" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#76-78">source</a><a href="#method.mov-6" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#15-19">source</a><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#16-18">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="prelude/trait.Test.html#tymethod.test">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-MemOp" class="impl"><a href="#impl-RefUnwindSafe-for-MemOp" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a></h3></section><section id="impl-Send-for-MemOp" class="impl"><a href="#impl-Send-for-MemOp" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a></h3></section><section id="impl-Sync-for-MemOp" class="impl"><a href="#impl-Sync-for-MemOp" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a></h3></section><section id="impl-Unpin-for-MemOp" class="impl"><a href="#impl-Unpin-for-MemOp" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a></h3></section><section id="impl-UnwindSafe-for-MemOp" class="impl"><a href="#impl-UnwindSafe-for-MemOp" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-MemOp" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-MemOp" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.Indirect" class="variant"><a href="#variant.Indirect" class="anchor">§</a><h3 class="code-header">Indirect(<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h3></section><div class="docblock"><p>An indirect memory operand, eg <code>mov [rax], rcx</code>.</p> +</div><section id="variant.IndirectDisp" class="variant"><a href="#variant.IndirectDisp" class="anchor">§</a><h3 class="code-header">IndirectDisp(<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>)</h3></section><div class="docblock"><p>An indirect memory operand with additional displacement, eg <code>mov [rax + 0x10], rcx</code>.</p> +</div></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#22-26">source</a><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#23-25">source</a><a href="#method.add-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#16-20">source</a><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#17-19">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#4-8">source</a><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Cmp.html" title="trait juicebox_asm::insn::Cmp">Cmp</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#5-7">source</a><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Cmp.html#tymethod.cmp" class="fn">cmp</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a compare instruction. <a href="insn/trait.Cmp.html#tymethod.cmp">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#110-114">source</a><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#111-113">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#44-48">source</a><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-5" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#45-47">source</a><a href="#method.mov-5" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#38-42">source</a><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#39-41">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#32-36">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#33-35">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#50-54">source</a><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-4" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#51-53">source</a><a href="#method.mov-4" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#70-74">source</a><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#71-73">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#64-68">source</a><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-8" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#65-67">source</a><a href="#method.mov-8" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#58-62">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-7" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#59-61">source</a><a href="#method.mov-7" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#76-80">source</a><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-6" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#77-79">source</a><a href="#method.mov-6" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#16-20">source</a><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#17-19">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-MemOp" class="impl"><a href="#impl-RefUnwindSafe-for-MemOp" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a></h3></section><section id="impl-Send-for-MemOp" class="impl"><a href="#impl-Send-for-MemOp" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a></h3></section><section id="impl-Sync-for-MemOp" class="impl"><a href="#impl-Sync-for-MemOp" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a></h3></section><section id="impl-Unpin-for-MemOp" class="impl"><a href="#impl-Unpin-for-MemOp" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a></h3></section><section id="impl-UnwindSafe-for-MemOp" class="impl"><a href="#impl-UnwindSafe-for-MemOp" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-MemOp" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-MemOp" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-MemOp" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-MemOp" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-MemOp" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-MemOp" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-MemOp" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-MemOp" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/juicebox_asm/enum.Reg16.html b/juicebox_asm/enum.Reg16.html index 6375d11..825fdf4 100644 --- a/juicebox_asm/enum.Reg16.html +++ b/juicebox_asm/enum.Reg16.html @@ -16,7 +16,7 @@ r14w, r15w, </details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Definition of 16 bit registers.</p> -</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.ax" class="variant"><a href="#variant.ax" class="anchor">§</a><h3 class="code-header">ax</h3></section><section id="variant.cx" class="variant"><a href="#variant.cx" class="anchor">§</a><h3 class="code-header">cx</h3></section><section id="variant.dx" class="variant"><a href="#variant.dx" class="anchor">§</a><h3 class="code-header">dx</h3></section><section id="variant.bx" class="variant"><a href="#variant.bx" class="anchor">§</a><h3 class="code-header">bx</h3></section><section id="variant.sp" class="variant"><a href="#variant.sp" class="anchor">§</a><h3 class="code-header">sp</h3></section><section id="variant.bp" class="variant"><a href="#variant.bp" class="anchor">§</a><h3 class="code-header">bp</h3></section><section id="variant.si" class="variant"><a href="#variant.si" class="anchor">§</a><h3 class="code-header">si</h3></section><section id="variant.di" class="variant"><a href="#variant.di" class="anchor">§</a><h3 class="code-header">di</h3></section><section id="variant.r8w" class="variant"><a href="#variant.r8w" class="anchor">§</a><h3 class="code-header">r8w</h3></section><section id="variant.r9w" class="variant"><a href="#variant.r9w" class="anchor">§</a><h3 class="code-header">r9w</h3></section><section id="variant.r10w" class="variant"><a href="#variant.r10w" class="anchor">§</a><h3 class="code-header">r10w</h3></section><section id="variant.r11w" class="variant"><a href="#variant.r11w" class="anchor">§</a><h3 class="code-header">r11w</h3></section><section id="variant.r12w" class="variant"><a href="#variant.r12w" class="anchor">§</a><h3 class="code-header">r12w</h3></section><section id="variant.r13w" class="variant"><a href="#variant.r13w" class="anchor">§</a><h3 class="code-header">r13w</h3></section><section id="variant.r14w" class="variant"><a href="#variant.r14w" class="anchor">§</a><h3 class="code-header">r14w</h3></section><section id="variant.r15w" class="variant"><a href="#variant.r15w" class="anchor">§</a><h3 class="code-header">r15w</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#15-19">source</a><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#16-18">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg16" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#84-86">source</a><a href="#impl-Clone-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#84-86">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#43-47">source</a><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#44-46">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#95-99">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#96-98">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#69-73">source</a><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#70-72">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#17-21">source</a><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#18-20">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, op2: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><section id="impl-Copy-for-Reg16" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#84-86">source</a><a href="#impl-Copy-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg16" class="impl"><a href="#impl-RefUnwindSafe-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section><section id="impl-Send-for-Reg16" class="impl"><a href="#impl-Send-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section><section id="impl-Sync-for-Reg16" class="impl"><a href="#impl-Sync-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section><section id="impl-Unpin-for-Reg16" class="impl"><a href="#impl-Unpin-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section><section id="impl-UnwindSafe-for-Reg16" class="impl"><a href="#impl-UnwindSafe-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.ax" class="variant"><a href="#variant.ax" class="anchor">§</a><h3 class="code-header">ax</h3></section><section id="variant.cx" class="variant"><a href="#variant.cx" class="anchor">§</a><h3 class="code-header">cx</h3></section><section id="variant.dx" class="variant"><a href="#variant.dx" class="anchor">§</a><h3 class="code-header">dx</h3></section><section id="variant.bx" class="variant"><a href="#variant.bx" class="anchor">§</a><h3 class="code-header">bx</h3></section><section id="variant.sp" class="variant"><a href="#variant.sp" class="anchor">§</a><h3 class="code-header">sp</h3></section><section id="variant.bp" class="variant"><a href="#variant.bp" class="anchor">§</a><h3 class="code-header">bp</h3></section><section id="variant.si" class="variant"><a href="#variant.si" class="anchor">§</a><h3 class="code-header">si</h3></section><section id="variant.di" class="variant"><a href="#variant.di" class="anchor">§</a><h3 class="code-header">di</h3></section><section id="variant.r8w" class="variant"><a href="#variant.r8w" class="anchor">§</a><h3 class="code-header">r8w</h3></section><section id="variant.r9w" class="variant"><a href="#variant.r9w" class="anchor">§</a><h3 class="code-header">r9w</h3></section><section id="variant.r10w" class="variant"><a href="#variant.r10w" class="anchor">§</a><h3 class="code-header">r10w</h3></section><section id="variant.r11w" class="variant"><a href="#variant.r11w" class="anchor">§</a><h3 class="code-header">r11w</h3></section><section id="variant.r12w" class="variant"><a href="#variant.r12w" class="anchor">§</a><h3 class="code-header">r12w</h3></section><section id="variant.r13w" class="variant"><a href="#variant.r13w" class="anchor">§</a><h3 class="code-header">r13w</h3></section><section id="variant.r14w" class="variant"><a href="#variant.r14w" class="anchor">§</a><h3 class="code-header">r14w</h3></section><section id="variant.r15w" class="variant"><a href="#variant.r15w" class="anchor">§</a><h3 class="code-header">r15w</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#16-20">source</a><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#17-19">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg16" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#84-86">source</a><a href="#impl-Clone-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#84-86">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#44-48">source</a><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#45-47">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#96-100">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#97-99">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#70-74">source</a><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#71-73">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#18-22">source</a><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#19-21">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><section id="impl-Copy-for-Reg16" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#84-86">source</a><a href="#impl-Copy-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg16" class="impl"><a href="#impl-RefUnwindSafe-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a></h3></section><section id="impl-Send-for-Reg16" class="impl"><a href="#impl-Send-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a></h3></section><section id="impl-Sync-for-Reg16" class="impl"><a href="#impl-Sync-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a></h3></section><section id="impl-Unpin-for-Reg16" class="impl"><a href="#impl-Unpin-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a></h3></section><section id="impl-UnwindSafe-for-Reg16" class="impl"><a href="#impl-UnwindSafe-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/juicebox_asm/enum.Reg32.html b/juicebox_asm/enum.Reg32.html index 23d36ae..199deb8 100644 --- a/juicebox_asm/enum.Reg32.html +++ b/juicebox_asm/enum.Reg32.html @@ -16,7 +16,7 @@ r14d, r15d, </details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Definition of 32 bit registers.</p> -</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.eax" class="variant"><a href="#variant.eax" class="anchor">§</a><h3 class="code-header">eax</h3></section><section id="variant.ecx" class="variant"><a href="#variant.ecx" class="anchor">§</a><h3 class="code-header">ecx</h3></section><section id="variant.edx" class="variant"><a href="#variant.edx" class="anchor">§</a><h3 class="code-header">edx</h3></section><section id="variant.ebx" class="variant"><a href="#variant.ebx" class="anchor">§</a><h3 class="code-header">ebx</h3></section><section id="variant.esp" class="variant"><a href="#variant.esp" class="anchor">§</a><h3 class="code-header">esp</h3></section><section id="variant.ebp" class="variant"><a href="#variant.ebp" class="anchor">§</a><h3 class="code-header">ebp</h3></section><section id="variant.esi" class="variant"><a href="#variant.esi" class="anchor">§</a><h3 class="code-header">esi</h3></section><section id="variant.edi" class="variant"><a href="#variant.edi" class="anchor">§</a><h3 class="code-header">edi</h3></section><section id="variant.r8d" class="variant"><a href="#variant.r8d" class="anchor">§</a><h3 class="code-header">r8d</h3></section><section id="variant.r9d" class="variant"><a href="#variant.r9d" class="anchor">§</a><h3 class="code-header">r9d</h3></section><section id="variant.r10d" class="variant"><a href="#variant.r10d" class="anchor">§</a><h3 class="code-header">r10d</h3></section><section id="variant.r11d" class="variant"><a href="#variant.r11d" class="anchor">§</a><h3 class="code-header">r11d</h3></section><section id="variant.r12d" class="variant"><a href="#variant.r12d" class="anchor">§</a><h3 class="code-header">r12d</h3></section><section id="variant.r13d" class="variant"><a href="#variant.r13d" class="anchor">§</a><h3 class="code-header">r13d</h3></section><section id="variant.r14d" class="variant"><a href="#variant.r14d" class="anchor">§</a><h3 class="code-header">r14d</h3></section><section id="variant.r15d" class="variant"><a href="#variant.r15d" class="anchor">§</a><h3 class="code-header">r15d</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#9-13">source</a><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#10-12">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg32" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#81-83">source</a><a href="#impl-Clone-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#81-83">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#9-13">source</a><a href="#impl-Dec%3CReg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Dec.html" title="trait juicebox_asm::prelude::Dec">Dec</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#10-12">source</a><a href="#method.dec" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#37-41">source</a><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#38-40">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#89-93">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#90-92">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#63-67">source</a><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#64-66">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#11-15">source</a><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#12-14">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#9-13">source</a><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#10-12">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="prelude/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><section id="impl-Copy-for-Reg32" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#81-83">source</a><a href="#impl-Copy-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg32" class="impl"><a href="#impl-RefUnwindSafe-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section><section id="impl-Send-for-Reg32" class="impl"><a href="#impl-Send-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section><section id="impl-Sync-for-Reg32" class="impl"><a href="#impl-Sync-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section><section id="impl-Unpin-for-Reg32" class="impl"><a href="#impl-Unpin-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section><section id="impl-UnwindSafe-for-Reg32" class="impl"><a href="#impl-UnwindSafe-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.eax" class="variant"><a href="#variant.eax" class="anchor">§</a><h3 class="code-header">eax</h3></section><section id="variant.ecx" class="variant"><a href="#variant.ecx" class="anchor">§</a><h3 class="code-header">ecx</h3></section><section id="variant.edx" class="variant"><a href="#variant.edx" class="anchor">§</a><h3 class="code-header">edx</h3></section><section id="variant.ebx" class="variant"><a href="#variant.ebx" class="anchor">§</a><h3 class="code-header">ebx</h3></section><section id="variant.esp" class="variant"><a href="#variant.esp" class="anchor">§</a><h3 class="code-header">esp</h3></section><section id="variant.ebp" class="variant"><a href="#variant.ebp" class="anchor">§</a><h3 class="code-header">ebp</h3></section><section id="variant.esi" class="variant"><a href="#variant.esi" class="anchor">§</a><h3 class="code-header">esi</h3></section><section id="variant.edi" class="variant"><a href="#variant.edi" class="anchor">§</a><h3 class="code-header">edi</h3></section><section id="variant.r8d" class="variant"><a href="#variant.r8d" class="anchor">§</a><h3 class="code-header">r8d</h3></section><section id="variant.r9d" class="variant"><a href="#variant.r9d" class="anchor">§</a><h3 class="code-header">r9d</h3></section><section id="variant.r10d" class="variant"><a href="#variant.r10d" class="anchor">§</a><h3 class="code-header">r10d</h3></section><section id="variant.r11d" class="variant"><a href="#variant.r11d" class="anchor">§</a><h3 class="code-header">r11d</h3></section><section id="variant.r12d" class="variant"><a href="#variant.r12d" class="anchor">§</a><h3 class="code-header">r12d</h3></section><section id="variant.r13d" class="variant"><a href="#variant.r13d" class="anchor">§</a><h3 class="code-header">r13d</h3></section><section id="variant.r14d" class="variant"><a href="#variant.r14d" class="anchor">§</a><h3 class="code-header">r14d</h3></section><section id="variant.r15d" class="variant"><a href="#variant.r15d" class="anchor">§</a><h3 class="code-header">r15d</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#10-14">source</a><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#11-13">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg32" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#81-83">source</a><a href="#impl-Clone-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#81-83">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#10-14">source</a><a href="#impl-Dec%3CReg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#11-13">source</a><a href="#method.dec" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#38-42">source</a><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#39-41">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#90-94">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#91-93">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#64-68">source</a><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#65-67">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#12-16">source</a><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#13-15">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#10-14">source</a><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#11-13">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><section id="impl-Copy-for-Reg32" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#81-83">source</a><a href="#impl-Copy-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg32" class="impl"><a href="#impl-RefUnwindSafe-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a></h3></section><section id="impl-Send-for-Reg32" class="impl"><a href="#impl-Send-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a></h3></section><section id="impl-Sync-for-Reg32" class="impl"><a href="#impl-Sync-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a></h3></section><section id="impl-Unpin-for-Reg32" class="impl"><a href="#impl-Unpin-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a></h3></section><section id="impl-UnwindSafe-for-Reg32" class="impl"><a href="#impl-UnwindSafe-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/juicebox_asm/enum.Reg64.html b/juicebox_asm/enum.Reg64.html index 2e7537e..6c99dc0 100644 --- a/juicebox_asm/enum.Reg64.html +++ b/juicebox_asm/enum.Reg64.html @@ -16,7 +16,7 @@ r14, r15, </details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Definition of 64 bit registers.</p> -</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.rax" class="variant"><a href="#variant.rax" class="anchor">§</a><h3 class="code-header">rax</h3></section><section id="variant.rcx" class="variant"><a href="#variant.rcx" class="anchor">§</a><h3 class="code-header">rcx</h3></section><section id="variant.rdx" class="variant"><a href="#variant.rdx" class="anchor">§</a><h3 class="code-header">rdx</h3></section><section id="variant.rbx" class="variant"><a href="#variant.rbx" class="anchor">§</a><h3 class="code-header">rbx</h3></section><section id="variant.rsp" class="variant"><a href="#variant.rsp" class="anchor">§</a><h3 class="code-header">rsp</h3></section><section id="variant.rbp" class="variant"><a href="#variant.rbp" class="anchor">§</a><h3 class="code-header">rbp</h3></section><section id="variant.rsi" class="variant"><a href="#variant.rsi" class="anchor">§</a><h3 class="code-header">rsi</h3></section><section id="variant.rdi" class="variant"><a href="#variant.rdi" class="anchor">§</a><h3 class="code-header">rdi</h3></section><section id="variant.r8" class="variant"><a href="#variant.r8" class="anchor">§</a><h3 class="code-header">r8</h3></section><section id="variant.r9" class="variant"><a href="#variant.r9" class="anchor">§</a><h3 class="code-header">r9</h3></section><section id="variant.r10" class="variant"><a href="#variant.r10" class="anchor">§</a><h3 class="code-header">r10</h3></section><section id="variant.r11" class="variant"><a href="#variant.r11" class="anchor">§</a><h3 class="code-header">r11</h3></section><section id="variant.r12" class="variant"><a href="#variant.r12" class="anchor">§</a><h3 class="code-header">r12</h3></section><section id="variant.r13" class="variant"><a href="#variant.r13" class="anchor">§</a><h3 class="code-header">r13</h3></section><section id="variant.r14" class="variant"><a href="#variant.r14" class="anchor">§</a><h3 class="code-header">r14</h3></section><section id="variant.r15" class="variant"><a href="#variant.r15" class="anchor">§</a><h3 class="code-header">r15</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#3-7">source</a><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#4-6">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Call%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#3-7">source</a><a href="#impl-Call%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Call.html" title="trait juicebox_asm::prelude::Call">Call</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.call" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#4-6">source</a><a href="#method.call" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Call.html#tymethod.call" class="fn">call</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg64" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#impl-Clone-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#3-7">source</a><a href="#impl-Dec%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Dec.html" title="trait juicebox_asm::prelude::Dec">Dec</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#4-6">source</a><a href="#method.dec" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#31-35">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#32-34">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#83-87">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#84-86">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#57-61">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#58-60">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#5-9">source</a><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#6-8">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#3-7">source</a><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#4-6">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="prelude/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><section id="impl-Copy-for-Reg64" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#impl-Copy-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg64" class="impl"><a href="#impl-RefUnwindSafe-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section><section id="impl-Send-for-Reg64" class="impl"><a href="#impl-Send-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section><section id="impl-Sync-for-Reg64" class="impl"><a href="#impl-Sync-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section><section id="impl-Unpin-for-Reg64" class="impl"><a href="#impl-Unpin-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section><section id="impl-UnwindSafe-for-Reg64" class="impl"><a href="#impl-UnwindSafe-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.rax" class="variant"><a href="#variant.rax" class="anchor">§</a><h3 class="code-header">rax</h3></section><section id="variant.rcx" class="variant"><a href="#variant.rcx" class="anchor">§</a><h3 class="code-header">rcx</h3></section><section id="variant.rdx" class="variant"><a href="#variant.rdx" class="anchor">§</a><h3 class="code-header">rdx</h3></section><section id="variant.rbx" class="variant"><a href="#variant.rbx" class="anchor">§</a><h3 class="code-header">rbx</h3></section><section id="variant.rsp" class="variant"><a href="#variant.rsp" class="anchor">§</a><h3 class="code-header">rsp</h3></section><section id="variant.rbp" class="variant"><a href="#variant.rbp" class="anchor">§</a><h3 class="code-header">rbp</h3></section><section id="variant.rsi" class="variant"><a href="#variant.rsi" class="anchor">§</a><h3 class="code-header">rsi</h3></section><section id="variant.rdi" class="variant"><a href="#variant.rdi" class="anchor">§</a><h3 class="code-header">rdi</h3></section><section id="variant.r8" class="variant"><a href="#variant.r8" class="anchor">§</a><h3 class="code-header">r8</h3></section><section id="variant.r9" class="variant"><a href="#variant.r9" class="anchor">§</a><h3 class="code-header">r9</h3></section><section id="variant.r10" class="variant"><a href="#variant.r10" class="anchor">§</a><h3 class="code-header">r10</h3></section><section id="variant.r11" class="variant"><a href="#variant.r11" class="anchor">§</a><h3 class="code-header">r11</h3></section><section id="variant.r12" class="variant"><a href="#variant.r12" class="anchor">§</a><h3 class="code-header">r12</h3></section><section id="variant.r13" class="variant"><a href="#variant.r13" class="anchor">§</a><h3 class="code-header">r13</h3></section><section id="variant.r14" class="variant"><a href="#variant.r14" class="anchor">§</a><h3 class="code-header">r14</h3></section><section id="variant.r15" class="variant"><a href="#variant.r15" class="anchor">§</a><h3 class="code-header">r15</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#4-8">source</a><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#5-7">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Call%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#4-8">source</a><a href="#impl-Call%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Call.html" title="trait juicebox_asm::insn::Call">Call</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.call" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#5-7">source</a><a href="#method.call" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Call.html#tymethod.call" class="fn">call</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg64" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#impl-Clone-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#4-8">source</a><a href="#impl-Dec%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#5-7">source</a><a href="#method.dec" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#32-36">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#33-35">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#84-88">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#85-87">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#58-62">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#59-61">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#6-10">source</a><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#7-9">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#4-8">source</a><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#5-7">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><section id="impl-Copy-for-Reg64" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#impl-Copy-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg64" class="impl"><a href="#impl-RefUnwindSafe-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section><section id="impl-Send-for-Reg64" class="impl"><a href="#impl-Send-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section><section id="impl-Sync-for-Reg64" class="impl"><a href="#impl-Sync-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section><section id="impl-Unpin-for-Reg64" class="impl"><a href="#impl-Unpin-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section><section id="impl-UnwindSafe-for-Reg64" class="impl"><a href="#impl-UnwindSafe-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/juicebox_asm/enum.Reg8.html b/juicebox_asm/enum.Reg8.html index 5f0bf26..132cb00 100644 --- a/juicebox_asm/enum.Reg8.html +++ b/juicebox_asm/enum.Reg8.html @@ -20,7 +20,7 @@ dh, bh, </details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Definition of 8 bit registers.</p> -</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.al" class="variant"><a href="#variant.al" class="anchor">§</a><h3 class="code-header">al</h3></section><section id="variant.cl" class="variant"><a href="#variant.cl" class="anchor">§</a><h3 class="code-header">cl</h3></section><section id="variant.dl" class="variant"><a href="#variant.dl" class="anchor">§</a><h3 class="code-header">dl</h3></section><section id="variant.bl" class="variant"><a href="#variant.bl" class="anchor">§</a><h3 class="code-header">bl</h3></section><section id="variant.spl" class="variant"><a href="#variant.spl" class="anchor">§</a><h3 class="code-header">spl</h3></section><section id="variant.bpl" class="variant"><a href="#variant.bpl" class="anchor">§</a><h3 class="code-header">bpl</h3></section><section id="variant.sil" class="variant"><a href="#variant.sil" class="anchor">§</a><h3 class="code-header">sil</h3></section><section id="variant.dil" class="variant"><a href="#variant.dil" class="anchor">§</a><h3 class="code-header">dil</h3></section><section id="variant.r8l" class="variant"><a href="#variant.r8l" class="anchor">§</a><h3 class="code-header">r8l</h3></section><section id="variant.r9l" class="variant"><a href="#variant.r9l" class="anchor">§</a><h3 class="code-header">r9l</h3></section><section id="variant.r10l" class="variant"><a href="#variant.r10l" class="anchor">§</a><h3 class="code-header">r10l</h3></section><section id="variant.r11l" class="variant"><a href="#variant.r11l" class="anchor">§</a><h3 class="code-header">r11l</h3></section><section id="variant.r12l" class="variant"><a href="#variant.r12l" class="anchor">§</a><h3 class="code-header">r12l</h3></section><section id="variant.r13l" class="variant"><a href="#variant.r13l" class="anchor">§</a><h3 class="code-header">r13l</h3></section><section id="variant.r14l" class="variant"><a href="#variant.r14l" class="anchor">§</a><h3 class="code-header">r14l</h3></section><section id="variant.r15l" class="variant"><a href="#variant.r15l" class="anchor">§</a><h3 class="code-header">r15l</h3></section><section id="variant.ah" class="variant"><a href="#variant.ah" class="anchor">§</a><h3 class="code-header">ah</h3></section><section id="variant.ch" class="variant"><a href="#variant.ch" class="anchor">§</a><h3 class="code-header">ch</h3></section><section id="variant.dh" class="variant"><a href="#variant.dh" class="anchor">§</a><h3 class="code-header">dh</h3></section><section id="variant.bh" class="variant"><a href="#variant.bh" class="anchor">§</a><h3 class="code-header">bh</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg8" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#87-90">source</a><a href="#impl-Clone-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#87-90">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#49-53">source</a><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#50-52">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#101-105">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#102-104">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, op2: <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#75-79">source</a><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#76-78">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#23-27">source</a><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#24-26">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, op2: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><section id="impl-Copy-for-Reg8" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#87-90">source</a><a href="#impl-Copy-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg8" class="impl"><a href="#impl-RefUnwindSafe-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section><section id="impl-Send-for-Reg8" class="impl"><a href="#impl-Send-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section><section id="impl-Sync-for-Reg8" class="impl"><a href="#impl-Sync-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section><section id="impl-Unpin-for-Reg8" class="impl"><a href="#impl-Unpin-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section><section id="impl-UnwindSafe-for-Reg8" class="impl"><a href="#impl-UnwindSafe-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.al" class="variant"><a href="#variant.al" class="anchor">§</a><h3 class="code-header">al</h3></section><section id="variant.cl" class="variant"><a href="#variant.cl" class="anchor">§</a><h3 class="code-header">cl</h3></section><section id="variant.dl" class="variant"><a href="#variant.dl" class="anchor">§</a><h3 class="code-header">dl</h3></section><section id="variant.bl" class="variant"><a href="#variant.bl" class="anchor">§</a><h3 class="code-header">bl</h3></section><section id="variant.spl" class="variant"><a href="#variant.spl" class="anchor">§</a><h3 class="code-header">spl</h3></section><section id="variant.bpl" class="variant"><a href="#variant.bpl" class="anchor">§</a><h3 class="code-header">bpl</h3></section><section id="variant.sil" class="variant"><a href="#variant.sil" class="anchor">§</a><h3 class="code-header">sil</h3></section><section id="variant.dil" class="variant"><a href="#variant.dil" class="anchor">§</a><h3 class="code-header">dil</h3></section><section id="variant.r8l" class="variant"><a href="#variant.r8l" class="anchor">§</a><h3 class="code-header">r8l</h3></section><section id="variant.r9l" class="variant"><a href="#variant.r9l" class="anchor">§</a><h3 class="code-header">r9l</h3></section><section id="variant.r10l" class="variant"><a href="#variant.r10l" class="anchor">§</a><h3 class="code-header">r10l</h3></section><section id="variant.r11l" class="variant"><a href="#variant.r11l" class="anchor">§</a><h3 class="code-header">r11l</h3></section><section id="variant.r12l" class="variant"><a href="#variant.r12l" class="anchor">§</a><h3 class="code-header">r12l</h3></section><section id="variant.r13l" class="variant"><a href="#variant.r13l" class="anchor">§</a><h3 class="code-header">r13l</h3></section><section id="variant.r14l" class="variant"><a href="#variant.r14l" class="anchor">§</a><h3 class="code-header">r14l</h3></section><section id="variant.r15l" class="variant"><a href="#variant.r15l" class="anchor">§</a><h3 class="code-header">r15l</h3></section><section id="variant.ah" class="variant"><a href="#variant.ah" class="anchor">§</a><h3 class="code-header">ah</h3></section><section id="variant.ch" class="variant"><a href="#variant.ch" class="anchor">§</a><h3 class="code-header">ch</h3></section><section id="variant.dh" class="variant"><a href="#variant.dh" class="anchor">§</a><h3 class="code-header">dh</h3></section><section id="variant.bh" class="variant"><a href="#variant.bh" class="anchor">§</a><h3 class="code-header">bh</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg8" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#87-90">source</a><a href="#impl-Clone-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#87-90">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#50-54">source</a><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#51-53">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#102-106">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#103-105">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#76-80">source</a><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#77-79">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#24-28">source</a><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#25-27">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><section id="impl-Copy-for-Reg8" class="impl"><a class="src rightside" href="../src/juicebox_asm/reg.rs.html#87-90">source</a><a href="#impl-Copy-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg8" class="impl"><a href="#impl-RefUnwindSafe-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a></h3></section><section id="impl-Send-for-Reg8" class="impl"><a href="#impl-Send-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a></h3></section><section id="impl-Sync-for-Reg8" class="impl"><a href="#impl-Sync-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a></h3></section><section id="impl-Unpin-for-Reg8" class="impl"><a href="#impl-Unpin-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a></h3></section><section id="impl-UnwindSafe-for-Reg8" class="impl"><a href="#impl-UnwindSafe-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/juicebox_asm/imm/struct.Imm16.html b/juicebox_asm/imm/struct.Imm16.html index fbefc82..3234145 100644 --- a/juicebox_asm/imm/struct.Imm16.html +++ b/juicebox_asm/imm/struct.Imm16.html @@ -1,11 +1,11 @@ <!DOCTYPE html> <html lang="en"> <head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/struct.Imm16.html"> + <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/struct.Imm16.html"> <title>Redirection</title> </head> <body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/struct.Imm16.html">../../juicebox_asm/prelude/struct.Imm16.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/struct.Imm16.html" + location.search + location.hash);</script> + <p>Redirecting to <a href="../../juicebox_asm/struct.Imm16.html">../../juicebox_asm/struct.Imm16.html</a>...</p> + <script>location.replace("../../juicebox_asm/struct.Imm16.html" + location.search + location.hash);</script> </body> </html>
\ No newline at end of file diff --git a/juicebox_asm/imm/struct.Imm32.html b/juicebox_asm/imm/struct.Imm32.html index c310b67..678f060 100644 --- a/juicebox_asm/imm/struct.Imm32.html +++ b/juicebox_asm/imm/struct.Imm32.html @@ -1,11 +1,11 @@ <!DOCTYPE html> <html lang="en"> <head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/struct.Imm32.html"> + <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/struct.Imm32.html"> <title>Redirection</title> </head> <body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/struct.Imm32.html">../../juicebox_asm/prelude/struct.Imm32.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/struct.Imm32.html" + location.search + location.hash);</script> + <p>Redirecting to <a href="../../juicebox_asm/struct.Imm32.html">../../juicebox_asm/struct.Imm32.html</a>...</p> + <script>location.replace("../../juicebox_asm/struct.Imm32.html" + location.search + location.hash);</script> </body> </html>
\ No newline at end of file diff --git a/juicebox_asm/imm/struct.Imm64.html b/juicebox_asm/imm/struct.Imm64.html index 9a2ebea..2497546 100644 --- a/juicebox_asm/imm/struct.Imm64.html +++ b/juicebox_asm/imm/struct.Imm64.html @@ -1,11 +1,11 @@ <!DOCTYPE html> <html lang="en"> <head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/struct.Imm64.html"> + <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/struct.Imm64.html"> <title>Redirection</title> </head> <body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/struct.Imm64.html">../../juicebox_asm/prelude/struct.Imm64.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/struct.Imm64.html" + location.search + location.hash);</script> + <p>Redirecting to <a href="../../juicebox_asm/struct.Imm64.html">../../juicebox_asm/struct.Imm64.html</a>...</p> + <script>location.replace("../../juicebox_asm/struct.Imm64.html" + location.search + location.hash);</script> </body> </html>
\ No newline at end of file diff --git a/juicebox_asm/imm/struct.Imm8.html b/juicebox_asm/imm/struct.Imm8.html index bda16d4..c53d44c 100644 --- a/juicebox_asm/imm/struct.Imm8.html +++ b/juicebox_asm/imm/struct.Imm8.html @@ -1,11 +1,11 @@ <!DOCTYPE html> <html lang="en"> <head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/struct.Imm8.html"> + <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/struct.Imm8.html"> <title>Redirection</title> </head> <body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/struct.Imm8.html">../../juicebox_asm/prelude/struct.Imm8.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/struct.Imm8.html" + location.search + location.hash);</script> + <p>Redirecting to <a href="../../juicebox_asm/struct.Imm8.html">../../juicebox_asm/struct.Imm8.html</a>...</p> + <script>location.replace("../../juicebox_asm/struct.Imm8.html" + location.search + location.hash);</script> </body> </html>
\ No newline at end of file diff --git a/juicebox_asm/index.html b/juicebox_asm/index.html index d3198b3..d6639eb 100644 --- a/juicebox_asm/index.html +++ b/juicebox_asm/index.html @@ -1,7 +1,8 @@ -<!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="A simple `x64` jit assembler with a minimal runtime to execute emitted code for fun."><title>juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="../crates.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Crate juicebox_asm</a></h2><div class="sidebar-elems"><ul class="block"><li class="version">Version 0.1.0</li><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="#structs">Structs</a></li><li><a href="#enums">Enums</a></li></ul></section></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Crate <a class="mod" href="#">juicebox_asm</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/juicebox_asm/lib.rs.html#1-469">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A simple <code>x64</code> jit assembler with a minimal runtime to execute emitted code for fun.</p> +<!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="A simple `x64` jit assembler with a minimal runtime to execute emitted code for fun."><title>juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="../crates.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Crate juicebox_asm</a></h2><div class="sidebar-elems"><ul class="block"><li class="version">Version 0.1.0</li><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="#structs">Structs</a></li><li><a href="#enums">Enums</a></li></ul></section></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Crate <a class="mod" href="#">juicebox_asm</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/juicebox_asm/lib.rs.html#1-107">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A simple <code>x64</code> jit assembler with a minimal runtime to execute emitted code for fun.</p> <p>The following is an fibonacci example implementation.</p> -<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>juicebox_asm::prelude::<span class="kw-2">*</span>; +<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>juicebox_asm::{Asm, Reg64, Imm64, Label}; +<span class="kw">use </span>juicebox_asm::insn::<span class="kw-2">*</span>; <span class="kw">use </span>juicebox_asm::Runtime; <span class="kw">const fn </span>fib_rs(n: u64) -> u64 { @@ -69,4 +70,4 @@ <span class="macro">assert_eq!</span>(fib_jit, fib_rs(n)); } }</code></pre></div> -</div></details><h2 id="modules" class="small-section-header"><a href="#modules">Modules</a></h2><ul class="item-table"><li><div class="item-name"><a class="mod" href="prelude/index.html" title="mod juicebox_asm::prelude">prelude</a></div><div class="desc docblock-short">Crate prelude, which can be used to import the most important types at once.</div></li></ul><h2 id="structs" class="small-section-header"><a href="#structs">Structs</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></div><div class="desc docblock-short"><code>x64</code> jit assembler.</div></li><li><div class="item-name"><a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a></div><div class="desc docblock-short">Type representing an 8 bit immediate.</div></li><li><div class="item-name"><a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a></div><div class="desc docblock-short">Type representing a 16 bit immediate.</div></li><li><div class="item-name"><a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></div><div class="desc docblock-short">Type representing a 32 bit immediate.</div></li><li><div class="item-name"><a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></div><div class="desc docblock-short">Type representing a 64 bit immediate.</div></li><li><div class="item-name"><a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a></div><div class="desc docblock-short">A label which is used as target for jump instructions.</div></li><li><div class="item-name"><a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></div><div class="desc docblock-short">A simple <code>mmap</code>ed runtime with executable pages.</div></li></ul><h2 id="enums" class="small-section-header"><a href="#enums">Enums</a></h2><ul class="item-table"><li><div class="item-name"><a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a></div><div class="desc docblock-short">Type representing a memory operand.</div></li><li><div class="item-name"><a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a></div><div class="desc docblock-short">Definition of 8 bit registers.</div></li><li><div class="item-name"><a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a></div><div class="desc docblock-short">Definition of 16 bit registers.</div></li><li><div class="item-name"><a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a></div><div class="desc docblock-short">Definition of 32 bit registers.</div></li><li><div class="item-name"><a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></div><div class="desc docblock-short">Definition of 64 bit registers.</div></li></ul></section></div></main></body></html>
\ No newline at end of file +</div></details><h2 id="modules" class="small-section-header"><a href="#modules">Modules</a></h2><ul class="item-table"><li><div class="item-name"><a class="mod" href="insn/index.html" title="mod juicebox_asm::insn">insn</a></div><div class="desc docblock-short">Trait definitions of various instructions.</div></li></ul><h2 id="structs" class="small-section-header"><a href="#structs">Structs</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></div><div class="desc docblock-short"><code>x64</code> jit assembler.</div></li><li><div class="item-name"><a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a></div><div class="desc docblock-short">Type representing an 8 bit immediate.</div></li><li><div class="item-name"><a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a></div><div class="desc docblock-short">Type representing a 16 bit immediate.</div></li><li><div class="item-name"><a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></div><div class="desc docblock-short">Type representing a 32 bit immediate.</div></li><li><div class="item-name"><a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></div><div class="desc docblock-short">Type representing a 64 bit immediate.</div></li><li><div class="item-name"><a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a></div><div class="desc docblock-short">A label which is used as target for jump instructions.</div></li><li><div class="item-name"><a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></div><div class="desc docblock-short">A simple <code>mmap</code>ed runtime with executable pages.</div></li></ul><h2 id="enums" class="small-section-header"><a href="#enums">Enums</a></h2><ul class="item-table"><li><div class="item-name"><a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a></div><div class="desc docblock-short">Type representing a memory operand.</div></li><li><div class="item-name"><a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a></div><div class="desc docblock-short">Definition of 8 bit registers.</div></li><li><div class="item-name"><a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a></div><div class="desc docblock-short">Definition of 16 bit registers.</div></li><li><div class="item-name"><a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a></div><div class="desc docblock-short">Definition of 32 bit registers.</div></li><li><div class="item-name"><a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a></div><div class="desc docblock-short">Definition of 64 bit registers.</div></li></ul></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/insn/index.html b/juicebox_asm/insn/index.html new file mode 100644 index 0000000..f440fba --- /dev/null +++ b/juicebox_asm/insn/index.html @@ -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="Trait definitions of various instructions."><title>juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Module insn</a></h2><div class="sidebar-elems"><section><ul class="block"><li><a href="#traits">Traits</a></li></ul></section></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Module <a href="../index.html">juicebox_asm</a>::<wbr><a class="mod" href="#">insn</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/juicebox_asm/insn.rs.html#1-73">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait definitions of various instructions.</p> +</div></details><h2 id="traits" class="small-section-header"><a href="#traits">Traits</a></h2><ul class="item-table"><li><div class="item-name"><a class="trait" href="trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/add"><code>add</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Call.html" title="trait juicebox_asm::insn::Call">Call</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/call"><code>call</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Cmp.html" title="trait juicebox_asm::insn::Cmp">Cmp</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/cmp"><code>cmp</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/dec"><code>dec</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Jmp.html" title="trait juicebox_asm::insn::Jmp">Jmp</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/jmp"><code>jmp</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Jnz.html" title="trait juicebox_asm::insn::Jnz">Jnz</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/jcc"><code>jnz</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Jz.html" title="trait juicebox_asm::insn::Jz">Jz</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/jcc"><code>jz</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/mov"><code>mov</code></a> instruction kinds.</div></li><li><div class="item-name"><a class="trait" href="trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a></div><div class="desc docblock-short">Trait for <a href="https://www.felixcloutier.com/x86/test"><code>test</code></a> instruction kinds.</div></li></ul></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/insn/sidebar-items.js b/juicebox_asm/insn/sidebar-items.js new file mode 100644 index 0000000..140fc4e --- /dev/null +++ b/juicebox_asm/insn/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"trait":["Add","Call","Cmp","Dec","Jmp","Jnz","Jz","Mov","Test"]};
\ No newline at end of file diff --git a/juicebox_asm/insn/trait.Add.html b/juicebox_asm/insn/trait.Add.html index 4dbbe06..06adc65 100644 --- a/juicebox_asm/insn/trait.Add.html +++ b/juicebox_asm/insn/trait.Add.html @@ -1,11 +1,6 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/trait.Add.html"> - <title>Redirection</title> -</head> -<body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/trait.Add.html">../../juicebox_asm/prelude/trait.Add.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/trait.Add.html" + location.search + location.hash);</script> -</body> -</html>
\ No newline at end of file +<!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="Trait for `add` instruction kinds."><title>Add in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Add</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.add">add</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Add</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/juicebox_asm/insn.rs.html#16-19">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Add<T, U> { + // Required method + fn <a href="#tymethod.add" class="fn">add</a>(&mut self, op1: T, op2: U); +}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/add"><code>add</code></a> instruction kinds.</p> +</div></details><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.add" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#18">source</a><h4 class="code-header">fn <a href="#tymethod.add" class="fn">add</a>(&mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit an add instruction.</p> +</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#16-20">source</a><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#22-26">source</a><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="../struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Add%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#10-14">source</a><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Add%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#4-8">source</a><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Add.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/insn/trait.Call.html b/juicebox_asm/insn/trait.Call.html index 6bc842e..00b613f 100644 --- a/juicebox_asm/insn/trait.Call.html +++ b/juicebox_asm/insn/trait.Call.html @@ -1,11 +1,6 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/trait.Call.html"> - <title>Redirection</title> -</head> -<body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/trait.Call.html">../../juicebox_asm/prelude/trait.Call.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/trait.Call.html" + location.search + location.hash);</script> -</body> -</html>
\ No newline at end of file +<!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="Trait for `call` instruction kinds."><title>Call in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Call</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.call">call</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Call</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/juicebox_asm/insn.rs.html#22-25">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Call<T> { + // Required method + fn <a href="#tymethod.call" class="fn">call</a>(&mut self, op1: T); +}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/call"><code>call</code></a> instruction kinds.</p> +</div></details><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.call" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#24">source</a><h4 class="code-header">fn <a href="#tymethod.call" class="fn">call</a>(&mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a call instruction.</p> +</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Call%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/call.rs.html#4-8">source</a><a href="#impl-Call%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Call.html" title="trait juicebox_asm::insn::Call">Call</a><<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Call.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/insn/trait.Cmp.html b/juicebox_asm/insn/trait.Cmp.html index b685490..3f88e11 100644 --- a/juicebox_asm/insn/trait.Cmp.html +++ b/juicebox_asm/insn/trait.Cmp.html @@ -1,11 +1,8 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/trait.Cmp.html"> - <title>Redirection</title> -</head> -<body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/trait.Cmp.html">../../juicebox_asm/prelude/trait.Cmp.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/trait.Cmp.html" + location.search + location.hash);</script> -</body> -</html>
\ No newline at end of file +<!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="Trait for `cmp` instruction kinds."><title>Cmp in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Cmp</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.cmp">cmp</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Cmp</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/juicebox_asm/insn.rs.html#28-34">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Cmp<T, U> { + // Required method + fn <a href="#tymethod.cmp" class="fn">cmp</a>(&mut self, op1: T, op2: U); +}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/cmp"><code>cmp</code></a> instruction kinds.</p> +</div></details><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.cmp" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#33">source</a><h4 class="code-header">fn <a href="#tymethod.cmp" class="fn">cmp</a>(&mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit a compare instruction.</p> +<p>Computes <code>op2 - op1</code> and sets the status flags in the same way as the <code>sub</code> instruction, +the result is discarded.</p> +</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/cmp.rs.html#4-8">source</a><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Cmp.html" title="trait juicebox_asm::insn::Cmp">Cmp</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="../struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Cmp.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/insn/trait.Dec.html b/juicebox_asm/insn/trait.Dec.html index 9a2b82d..e8c6042 100644 --- a/juicebox_asm/insn/trait.Dec.html +++ b/juicebox_asm/insn/trait.Dec.html @@ -1,11 +1,6 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/trait.Dec.html"> - <title>Redirection</title> -</head> -<body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/trait.Dec.html">../../juicebox_asm/prelude/trait.Dec.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/trait.Dec.html" + location.search + location.hash);</script> -</body> -</html>
\ No newline at end of file +<!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="Trait for `dec` instruction kinds."><title>Dec in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Dec</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.dec">dec</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Dec</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/juicebox_asm/insn.rs.html#37-40">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Dec<T> { + // Required method + fn <a href="#tymethod.dec" class="fn">dec</a>(&mut self, op1: T); +}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/dec"><code>dec</code></a> instruction kinds.</p> +</div></details><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.dec" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#39">source</a><h4 class="code-header">fn <a href="#tymethod.dec" class="fn">dec</a>(&mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a decrement instruction.</p> +</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Dec%3CReg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/dec.rs.html#10-14">source</a><a href="#impl-Dec%3CReg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a><<a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Dec%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/dec.rs.html#4-8">source</a><a href="#impl-Dec%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a><<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Dec.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/insn/trait.Jmp.html b/juicebox_asm/insn/trait.Jmp.html index 2f3bf40..9b01a30 100644 --- a/juicebox_asm/insn/trait.Jmp.html +++ b/juicebox_asm/insn/trait.Jmp.html @@ -1,11 +1,6 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/trait.Jmp.html"> - <title>Redirection</title> -</head> -<body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/trait.Jmp.html">../../juicebox_asm/prelude/trait.Jmp.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/trait.Jmp.html" + location.search + location.hash);</script> -</body> -</html>
\ No newline at end of file +<!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="Trait for `jmp` instruction kinds."><title>Jmp in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Jmp</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.jmp">jmp</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Jmp</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/juicebox_asm/insn.rs.html#43-46">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Jmp<T> { + // Required method + fn <a href="#tymethod.jmp" class="fn">jmp</a>(&mut self, op1: T); +}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/jmp"><code>jmp</code></a> instruction kinds.</p> +</div></details><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.jmp" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#45">source</a><h4 class="code-header">fn <a href="#tymethod.jmp" class="fn">jmp</a>(&mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit an unconditional jump instruction.</p> +</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Jmp%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jmp.rs.html#4-8">source</a><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Jmp.html" title="trait juicebox_asm::insn::Jmp">Jmp</a><&mut <a class="struct" href="../struct.Label.html" title="struct juicebox_asm::Label">Label</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Jmp.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/insn/trait.Jnz.html b/juicebox_asm/insn/trait.Jnz.html index 7692604..9031e08 100644 --- a/juicebox_asm/insn/trait.Jnz.html +++ b/juicebox_asm/insn/trait.Jnz.html @@ -1,11 +1,6 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/trait.Jnz.html"> - <title>Redirection</title> -</head> -<body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/trait.Jnz.html">../../juicebox_asm/prelude/trait.Jnz.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/trait.Jnz.html" + location.search + location.hash);</script> -</body> -</html>
\ No newline at end of file +<!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="Trait for `jnz` instruction kinds."><title>Jnz in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Jnz</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.jnz">jnz</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Jnz</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/juicebox_asm/insn.rs.html#49-52">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Jnz<T> { + // Required method + fn <a href="#tymethod.jnz" class="fn">jnz</a>(&mut self, op1: T); +}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/jcc"><code>jnz</code></a> instruction kinds.</p> +</div></details><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.jnz" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#51">source</a><h4 class="code-header">fn <a href="#tymethod.jnz" class="fn">jnz</a>(&mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).</p> +</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Jnz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jnz.rs.html#4-8">source</a><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Jnz.html" title="trait juicebox_asm::insn::Jnz">Jnz</a><&mut <a class="struct" href="../struct.Label.html" title="struct juicebox_asm::Label">Label</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Jnz.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/insn/trait.Jz.html b/juicebox_asm/insn/trait.Jz.html index 05a2555..fc6e391 100644 --- a/juicebox_asm/insn/trait.Jz.html +++ b/juicebox_asm/insn/trait.Jz.html @@ -1,11 +1,6 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/trait.Jz.html"> - <title>Redirection</title> -</head> -<body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/trait.Jz.html">../../juicebox_asm/prelude/trait.Jz.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/trait.Jz.html" + location.search + location.hash);</script> -</body> -</html>
\ No newline at end of file +<!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="Trait for `jz` instruction kinds."><title>Jz in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Jz</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.jz">jz</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Jz</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/juicebox_asm/insn.rs.html#55-58">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Jz<T> { + // Required method + fn <a href="#tymethod.jz" class="fn">jz</a>(&mut self, op1: T); +}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/jcc"><code>jz</code></a> instruction kinds.</p> +</div></details><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.jz" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#57">source</a><h4 class="code-header">fn <a href="#tymethod.jz" class="fn">jz</a>(&mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a conditional jump if zero instruction (<code>ZF = 1</code>).</p> +</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Jz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jz.rs.html#4-8">source</a><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Jz.html" title="trait juicebox_asm::insn::Jz">Jz</a><&mut <a class="struct" href="../struct.Label.html" title="struct juicebox_asm::Label">Label</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Jz.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/insn/trait.Mov.html b/juicebox_asm/insn/trait.Mov.html index fdbd208..2022b18 100644 --- a/juicebox_asm/insn/trait.Mov.html +++ b/juicebox_asm/insn/trait.Mov.html @@ -1,11 +1,6 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/trait.Mov.html"> - <title>Redirection</title> -</head> -<body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/trait.Mov.html">../../juicebox_asm/prelude/trait.Mov.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/trait.Mov.html" + location.search + location.hash);</script> -</body> -</html>
\ No newline at end of file +<!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="Trait for `mov` instruction kinds."><title>Mov in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Mov</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.mov">mov</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Mov</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/juicebox_asm/insn.rs.html#61-64">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Mov<T, U> { + // Required method + fn <a href="#tymethod.mov" class="fn">mov</a>(&mut self, op1: T, op2: U); +}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/mov"><code>mov</code></a> instruction kinds.</p> +</div></details><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.mov" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#63">source</a><h4 class="code-header">fn <a href="#tymethod.mov" class="fn">mov</a>(&mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit an move instruction.</p> +</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#50-54">source</a><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="../enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#44-48">source</a><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#38-42">source</a><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#32-36">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#110-114">source</a><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="../struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#76-80">source</a><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#24-28">source</a><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="../enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#102-106">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="struct" href="../struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#70-74">source</a><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#18-22">source</a><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#96-100">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="struct" href="../struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#64-68">source</a><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#12-16">source</a><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#90-94">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="struct" href="../struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#58-62">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#6-10">source</a><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#84-88">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="struct" href="../struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Mov.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/insn/trait.Test.html b/juicebox_asm/insn/trait.Test.html index 323461d..19da176 100644 --- a/juicebox_asm/insn/trait.Test.html +++ b/juicebox_asm/insn/trait.Test.html @@ -1,11 +1,8 @@ -<!DOCTYPE html> -<html lang="en"> -<head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/trait.Test.html"> - <title>Redirection</title> -</head> -<body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/trait.Test.html">../../juicebox_asm/prelude/trait.Test.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/trait.Test.html" + location.search + location.hash);</script> -</body> -</html>
\ No newline at end of file +<!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="Trait for `test` instruction kinds."><title>Test in juicebox_asm::insn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Test</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.test">test</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::insn</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">insn</a>::<wbr><a class="trait" href="#">Test</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/juicebox_asm/insn.rs.html#67-73">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Test<T, U> { + // Required method + fn <a href="#tymethod.test" class="fn">test</a>(&mut self, op1: T, op2: U); +}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Trait for <a href="https://www.felixcloutier.com/x86/test"><code>test</code></a> instruction kinds.</p> +</div></details><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.test" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#72">source</a><h4 class="code-header">fn <a href="#tymethod.test" class="fn">test</a>(&mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit a logical compare instruction.</p> +<p>Computes the bit-wise logical AND of first operand and the second operand and sets the +<code>SF</code>, <code>ZF</code>, and <code>PF</code> status flags, the result is discarded.</p> +</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#16-20">source</a><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="../struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Test%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#10-14">source</a><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a><<a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="../enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Test%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#4-8">source</a><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a><<a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="../enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Test.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/label/struct.Label.html b/juicebox_asm/label/struct.Label.html index 7f69439..fe7146c 100644 --- a/juicebox_asm/label/struct.Label.html +++ b/juicebox_asm/label/struct.Label.html @@ -1,11 +1,11 @@ <!DOCTYPE html> <html lang="en"> <head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/struct.Label.html"> + <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/struct.Label.html"> <title>Redirection</title> </head> <body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/struct.Label.html">../../juicebox_asm/prelude/struct.Label.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/struct.Label.html" + location.search + location.hash);</script> + <p>Redirecting to <a href="../../juicebox_asm/struct.Label.html">../../juicebox_asm/struct.Label.html</a>...</p> + <script>location.replace("../../juicebox_asm/struct.Label.html" + location.search + location.hash);</script> </body> </html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/enum.Reg16.html b/juicebox_asm/prelude/enum.Reg16.html deleted file mode 100644 index 4c9aab2..0000000 --- a/juicebox_asm/prelude/enum.Reg16.html +++ /dev/null @@ -1,30 +0,0 @@ -<!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="Definition of 16 bit registers."><title>Reg16 in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Reg16</a></h2><div class="sidebar-elems"><section><h3><a href="#variants">Variants</a></h3><ul class="block"><li><a href="#variant.ax">ax</a></li><li><a href="#variant.bp">bp</a></li><li><a href="#variant.bx">bx</a></li><li><a href="#variant.cx">cx</a></li><li><a href="#variant.di">di</a></li><li><a href="#variant.dx">dx</a></li><li><a href="#variant.r10w">r10w</a></li><li><a href="#variant.r11w">r11w</a></li><li><a href="#variant.r12w">r12w</a></li><li><a href="#variant.r13w">r13w</a></li><li><a href="#variant.r14w">r14w</a></li><li><a href="#variant.r15w">r15w</a></li><li><a href="#variant.r8w">r8w</a></li><li><a href="#variant.r9w">r9w</a></li><li><a href="#variant.si">si</a></li><li><a href="#variant.sp">sp</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm">Add<MemOp, Reg16></a></li><li><a href="#impl-Clone-for-Reg16">Clone</a></li><li><a href="#impl-Copy-for-Reg16">Copy</a></li><li><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm">Mov<MemOp, Reg16></a></li><li><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm">Mov<Reg16, Imm16></a></li><li><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm">Mov<Reg16, MemOp></a></li><li><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm">Mov<Reg16, Reg16></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Reg16">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Reg16">Send</a></li><li><a href="#impl-Sync-for-Reg16">Sync</a></li><li><a href="#impl-Unpin-for-Reg16">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Reg16">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Reg16">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Reg16">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Reg16">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Reg16">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Reg16">Into<U></a></li><li><a href="#impl-ToOwned-for-Reg16">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-Reg16">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Reg16">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Enum <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="enum" href="#">Reg16</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/juicebox_asm/reg.rs.html#84-86">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code><div class="code-attribute">#[repr(u8)]</div>pub enum Reg16 { -<details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 16 variants</span></summary> ax, - cx, - dx, - bx, - sp, - bp, - si, - di, - r8w, - r9w, - r10w, - r11w, - r12w, - r13w, - r14w, - r15w, -</details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Definition of 16 bit registers.</p> -</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.ax" class="variant"><a href="#variant.ax" class="anchor">§</a><h3 class="code-header">ax</h3></section><section id="variant.cx" class="variant"><a href="#variant.cx" class="anchor">§</a><h3 class="code-header">cx</h3></section><section id="variant.dx" class="variant"><a href="#variant.dx" class="anchor">§</a><h3 class="code-header">dx</h3></section><section id="variant.bx" class="variant"><a href="#variant.bx" class="anchor">§</a><h3 class="code-header">bx</h3></section><section id="variant.sp" class="variant"><a href="#variant.sp" class="anchor">§</a><h3 class="code-header">sp</h3></section><section id="variant.bp" class="variant"><a href="#variant.bp" class="anchor">§</a><h3 class="code-header">bp</h3></section><section id="variant.si" class="variant"><a href="#variant.si" class="anchor">§</a><h3 class="code-header">si</h3></section><section id="variant.di" class="variant"><a href="#variant.di" class="anchor">§</a><h3 class="code-header">di</h3></section><section id="variant.r8w" class="variant"><a href="#variant.r8w" class="anchor">§</a><h3 class="code-header">r8w</h3></section><section id="variant.r9w" class="variant"><a href="#variant.r9w" class="anchor">§</a><h3 class="code-header">r9w</h3></section><section id="variant.r10w" class="variant"><a href="#variant.r10w" class="anchor">§</a><h3 class="code-header">r10w</h3></section><section id="variant.r11w" class="variant"><a href="#variant.r11w" class="anchor">§</a><h3 class="code-header">r11w</h3></section><section id="variant.r12w" class="variant"><a href="#variant.r12w" class="anchor">§</a><h3 class="code-header">r12w</h3></section><section id="variant.r13w" class="variant"><a href="#variant.r13w" class="anchor">§</a><h3 class="code-header">r13w</h3></section><section id="variant.r14w" class="variant"><a href="#variant.r14w" class="anchor">§</a><h3 class="code-header">r14w</h3></section><section id="variant.r15w" class="variant"><a href="#variant.r15w" class="anchor">§</a><h3 class="code-header">r15w</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#15-19">source</a><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#16-18">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg16" class="impl"><a class="src rightside" href="../../src/juicebox_asm/reg.rs.html#84-86">source</a><a href="#impl-Clone-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/reg.rs.html#84-86">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#43-47">source</a><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#44-46">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#95-99">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#96-98">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#69-73">source</a><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#70-72">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, op2: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#17-21">source</a><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#18-20">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><section id="impl-Copy-for-Reg16" class="impl"><a class="src rightside" href="../../src/juicebox_asm/reg.rs.html#84-86">source</a><a href="#impl-Copy-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg16" class="impl"><a href="#impl-RefUnwindSafe-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section><section id="impl-Send-for-Reg16" class="impl"><a href="#impl-Send-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section><section id="impl-Sync-for-Reg16" class="impl"><a href="#impl-Sync-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section><section id="impl-Unpin-for-Reg16" class="impl"><a href="#impl-Unpin-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section><section id="impl-UnwindSafe-for-Reg16" class="impl"><a href="#impl-UnwindSafe-for-Reg16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where - T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#706">source</a><a href="#impl-Into%3CU%3E-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#715">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p> -<p>That is, this conversion is whatever the implementation of -<code><a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToOwned-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/alloc/borrow.rs.html#82">source</a><a href="#impl-ToOwned-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T<span class="where fmt-newline">where - T: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/alloc/borrow.rs.html#87">source</a><a href="#method.to_owned" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&self) -> T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/alloc/borrow.rs.html#91">source</a><a href="#method.clone_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&self, target: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a>)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#762">source</a><a href="#impl-TryFrom%3CU%3E-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#769">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-Reg16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#747">source</a><a href="#impl-TryInto%3CU%3E-for-Reg16" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#754">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/enum.Reg32.html b/juicebox_asm/prelude/enum.Reg32.html deleted file mode 100644 index e99bafd..0000000 --- a/juicebox_asm/prelude/enum.Reg32.html +++ /dev/null @@ -1,30 +0,0 @@ -<!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="Definition of 32 bit registers."><title>Reg32 in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Reg32</a></h2><div class="sidebar-elems"><section><h3><a href="#variants">Variants</a></h3><ul class="block"><li><a href="#variant.eax">eax</a></li><li><a href="#variant.ebp">ebp</a></li><li><a href="#variant.ebx">ebx</a></li><li><a href="#variant.ecx">ecx</a></li><li><a href="#variant.edi">edi</a></li><li><a href="#variant.edx">edx</a></li><li><a href="#variant.esi">esi</a></li><li><a href="#variant.esp">esp</a></li><li><a href="#variant.r10d">r10d</a></li><li><a href="#variant.r11d">r11d</a></li><li><a href="#variant.r12d">r12d</a></li><li><a href="#variant.r13d">r13d</a></li><li><a href="#variant.r14d">r14d</a></li><li><a href="#variant.r15d">r15d</a></li><li><a href="#variant.r8d">r8d</a></li><li><a href="#variant.r9d">r9d</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm">Add<Reg32, Reg32></a></li><li><a href="#impl-Clone-for-Reg32">Clone</a></li><li><a href="#impl-Copy-for-Reg32">Copy</a></li><li><a href="#impl-Dec%3CReg32%3E-for-Asm">Dec<Reg32></a></li><li><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm">Mov<MemOp, Reg32></a></li><li><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm">Mov<Reg32, Imm32></a></li><li><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm">Mov<Reg32, MemOp></a></li><li><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm">Mov<Reg32, Reg32></a></li><li><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm">Test<Reg32, Reg32></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Reg32">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Reg32">Send</a></li><li><a href="#impl-Sync-for-Reg32">Sync</a></li><li><a href="#impl-Unpin-for-Reg32">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Reg32">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Reg32">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Reg32">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Reg32">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Reg32">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Reg32">Into<U></a></li><li><a href="#impl-ToOwned-for-Reg32">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-Reg32">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Reg32">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Enum <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="enum" href="#">Reg32</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/juicebox_asm/reg.rs.html#81-83">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code><div class="code-attribute">#[repr(u8)]</div>pub enum Reg32 { -<details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 16 variants</span></summary> eax, - ecx, - edx, - ebx, - esp, - ebp, - esi, - edi, - r8d, - r9d, - r10d, - r11d, - r12d, - r13d, - r14d, - r15d, -</details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Definition of 32 bit registers.</p> -</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.eax" class="variant"><a href="#variant.eax" class="anchor">§</a><h3 class="code-header">eax</h3></section><section id="variant.ecx" class="variant"><a href="#variant.ecx" class="anchor">§</a><h3 class="code-header">ecx</h3></section><section id="variant.edx" class="variant"><a href="#variant.edx" class="anchor">§</a><h3 class="code-header">edx</h3></section><section id="variant.ebx" class="variant"><a href="#variant.ebx" class="anchor">§</a><h3 class="code-header">ebx</h3></section><section id="variant.esp" class="variant"><a href="#variant.esp" class="anchor">§</a><h3 class="code-header">esp</h3></section><section id="variant.ebp" class="variant"><a href="#variant.ebp" class="anchor">§</a><h3 class="code-header">ebp</h3></section><section id="variant.esi" class="variant"><a href="#variant.esi" class="anchor">§</a><h3 class="code-header">esi</h3></section><section id="variant.edi" class="variant"><a href="#variant.edi" class="anchor">§</a><h3 class="code-header">edi</h3></section><section id="variant.r8d" class="variant"><a href="#variant.r8d" class="anchor">§</a><h3 class="code-header">r8d</h3></section><section id="variant.r9d" class="variant"><a href="#variant.r9d" class="anchor">§</a><h3 class="code-header">r9d</h3></section><section id="variant.r10d" class="variant"><a href="#variant.r10d" class="anchor">§</a><h3 class="code-header">r10d</h3></section><section id="variant.r11d" class="variant"><a href="#variant.r11d" class="anchor">§</a><h3 class="code-header">r11d</h3></section><section id="variant.r12d" class="variant"><a href="#variant.r12d" class="anchor">§</a><h3 class="code-header">r12d</h3></section><section id="variant.r13d" class="variant"><a href="#variant.r13d" class="anchor">§</a><h3 class="code-header">r13d</h3></section><section id="variant.r14d" class="variant"><a href="#variant.r14d" class="anchor">§</a><h3 class="code-header">r14d</h3></section><section id="variant.r15d" class="variant"><a href="#variant.r15d" class="anchor">§</a><h3 class="code-header">r15d</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#9-13">source</a><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#10-12">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg32" class="impl"><a class="src rightside" href="../../src/juicebox_asm/reg.rs.html#81-83">source</a><a href="#impl-Clone-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/reg.rs.html#81-83">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/dec.rs.html#9-13">source</a><a href="#impl-Dec%3CReg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Dec.html" title="trait juicebox_asm::prelude::Dec">Dec</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/dec.rs.html#10-12">source</a><a href="#method.dec" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Dec.html#tymethod.dec" class="fn">dec</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#37-41">source</a><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#38-40">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#89-93">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#90-92">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#63-67">source</a><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#64-66">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#11-15">source</a><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#12-14">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#9-13">source</a><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#10-12">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="trait.Test.html#tymethod.test">Read more</a></div></details></div></details><section id="impl-Copy-for-Reg32" class="impl"><a class="src rightside" href="../../src/juicebox_asm/reg.rs.html#81-83">source</a><a href="#impl-Copy-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg32" class="impl"><a href="#impl-RefUnwindSafe-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section><section id="impl-Send-for-Reg32" class="impl"><a href="#impl-Send-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section><section id="impl-Sync-for-Reg32" class="impl"><a href="#impl-Sync-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section><section id="impl-Unpin-for-Reg32" class="impl"><a href="#impl-Unpin-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section><section id="impl-UnwindSafe-for-Reg32" class="impl"><a href="#impl-UnwindSafe-for-Reg32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where - T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#706">source</a><a href="#impl-Into%3CU%3E-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#715">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p> -<p>That is, this conversion is whatever the implementation of -<code><a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToOwned-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/alloc/borrow.rs.html#82">source</a><a href="#impl-ToOwned-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T<span class="where fmt-newline">where - T: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/alloc/borrow.rs.html#87">source</a><a href="#method.to_owned" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&self) -> T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/alloc/borrow.rs.html#91">source</a><a href="#method.clone_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&self, target: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a>)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#762">source</a><a href="#impl-TryFrom%3CU%3E-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#769">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-Reg32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#747">source</a><a href="#impl-TryInto%3CU%3E-for-Reg32" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#754">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/enum.Reg64.html b/juicebox_asm/prelude/enum.Reg64.html deleted file mode 100644 index c8078b6..0000000 --- a/juicebox_asm/prelude/enum.Reg64.html +++ /dev/null @@ -1,30 +0,0 @@ -<!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="Definition of 64 bit registers."><title>Reg64 in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Reg64</a></h2><div class="sidebar-elems"><section><h3><a href="#variants">Variants</a></h3><ul class="block"><li><a href="#variant.r10">r10</a></li><li><a href="#variant.r11">r11</a></li><li><a href="#variant.r12">r12</a></li><li><a href="#variant.r13">r13</a></li><li><a href="#variant.r14">r14</a></li><li><a href="#variant.r15">r15</a></li><li><a href="#variant.r8">r8</a></li><li><a href="#variant.r9">r9</a></li><li><a href="#variant.rax">rax</a></li><li><a href="#variant.rbp">rbp</a></li><li><a href="#variant.rbx">rbx</a></li><li><a href="#variant.rcx">rcx</a></li><li><a href="#variant.rdi">rdi</a></li><li><a href="#variant.rdx">rdx</a></li><li><a href="#variant.rsi">rsi</a></li><li><a href="#variant.rsp">rsp</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm">Add<Reg64, Reg64></a></li><li><a href="#impl-Call%3CReg64%3E-for-Asm">Call<Reg64></a></li><li><a href="#impl-Clone-for-Reg64">Clone</a></li><li><a href="#impl-Copy-for-Reg64">Copy</a></li><li><a href="#impl-Dec%3CReg64%3E-for-Asm">Dec<Reg64></a></li><li><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm">Mov<MemOp, Reg64></a></li><li><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm">Mov<Reg64, Imm64></a></li><li><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm">Mov<Reg64, MemOp></a></li><li><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm">Mov<Reg64, Reg64></a></li><li><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm">Test<Reg64, Reg64></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Reg64">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Reg64">Send</a></li><li><a href="#impl-Sync-for-Reg64">Sync</a></li><li><a href="#impl-Unpin-for-Reg64">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Reg64">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Reg64">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Reg64">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Reg64">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Reg64">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Reg64">Into<U></a></li><li><a href="#impl-ToOwned-for-Reg64">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-Reg64">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Reg64">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Enum <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="enum" href="#">Reg64</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/juicebox_asm/reg.rs.html#78-80">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code><div class="code-attribute">#[repr(u8)]</div>pub enum Reg64 { -<details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 16 variants</span></summary> rax, - rcx, - rdx, - rbx, - rsp, - rbp, - rsi, - rdi, - r8, - r9, - r10, - r11, - r12, - r13, - r14, - r15, -</details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Definition of 64 bit registers.</p> -</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.rax" class="variant"><a href="#variant.rax" class="anchor">§</a><h3 class="code-header">rax</h3></section><section id="variant.rcx" class="variant"><a href="#variant.rcx" class="anchor">§</a><h3 class="code-header">rcx</h3></section><section id="variant.rdx" class="variant"><a href="#variant.rdx" class="anchor">§</a><h3 class="code-header">rdx</h3></section><section id="variant.rbx" class="variant"><a href="#variant.rbx" class="anchor">§</a><h3 class="code-header">rbx</h3></section><section id="variant.rsp" class="variant"><a href="#variant.rsp" class="anchor">§</a><h3 class="code-header">rsp</h3></section><section id="variant.rbp" class="variant"><a href="#variant.rbp" class="anchor">§</a><h3 class="code-header">rbp</h3></section><section id="variant.rsi" class="variant"><a href="#variant.rsi" class="anchor">§</a><h3 class="code-header">rsi</h3></section><section id="variant.rdi" class="variant"><a href="#variant.rdi" class="anchor">§</a><h3 class="code-header">rdi</h3></section><section id="variant.r8" class="variant"><a href="#variant.r8" class="anchor">§</a><h3 class="code-header">r8</h3></section><section id="variant.r9" class="variant"><a href="#variant.r9" class="anchor">§</a><h3 class="code-header">r9</h3></section><section id="variant.r10" class="variant"><a href="#variant.r10" class="anchor">§</a><h3 class="code-header">r10</h3></section><section id="variant.r11" class="variant"><a href="#variant.r11" class="anchor">§</a><h3 class="code-header">r11</h3></section><section id="variant.r12" class="variant"><a href="#variant.r12" class="anchor">§</a><h3 class="code-header">r12</h3></section><section id="variant.r13" class="variant"><a href="#variant.r13" class="anchor">§</a><h3 class="code-header">r13</h3></section><section id="variant.r14" class="variant"><a href="#variant.r14" class="anchor">§</a><h3 class="code-header">r14</h3></section><section id="variant.r15" class="variant"><a href="#variant.r15" class="anchor">§</a><h3 class="code-header">r15</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#3-7">source</a><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#4-6">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Call%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/call.rs.html#3-7">source</a><a href="#impl-Call%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Call.html" title="trait juicebox_asm::prelude::Call">Call</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.call" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/call.rs.html#4-6">source</a><a href="#method.call" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Call.html#tymethod.call" class="fn">call</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg64" class="impl"><a class="src rightside" href="../../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#impl-Clone-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/dec.rs.html#3-7">source</a><a href="#impl-Dec%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Dec.html" title="trait juicebox_asm::prelude::Dec">Dec</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/dec.rs.html#4-6">source</a><a href="#method.dec" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Dec.html#tymethod.dec" class="fn">dec</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#31-35">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#32-34">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#83-87">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#84-86">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#57-61">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#58-60">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#5-9">source</a><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#6-8">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#3-7">source</a><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#4-6">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="trait.Test.html#tymethod.test">Read more</a></div></details></div></details><section id="impl-Copy-for-Reg64" class="impl"><a class="src rightside" href="../../src/juicebox_asm/reg.rs.html#78-80">source</a><a href="#impl-Copy-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg64" class="impl"><a href="#impl-RefUnwindSafe-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section><section id="impl-Send-for-Reg64" class="impl"><a href="#impl-Send-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section><section id="impl-Sync-for-Reg64" class="impl"><a href="#impl-Sync-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section><section id="impl-Unpin-for-Reg64" class="impl"><a href="#impl-Unpin-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section><section id="impl-UnwindSafe-for-Reg64" class="impl"><a href="#impl-UnwindSafe-for-Reg64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where - T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#706">source</a><a href="#impl-Into%3CU%3E-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#715">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p> -<p>That is, this conversion is whatever the implementation of -<code><a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToOwned-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/alloc/borrow.rs.html#82">source</a><a href="#impl-ToOwned-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T<span class="where fmt-newline">where - T: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/alloc/borrow.rs.html#87">source</a><a href="#method.to_owned" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&self) -> T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/alloc/borrow.rs.html#91">source</a><a href="#method.clone_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&self, target: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a>)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#762">source</a><a href="#impl-TryFrom%3CU%3E-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#769">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-Reg64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#747">source</a><a href="#impl-TryInto%3CU%3E-for-Reg64" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#754">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/enum.Reg8.html b/juicebox_asm/prelude/enum.Reg8.html deleted file mode 100644 index 3e6ecb5..0000000 --- a/juicebox_asm/prelude/enum.Reg8.html +++ /dev/null @@ -1,34 +0,0 @@ -<!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="Definition of 8 bit registers."><title>Reg8 in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Reg8</a></h2><div class="sidebar-elems"><section><h3><a href="#variants">Variants</a></h3><ul class="block"><li><a href="#variant.ah">ah</a></li><li><a href="#variant.al">al</a></li><li><a href="#variant.bh">bh</a></li><li><a href="#variant.bl">bl</a></li><li><a href="#variant.bpl">bpl</a></li><li><a href="#variant.ch">ch</a></li><li><a href="#variant.cl">cl</a></li><li><a href="#variant.dh">dh</a></li><li><a href="#variant.dil">dil</a></li><li><a href="#variant.dl">dl</a></li><li><a href="#variant.r10l">r10l</a></li><li><a href="#variant.r11l">r11l</a></li><li><a href="#variant.r12l">r12l</a></li><li><a href="#variant.r13l">r13l</a></li><li><a href="#variant.r14l">r14l</a></li><li><a href="#variant.r15l">r15l</a></li><li><a href="#variant.r8l">r8l</a></li><li><a href="#variant.r9l">r9l</a></li><li><a href="#variant.sil">sil</a></li><li><a href="#variant.spl">spl</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Clone-for-Reg8">Clone</a></li><li><a href="#impl-Copy-for-Reg8">Copy</a></li><li><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm">Mov<MemOp, Reg8></a></li><li><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm">Mov<Reg8, Imm8></a></li><li><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm">Mov<Reg8, MemOp></a></li><li><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm">Mov<Reg8, Reg8></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Reg8">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Reg8">Send</a></li><li><a href="#impl-Sync-for-Reg8">Sync</a></li><li><a href="#impl-Unpin-for-Reg8">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Reg8">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Reg8">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Reg8">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Reg8">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Reg8">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Reg8">Into<U></a></li><li><a href="#impl-ToOwned-for-Reg8">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-Reg8">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Reg8">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Enum <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="enum" href="#">Reg8</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/juicebox_asm/reg.rs.html#87-90">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code><div class="code-attribute">#[repr(u8)]</div>pub enum Reg8 { -<details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 20 variants</span></summary> al, - cl, - dl, - bl, - spl, - bpl, - sil, - dil, - r8l, - r9l, - r10l, - r11l, - r12l, - r13l, - r14l, - r15l, - ah, - ch, - dh, - bh, -</details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Definition of 8 bit registers.</p> -</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.al" class="variant"><a href="#variant.al" class="anchor">§</a><h3 class="code-header">al</h3></section><section id="variant.cl" class="variant"><a href="#variant.cl" class="anchor">§</a><h3 class="code-header">cl</h3></section><section id="variant.dl" class="variant"><a href="#variant.dl" class="anchor">§</a><h3 class="code-header">dl</h3></section><section id="variant.bl" class="variant"><a href="#variant.bl" class="anchor">§</a><h3 class="code-header">bl</h3></section><section id="variant.spl" class="variant"><a href="#variant.spl" class="anchor">§</a><h3 class="code-header">spl</h3></section><section id="variant.bpl" class="variant"><a href="#variant.bpl" class="anchor">§</a><h3 class="code-header">bpl</h3></section><section id="variant.sil" class="variant"><a href="#variant.sil" class="anchor">§</a><h3 class="code-header">sil</h3></section><section id="variant.dil" class="variant"><a href="#variant.dil" class="anchor">§</a><h3 class="code-header">dil</h3></section><section id="variant.r8l" class="variant"><a href="#variant.r8l" class="anchor">§</a><h3 class="code-header">r8l</h3></section><section id="variant.r9l" class="variant"><a href="#variant.r9l" class="anchor">§</a><h3 class="code-header">r9l</h3></section><section id="variant.r10l" class="variant"><a href="#variant.r10l" class="anchor">§</a><h3 class="code-header">r10l</h3></section><section id="variant.r11l" class="variant"><a href="#variant.r11l" class="anchor">§</a><h3 class="code-header">r11l</h3></section><section id="variant.r12l" class="variant"><a href="#variant.r12l" class="anchor">§</a><h3 class="code-header">r12l</h3></section><section id="variant.r13l" class="variant"><a href="#variant.r13l" class="anchor">§</a><h3 class="code-header">r13l</h3></section><section id="variant.r14l" class="variant"><a href="#variant.r14l" class="anchor">§</a><h3 class="code-header">r14l</h3></section><section id="variant.r15l" class="variant"><a href="#variant.r15l" class="anchor">§</a><h3 class="code-header">r15l</h3></section><section id="variant.ah" class="variant"><a href="#variant.ah" class="anchor">§</a><h3 class="code-header">ah</h3></section><section id="variant.ch" class="variant"><a href="#variant.ch" class="anchor">§</a><h3 class="code-header">ch</h3></section><section id="variant.dh" class="variant"><a href="#variant.dh" class="anchor">§</a><h3 class="code-header">dh</h3></section><section id="variant.bh" class="variant"><a href="#variant.bh" class="anchor">§</a><h3 class="code-header">bh</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Reg8" class="impl"><a class="src rightside" href="../../src/juicebox_asm/reg.rs.html#87-90">source</a><a href="#impl-Clone-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/reg.rs.html#87-90">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#49-53">source</a><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#50-52">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#101-105">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#102-104">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, op2: <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#75-79">source</a><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#76-78">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, op2: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#23-27">source</a><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#24-26">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, op2: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><section id="impl-Copy-for-Reg8" class="impl"><a class="src rightside" href="../../src/juicebox_asm/reg.rs.html#87-90">source</a><a href="#impl-Copy-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Reg8" class="impl"><a href="#impl-RefUnwindSafe-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section><section id="impl-Send-for-Reg8" class="impl"><a href="#impl-Send-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section><section id="impl-Sync-for-Reg8" class="impl"><a href="#impl-Sync-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section><section id="impl-Unpin-for-Reg8" class="impl"><a href="#impl-Unpin-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section><section id="impl-UnwindSafe-for-Reg8" class="impl"><a href="#impl-UnwindSafe-for-Reg8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where - T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#706">source</a><a href="#impl-Into%3CU%3E-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#715">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p> -<p>That is, this conversion is whatever the implementation of -<code><a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToOwned-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/alloc/borrow.rs.html#82">source</a><a href="#impl-ToOwned-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T<span class="where fmt-newline">where - T: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/alloc/borrow.rs.html#87">source</a><a href="#method.to_owned" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&self) -> T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/alloc/borrow.rs.html#91">source</a><a href="#method.clone_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&self, target: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a>)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/1.74.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#762">source</a><a href="#impl-TryFrom%3CU%3E-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#769">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-Reg8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#747">source</a><a href="#impl-TryInto%3CU%3E-for-Reg8" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#754">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/index.html b/juicebox_asm/prelude/index.html deleted file mode 100644 index 4adb8ff..0000000 --- a/juicebox_asm/prelude/index.html +++ /dev/null @@ -1,2 +0,0 @@ -<!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="Crate prelude, which can be used to import the most important types at once."><title>juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Module prelude</a></h2><div class="sidebar-elems"><section><ul class="block"><li><a href="#reexports">Re-exports</a></li><li><a href="#structs">Structs</a></li><li><a href="#enums">Enums</a></li><li><a href="#traits">Traits</a></li></ul></section></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Module <a href="../index.html">juicebox_asm</a>::<wbr><a class="mod" href="#">prelude</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/juicebox_asm/prelude.rs.html#1-10">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Crate prelude, which can be used to import the most important types at once.</p> -</div></details><h2 id="reexports" class="small-section-header"><a href="#reexports">Re-exports</a></h2><ul class="item-table"><li><div class="item-name" id="reexport.Asm"><code>pub use crate::<a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a>;</code></div></li><li><div class="item-name" id="reexport.MemOp"><code>pub use crate::<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>;</code></div></li></ul><h2 id="structs" class="small-section-header"><a href="#structs">Structs</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></div><div class="desc docblock-short">Type representing an 8 bit immediate.</div></li><li><div class="item-name"><a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></div><div class="desc docblock-short">Type representing a 16 bit immediate.</div></li><li><div class="item-name"><a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></div><div class="desc docblock-short">Type representing a 32 bit immediate.</div></li><li><div class="item-name"><a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></div><div class="desc docblock-short">Type representing a 64 bit immediate.</div></li><li><div class="item-name"><a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></div><div class="desc docblock-short">A label which is used as target for jump instructions.</div></li></ul><h2 id="enums" class="small-section-header"><a href="#enums">Enums</a></h2><ul class="item-table"><li><div class="item-name"><a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a></div><div class="desc docblock-short">Definition of 8 bit registers.</div></li><li><div class="item-name"><a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a></div><div class="desc docblock-short">Definition of 16 bit registers.</div></li><li><div class="item-name"><a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a></div><div class="desc docblock-short">Definition of 32 bit registers.</div></li><li><div class="item-name"><a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a></div><div class="desc docblock-short">Definition of 64 bit registers.</div></li></ul><h2 id="traits" class="small-section-header"><a href="#traits">Traits</a></h2><ul class="item-table"><li><div class="item-name"><a class="trait" href="trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a></div></li><li><div class="item-name"><a class="trait" href="trait.Call.html" title="trait juicebox_asm::prelude::Call">Call</a></div></li><li><div class="item-name"><a class="trait" href="trait.Cmp.html" title="trait juicebox_asm::prelude::Cmp">Cmp</a></div></li><li><div class="item-name"><a class="trait" href="trait.Dec.html" title="trait juicebox_asm::prelude::Dec">Dec</a></div></li><li><div class="item-name"><a class="trait" href="trait.Jmp.html" title="trait juicebox_asm::prelude::Jmp">Jmp</a></div></li><li><div class="item-name"><a class="trait" href="trait.Jnz.html" title="trait juicebox_asm::prelude::Jnz">Jnz</a></div></li><li><div class="item-name"><a class="trait" href="trait.Jz.html" title="trait juicebox_asm::prelude::Jz">Jz</a></div></li><li><div class="item-name"><a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a></div></li><li><div class="item-name"><a class="trait" href="trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a></div></li></ul></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/sidebar-items.js b/juicebox_asm/prelude/sidebar-items.js deleted file mode 100644 index ab40e13..0000000 --- a/juicebox_asm/prelude/sidebar-items.js +++ /dev/null @@ -1 +0,0 @@ -window.SIDEBAR_ITEMS = {"enum":["Reg16","Reg32","Reg64","Reg8"],"struct":["Imm16","Imm32","Imm64","Imm8","Label"],"trait":["Add","Call","Cmp","Dec","Jmp","Jnz","Jz","Mov","Test"]};
\ No newline at end of file diff --git a/juicebox_asm/prelude/struct.Imm16.html b/juicebox_asm/prelude/struct.Imm16.html deleted file mode 100644 index 0309d87..0000000 --- a/juicebox_asm/prelude/struct.Imm16.html +++ /dev/null @@ -1,12 +0,0 @@ -<!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="Type representing a 16 bit immediate."><title>Imm16 in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Imm16</a></h2><div class="sidebar-elems"><section><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm">Add<MemOp, Imm16></a></li><li><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm">Cmp<MemOp, Imm16></a></li><li><a href="#impl-From%3Ci16%3E-for-Imm16">From<i16></a></li><li><a href="#impl-From%3Ci8%3E-for-Imm16">From<i8></a></li><li><a href="#impl-From%3Cu16%3E-for-Imm16">From<u16></a></li><li><a href="#impl-From%3Cu8%3E-for-Imm16">From<u8></a></li><li><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm">Mov<MemOp, Imm16></a></li><li><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm">Mov<Reg16, Imm16></a></li><li><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm">Test<MemOp, Imm16></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Imm16">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Imm16">Send</a></li><li><a href="#impl-Sync-for-Imm16">Sync</a></li><li><a href="#impl-Unpin-for-Imm16">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Imm16">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Imm16">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Imm16">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Imm16">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Imm16">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Imm16">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Imm16">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Imm16">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="struct" href="#">Imm16</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/juicebox_asm/imm.rs.html#39-42">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Imm16(/* private fields */);</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Type representing a 16 bit immediate.</p> -</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#21-25">source</a><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#22-24">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/cmp.rs.html#3-7">source</a><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Cmp.html" title="trait juicebox_asm::prelude::Cmp">Cmp</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/cmp.rs.html#4-6">source</a><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Cmp.html#tymethod.cmp" class="fn">cmp</a>(&mut self, op1: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a compare call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci16%3E-for-Imm16" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#impl-From%3Ci16%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci8%3E-for-Imm16" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#impl-From%3Ci8%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu16%3E-for-Imm16" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#impl-From%3Cu16%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu8%3E-for-Imm16" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#impl-From%3Cu8%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#109-113">source</a><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#110-112">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#95-99">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#96-98">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#15-19">source</a><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#16-18">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="trait.Test.html#tymethod.test">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Imm16" class="impl"><a href="#impl-RefUnwindSafe-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section><section id="impl-Send-for-Imm16" class="impl"><a href="#impl-Send-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section><section id="impl-Sync-for-Imm16" class="impl"><a href="#impl-Sync-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section><section id="impl-Unpin-for-Imm16" class="impl"><a href="#impl-Unpin-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section><section id="impl-UnwindSafe-for-Imm16" class="impl"><a href="#impl-UnwindSafe-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Imm16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Imm16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where - T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Imm16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Imm16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Imm16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-Imm16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#706">source</a><a href="#impl-Into%3CU%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#715">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p> -<p>That is, this conversion is whatever the implementation of -<code><a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-Imm16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#762">source</a><a href="#impl-TryFrom%3CU%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#769">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-Imm16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#747">source</a><a href="#impl-TryInto%3CU%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#754">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/struct.Imm32.html b/juicebox_asm/prelude/struct.Imm32.html deleted file mode 100644 index 42ec8c2..0000000 --- a/juicebox_asm/prelude/struct.Imm32.html +++ /dev/null @@ -1,12 +0,0 @@ -<!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="Type representing a 32 bit immediate."><title>Imm32 in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Imm32</a></h2><div class="sidebar-elems"><section><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-From%3Ci16%3E-for-Imm32">From<i16></a></li><li><a href="#impl-From%3Ci32%3E-for-Imm32">From<i32></a></li><li><a href="#impl-From%3Ci8%3E-for-Imm32">From<i8></a></li><li><a href="#impl-From%3Cu16%3E-for-Imm32">From<u16></a></li><li><a href="#impl-From%3Cu32%3E-for-Imm32">From<u32></a></li><li><a href="#impl-From%3Cu8%3E-for-Imm32">From<u8></a></li><li><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm">Mov<Reg32, Imm32></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Imm32">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Imm32">Send</a></li><li><a href="#impl-Sync-for-Imm32">Sync</a></li><li><a href="#impl-Unpin-for-Imm32">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Imm32">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Imm32">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Imm32">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Imm32">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Imm32">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Imm32">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Imm32">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Imm32">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="struct" href="#">Imm32</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/juicebox_asm/imm.rs.html#43-46">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Imm32(/* private fields */);</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Type representing a 32 bit immediate.</p> -</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci16%3E-for-Imm32" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Ci16%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci32%3E-for-Imm32" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Ci32%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci8%3E-for-Imm32" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Ci8%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu16%3E-for-Imm32" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Cu16%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu32%3E-for-Imm32" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Cu32%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u32.html">u32</a>> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u32.html">u32</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu8%3E-for-Imm32" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Cu8%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#89-93">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#90-92">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Imm32" class="impl"><a href="#impl-RefUnwindSafe-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section><section id="impl-Send-for-Imm32" class="impl"><a href="#impl-Send-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section><section id="impl-Sync-for-Imm32" class="impl"><a href="#impl-Sync-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section><section id="impl-Unpin-for-Imm32" class="impl"><a href="#impl-Unpin-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section><section id="impl-UnwindSafe-for-Imm32" class="impl"><a href="#impl-UnwindSafe-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Imm32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Imm32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where - T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Imm32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Imm32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Imm32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-6" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from-6" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-Imm32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#706">source</a><a href="#impl-Into%3CU%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#715">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p> -<p>That is, this conversion is whatever the implementation of -<code><a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-Imm32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#762">source</a><a href="#impl-TryFrom%3CU%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#769">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-Imm32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#747">source</a><a href="#impl-TryInto%3CU%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#754">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/struct.Imm64.html b/juicebox_asm/prelude/struct.Imm64.html deleted file mode 100644 index 98f129a..0000000 --- a/juicebox_asm/prelude/struct.Imm64.html +++ /dev/null @@ -1,12 +0,0 @@ -<!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="Type representing a 64 bit immediate."><title>Imm64 in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Imm64</a></h2><div class="sidebar-elems"><section><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-From%3Ci16%3E-for-Imm64">From<i16></a></li><li><a href="#impl-From%3Ci32%3E-for-Imm64">From<i32></a></li><li><a href="#impl-From%3Ci64%3E-for-Imm64">From<i64></a></li><li><a href="#impl-From%3Ci8%3E-for-Imm64">From<i8></a></li><li><a href="#impl-From%3Cu16%3E-for-Imm64">From<u16></a></li><li><a href="#impl-From%3Cu32%3E-for-Imm64">From<u32></a></li><li><a href="#impl-From%3Cu64%3E-for-Imm64">From<u64></a></li><li><a href="#impl-From%3Cu8%3E-for-Imm64">From<u8></a></li><li><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm">Mov<Reg64, Imm64></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Imm64">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Imm64">Send</a></li><li><a href="#impl-Sync-for-Imm64">Sync</a></li><li><a href="#impl-Unpin-for-Imm64">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Imm64">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Imm64">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Imm64">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Imm64">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Imm64">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Imm64">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Imm64">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Imm64">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="struct" href="#">Imm64</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/juicebox_asm/imm.rs.html#47-50">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Imm64(/* private fields */);</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Type representing a 64 bit immediate.</p> -</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci16%3E-for-Imm64" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Ci16%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci32%3E-for-Imm64" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Ci32%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-7" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-7" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci64%3E-for-Imm64" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Ci64%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i64.html">i64</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i64.html">i64</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci8%3E-for-Imm64" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Ci8%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu16%3E-for-Imm64" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cu16%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu32%3E-for-Imm64" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cu32%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u32.html">u32</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u32.html">u32</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu64%3E-for-Imm64" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cu64%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u64.html">u64</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-6" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-6" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u64.html">u64</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu8%3E-for-Imm64" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cu8%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#83-87">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#84-86">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Imm64" class="impl"><a href="#impl-RefUnwindSafe-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section><section id="impl-Send-for-Imm64" class="impl"><a href="#impl-Send-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section><section id="impl-Sync-for-Imm64" class="impl"><a href="#impl-Sync-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section><section id="impl-Unpin-for-Imm64" class="impl"><a href="#impl-Unpin-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section><section id="impl-UnwindSafe-for-Imm64" class="impl"><a href="#impl-UnwindSafe-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where - T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-8" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from-8" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#706">source</a><a href="#impl-Into%3CU%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#715">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p> -<p>That is, this conversion is whatever the implementation of -<code><a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#762">source</a><a href="#impl-TryFrom%3CU%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#769">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#747">source</a><a href="#impl-TryInto%3CU%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#754">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/struct.Imm8.html b/juicebox_asm/prelude/struct.Imm8.html deleted file mode 100644 index 974183b..0000000 --- a/juicebox_asm/prelude/struct.Imm8.html +++ /dev/null @@ -1,12 +0,0 @@ -<!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="Type representing an 8 bit immediate."><title>Imm8 in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Imm8</a></h2><div class="sidebar-elems"><section><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-From%3Ci8%3E-for-Imm8">From<i8></a></li><li><a href="#impl-From%3Cu8%3E-for-Imm8">From<u8></a></li><li><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm">Mov<Reg8, Imm8></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Imm8">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Imm8">Send</a></li><li><a href="#impl-Sync-for-Imm8">Sync</a></li><li><a href="#impl-Unpin-for-Imm8">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Imm8">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Imm8">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Imm8">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Imm8">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Imm8">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Imm8">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Imm8">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Imm8">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="struct" href="#">Imm8</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/juicebox_asm/imm.rs.html#35-38">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Imm8(/* private fields */);</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Type representing an 8 bit immediate.</p> -</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci8%3E-for-Imm8" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#35-38">source</a><a href="#impl-From%3Ci8%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#35-38">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu8%3E-for-Imm8" class="impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#35-38">source</a><a href="#impl-From%3Cu8%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/imm.rs.html#35-38">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#101-105">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#102-104">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, op2: <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Imm8" class="impl"><a href="#impl-RefUnwindSafe-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section><section id="impl-Send-for-Imm8" class="impl"><a href="#impl-Send-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section><section id="impl-Sync-for-Imm8" class="impl"><a href="#impl-Sync-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section><section id="impl-Unpin-for-Imm8" class="impl"><a href="#impl-Unpin-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section><section id="impl-UnwindSafe-for-Imm8" class="impl"><a href="#impl-UnwindSafe-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Imm8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Imm8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where - T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Imm8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Imm8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Imm8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-Imm8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#706">source</a><a href="#impl-Into%3CU%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#715">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p> -<p>That is, this conversion is whatever the implementation of -<code><a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-Imm8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#762">source</a><a href="#impl-TryFrom%3CU%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#769">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-Imm8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#747">source</a><a href="#impl-TryInto%3CU%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#754">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/struct.Label.html b/juicebox_asm/prelude/struct.Label.html deleted file mode 100644 index f54ec7b..0000000 --- a/juicebox_asm/prelude/struct.Label.html +++ /dev/null @@ -1,26 +0,0 @@ -<!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="A label which is used as target for jump instructions."><title>Label in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Label</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.new">new</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Drop-for-Label">Drop</a></li><li><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm">Jmp<&mut Label></a></li><li><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm">Jnz<&mut Label></a></li><li><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm">Jz<&mut Label></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Label">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Label">Send</a></li><li><a href="#impl-Sync-for-Label">Sync</a></li><li><a href="#impl-Unpin-for-Label">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Label">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Label">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Label">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Label">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Label">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Label">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Label">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Label">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="struct" href="#">Label</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/juicebox_asm/label.rs.html#24-30">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Label { /* private fields */ }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A label which is used as target for jump instructions.</p> - -<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>juicebox_asm::prelude::<span class="kw-2">*</span>; - -<span class="kw">let </span><span class="kw-2">mut </span>lbl = Label::new(); -<span class="kw">let </span><span class="kw-2">mut </span>asm = Asm::new(); - -<span class="comment">// Skip the mov instruction. -</span>asm.jmp(<span class="kw-2">&mut </span>lbl); -asm.mov(Reg64::rax, Reg64::rax); -asm.bind(<span class="kw-2">&mut </span>lbl);</code></pre></div> -<h2 id="panics"><a href="#panics">Panics</a></h2> -<p>Panics if the label is dropped while not yet bound, or having unresolved relocations. -This is mainly a safety-guard to detect wrong usage.</p> -</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Label" class="impl"><a class="src rightside" href="../../src/juicebox_asm/label.rs.html#32-73">source</a><a href="#impl-Label" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../../src/juicebox_asm/label.rs.html#34-39">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>() -> <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h4></section></summary><div class="docblock"><p>Create a new <code>unbound</code> <a href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>.</p> -</div></details></div></details></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Drop-for-Label" class="impl"><a class="src rightside" href="../../src/juicebox_asm/label.rs.html#75-82">source</a><a href="#impl-Drop-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html" title="trait core::ops::drop::Drop">Drop</a> for <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drop" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/label.rs.html#76-81">source</a><a href="#method.drop" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html#tymethod.drop" class="fn">drop</a>(&mut self)</h4></section></summary><div class='docblock'>Executes the destructor for this type. <a href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html#tymethod.drop">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jmp%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jmp.rs.html#3-7">source</a><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Jmp.html" title="trait juicebox_asm::prelude::Jmp">Jmp</a><&mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jmp" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jmp.rs.html#4-6">source</a><a href="#method.jmp" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Jmp.html#tymethod.jmp" class="fn">jmp</a>(&mut self, op1: &mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit an unconditional jump instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jnz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jnz.rs.html#3-7">source</a><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Jnz.html" title="trait juicebox_asm::prelude::Jnz">Jnz</a><&mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jnz" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jnz.rs.html#4-6">source</a><a href="#method.jnz" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Jnz.html#tymethod.jnz" class="fn">jnz</a>(&mut self, op1: &mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jz.rs.html#3-7">source</a><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Jz.html" title="trait juicebox_asm::prelude::Jz">Jz</a><&mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jz" class="method trait-impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jz.rs.html#4-6">source</a><a href="#method.jz" class="anchor">§</a><h4 class="code-header">fn <a href="trait.Jz.html#tymethod.jz" class="fn">jz</a>(&mut self, op1: &mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if zero instruction (<code>ZF = 1</code>).</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Label" class="impl"><a href="#impl-RefUnwindSafe-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section><section id="impl-Send-for-Label" class="impl"><a href="#impl-Send-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section><section id="impl-Sync-for-Label" class="impl"><a href="#impl-Sync-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section><section id="impl-Unpin-for-Label" class="impl"><a href="#impl-Unpin-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section><section id="impl-UnwindSafe-for-Label" class="impl"><a href="#impl-UnwindSafe-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Label" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Label" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where - T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Label" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Label" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Label" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Label" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Label" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Label" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-Label" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#706">source</a><a href="#impl-Into%3CU%3E-for-Label" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#715">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p> -<p>That is, this conversion is whatever the implementation of -<code><a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p> -</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-Label" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#762">source</a><a href="#impl-TryFrom%3CU%3E-for-Label" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#769">source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-Label" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#747">source</a><a href="#impl-TryInto%3CU%3E-for-Label" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<span class="where fmt-newline">where - U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#754">source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.74.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/trait.Add.html b/juicebox_asm/prelude/trait.Add.html deleted file mode 100644 index 0a0d048..0000000 --- a/juicebox_asm/prelude/trait.Add.html +++ /dev/null @@ -1,5 +0,0 @@ -<!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 `Add` trait in crate `juicebox_asm`."><title>Add in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Add</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.add">add</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="trait" href="#">Add</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/juicebox_asm/insn.rs.html#15-18">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Add<T, U> { - // Required method - fn <a href="#tymethod.add" class="fn">add</a>(&mut self, op1: T, op2: U); -}</code></pre><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.add" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#17">source</a><h4 class="code-header">fn <a href="#tymethod.add" class="fn">add</a>(&mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit an add instruction.</p> -</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#15-19">source</a><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#21-25">source</a><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Add%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#9-13">source</a><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Add%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/add.rs.html#3-7">source</a><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Add.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/trait.Call.html b/juicebox_asm/prelude/trait.Call.html deleted file mode 100644 index 3cf1cfc..0000000 --- a/juicebox_asm/prelude/trait.Call.html +++ /dev/null @@ -1,5 +0,0 @@ -<!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 `Call` trait in crate `juicebox_asm`."><title>Call in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Call</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.call">call</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="trait" href="#">Call</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/juicebox_asm/insn.rs.html#20-23">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Call<T> { - // Required method - fn <a href="#tymethod.call" class="fn">call</a>(&mut self, op1: T); -}</code></pre><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.call" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#22">source</a><h4 class="code-header">fn <a href="#tymethod.call" class="fn">call</a>(&mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a call instruction.</p> -</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Call%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/call.rs.html#3-7">source</a><a href="#impl-Call%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Call.html" title="trait juicebox_asm::prelude::Call">Call</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Call.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/trait.Cmp.html b/juicebox_asm/prelude/trait.Cmp.html deleted file mode 100644 index 872e354..0000000 --- a/juicebox_asm/prelude/trait.Cmp.html +++ /dev/null @@ -1,5 +0,0 @@ -<!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 `Cmp` trait in crate `juicebox_asm`."><title>Cmp in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Cmp</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.cmp">cmp</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="trait" href="#">Cmp</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/juicebox_asm/insn.rs.html#25-28">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Cmp<T, U> { - // Required method - fn <a href="#tymethod.cmp" class="fn">cmp</a>(&mut self, op1: T, op2: U); -}</code></pre><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.cmp" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#27">source</a><h4 class="code-header">fn <a href="#tymethod.cmp" class="fn">cmp</a>(&mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit a compare call instruction.</p> -</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/cmp.rs.html#3-7">source</a><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Cmp.html" title="trait juicebox_asm::prelude::Cmp">Cmp</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Cmp.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/trait.Dec.html b/juicebox_asm/prelude/trait.Dec.html deleted file mode 100644 index 893b625..0000000 --- a/juicebox_asm/prelude/trait.Dec.html +++ /dev/null @@ -1,5 +0,0 @@ -<!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 `Dec` trait in crate `juicebox_asm`."><title>Dec in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Dec</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.dec">dec</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="trait" href="#">Dec</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/juicebox_asm/insn.rs.html#30-33">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Dec<T> { - // Required method - fn <a href="#tymethod.dec" class="fn">dec</a>(&mut self, op1: T); -}</code></pre><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.dec" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#32">source</a><h4 class="code-header">fn <a href="#tymethod.dec" class="fn">dec</a>(&mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a decrement instruction.</p> -</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Dec%3CReg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/dec.rs.html#9-13">source</a><a href="#impl-Dec%3CReg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Dec.html" title="trait juicebox_asm::prelude::Dec">Dec</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Dec%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/dec.rs.html#3-7">source</a><a href="#impl-Dec%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Dec.html" title="trait juicebox_asm::prelude::Dec">Dec</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Dec.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/trait.Jmp.html b/juicebox_asm/prelude/trait.Jmp.html deleted file mode 100644 index c47aa81..0000000 --- a/juicebox_asm/prelude/trait.Jmp.html +++ /dev/null @@ -1,5 +0,0 @@ -<!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 `Jmp` trait in crate `juicebox_asm`."><title>Jmp in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Jmp</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.jmp">jmp</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="trait" href="#">Jmp</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/juicebox_asm/insn.rs.html#35-38">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Jmp<T> { - // Required method - fn <a href="#tymethod.jmp" class="fn">jmp</a>(&mut self, op1: T); -}</code></pre><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.jmp" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#37">source</a><h4 class="code-header">fn <a href="#tymethod.jmp" class="fn">jmp</a>(&mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit an unconditional jump instruction.</p> -</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Jmp%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jmp.rs.html#3-7">source</a><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Jmp.html" title="trait juicebox_asm::prelude::Jmp">Jmp</a><&mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Jmp.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/trait.Jnz.html b/juicebox_asm/prelude/trait.Jnz.html deleted file mode 100644 index 980bc93..0000000 --- a/juicebox_asm/prelude/trait.Jnz.html +++ /dev/null @@ -1,5 +0,0 @@ -<!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 `Jnz` trait in crate `juicebox_asm`."><title>Jnz in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Jnz</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.jnz">jnz</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="trait" href="#">Jnz</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/juicebox_asm/insn.rs.html#40-43">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Jnz<T> { - // Required method - fn <a href="#tymethod.jnz" class="fn">jnz</a>(&mut self, op1: T); -}</code></pre><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.jnz" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#42">source</a><h4 class="code-header">fn <a href="#tymethod.jnz" class="fn">jnz</a>(&mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).</p> -</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Jnz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jnz.rs.html#3-7">source</a><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Jnz.html" title="trait juicebox_asm::prelude::Jnz">Jnz</a><&mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Jnz.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/trait.Jz.html b/juicebox_asm/prelude/trait.Jz.html deleted file mode 100644 index b19e629..0000000 --- a/juicebox_asm/prelude/trait.Jz.html +++ /dev/null @@ -1,5 +0,0 @@ -<!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 `Jz` trait in crate `juicebox_asm`."><title>Jz in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Jz</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.jz">jz</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="trait" href="#">Jz</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/juicebox_asm/insn.rs.html#45-48">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Jz<T> { - // Required method - fn <a href="#tymethod.jz" class="fn">jz</a>(&mut self, op1: T); -}</code></pre><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.jz" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#47">source</a><h4 class="code-header">fn <a href="#tymethod.jz" class="fn">jz</a>(&mut self, op1: T)</h4></section></summary><div class="docblock"><p>Emit a conditional jump if zero instruction (<code>ZF = 1</code>).</p> -</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Jz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/jz.rs.html#3-7">source</a><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Jz.html" title="trait juicebox_asm::prelude::Jz">Jz</a><&mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Jz.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/trait.Mov.html b/juicebox_asm/prelude/trait.Mov.html deleted file mode 100644 index 7572ad6..0000000 --- a/juicebox_asm/prelude/trait.Mov.html +++ /dev/null @@ -1,5 +0,0 @@ -<!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 `Mov` trait in crate `juicebox_asm`."><title>Mov in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Mov</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.mov">mov</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="trait" href="#">Mov</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/juicebox_asm/insn.rs.html#50-53">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Mov<T, U> { - // Required method - fn <a href="#tymethod.mov" class="fn">mov</a>(&mut self, op1: T, op2: U); -}</code></pre><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.mov" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#52">source</a><h4 class="code-header">fn <a href="#tymethod.mov" class="fn">mov</a>(&mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit an move instruction.</p> -</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#49-53">source</a><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#43-47">source</a><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#37-41">source</a><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#31-35">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#109-113">source</a><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#75-79">source</a><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#23-27">source</a><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#101-105">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#69-73">source</a><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#17-21">source</a><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#95-99">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#63-67">source</a><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#11-15">source</a><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#89-93">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#57-61">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#5-9">source</a><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/mov.rs.html#83-87">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Mov.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/prelude/trait.Test.html b/juicebox_asm/prelude/trait.Test.html deleted file mode 100644 index 9ea9d85..0000000 --- a/juicebox_asm/prelude/trait.Test.html +++ /dev/null @@ -1,7 +0,0 @@ -<!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 `Test` trait in crate `juicebox_asm`."><title>Test in juicebox_asm::prelude - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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 trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Test</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.test">test</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In juicebox_asm::prelude</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">juicebox_asm</a>::<wbr><a href="index.html">prelude</a>::<wbr><a class="trait" href="#">Test</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/juicebox_asm/insn.rs.html#55-61">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub trait Test<T, U> { - // Required method - fn <a href="#tymethod.test" class="fn">test</a>(&mut self, op1: T, op2: U); -}</code></pre><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.test" class="method"><a class="src rightside" href="../../src/juicebox_asm/insn.rs.html#60">source</a><h4 class="code-header">fn <a href="#tymethod.test" class="fn">test</a>(&mut self, op1: T, op2: U)</h4></section></summary><div class="docblock"><p>Emit a logical compare instruction.</p> -<p>Computes the bit-wise logical AND of first operand and the second operand and sets the -<code>SF</code>, <code>ZF</code>, and <code>PF</code> status flags, the result is discarded.</p> -</div></details></div><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#15-19">source</a><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="../enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Test%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#9-13">source</a><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Test%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../../src/juicebox_asm/insn/test.rs.html#3-7">source</a><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="../struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><script src="../../implementors/juicebox_asm/insn/trait.Test.js" async></script></section></div></main></body></html>
\ No newline at end of file diff --git a/juicebox_asm/reg/enum.Reg16.html b/juicebox_asm/reg/enum.Reg16.html index d506c7f..1e209ce 100644 --- a/juicebox_asm/reg/enum.Reg16.html +++ b/juicebox_asm/reg/enum.Reg16.html @@ -1,11 +1,11 @@ <!DOCTYPE html> <html lang="en"> <head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/enum.Reg16.html"> + <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/enum.Reg16.html"> <title>Redirection</title> </head> <body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/enum.Reg16.html">../../juicebox_asm/prelude/enum.Reg16.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/enum.Reg16.html" + location.search + location.hash);</script> + <p>Redirecting to <a href="../../juicebox_asm/enum.Reg16.html">../../juicebox_asm/enum.Reg16.html</a>...</p> + <script>location.replace("../../juicebox_asm/enum.Reg16.html" + location.search + location.hash);</script> </body> </html>
\ No newline at end of file diff --git a/juicebox_asm/reg/enum.Reg32.html b/juicebox_asm/reg/enum.Reg32.html index 79cfaf5..7488b07 100644 --- a/juicebox_asm/reg/enum.Reg32.html +++ b/juicebox_asm/reg/enum.Reg32.html @@ -1,11 +1,11 @@ <!DOCTYPE html> <html lang="en"> <head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/enum.Reg32.html"> + <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/enum.Reg32.html"> <title>Redirection</title> </head> <body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/enum.Reg32.html">../../juicebox_asm/prelude/enum.Reg32.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/enum.Reg32.html" + location.search + location.hash);</script> + <p>Redirecting to <a href="../../juicebox_asm/enum.Reg32.html">../../juicebox_asm/enum.Reg32.html</a>...</p> + <script>location.replace("../../juicebox_asm/enum.Reg32.html" + location.search + location.hash);</script> </body> </html>
\ No newline at end of file diff --git a/juicebox_asm/reg/enum.Reg64.html b/juicebox_asm/reg/enum.Reg64.html index 0fff5d7..c843bd2 100644 --- a/juicebox_asm/reg/enum.Reg64.html +++ b/juicebox_asm/reg/enum.Reg64.html @@ -1,11 +1,11 @@ <!DOCTYPE html> <html lang="en"> <head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/enum.Reg64.html"> + <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/enum.Reg64.html"> <title>Redirection</title> </head> <body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/enum.Reg64.html">../../juicebox_asm/prelude/enum.Reg64.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/enum.Reg64.html" + location.search + location.hash);</script> + <p>Redirecting to <a href="../../juicebox_asm/enum.Reg64.html">../../juicebox_asm/enum.Reg64.html</a>...</p> + <script>location.replace("../../juicebox_asm/enum.Reg64.html" + location.search + location.hash);</script> </body> </html>
\ No newline at end of file diff --git a/juicebox_asm/reg/enum.Reg8.html b/juicebox_asm/reg/enum.Reg8.html index 339c6e5..73f4abd 100644 --- a/juicebox_asm/reg/enum.Reg8.html +++ b/juicebox_asm/reg/enum.Reg8.html @@ -1,11 +1,11 @@ <!DOCTYPE html> <html lang="en"> <head> - <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/prelude/enum.Reg8.html"> + <meta http-equiv="refresh" content="0;URL=../../juicebox_asm/enum.Reg8.html"> <title>Redirection</title> </head> <body> - <p>Redirecting to <a href="../../juicebox_asm/prelude/enum.Reg8.html">../../juicebox_asm/prelude/enum.Reg8.html</a>...</p> - <script>location.replace("../../juicebox_asm/prelude/enum.Reg8.html" + location.search + location.hash);</script> + <p>Redirecting to <a href="../../juicebox_asm/enum.Reg8.html">../../juicebox_asm/enum.Reg8.html</a>...</p> + <script>location.replace("../../juicebox_asm/enum.Reg8.html" + location.search + location.hash);</script> </body> </html>
\ No newline at end of file diff --git a/juicebox_asm/sidebar-items.js b/juicebox_asm/sidebar-items.js index 199a7d9..519ac50 100644 --- a/juicebox_asm/sidebar-items.js +++ b/juicebox_asm/sidebar-items.js @@ -1 +1 @@ -window.SIDEBAR_ITEMS = {"enum":["MemOp","Reg16","Reg32","Reg64","Reg8"],"mod":["prelude"],"struct":["Asm","Imm16","Imm32","Imm64","Imm8","Label","Runtime"]};
\ No newline at end of file +window.SIDEBAR_ITEMS = {"enum":["MemOp","Reg16","Reg32","Reg64","Reg8"],"mod":["insn"],"struct":["Asm","Imm16","Imm32","Imm64","Imm8","Label","Runtime"]};
\ No newline at end of file diff --git a/juicebox_asm/struct.Asm.html b/juicebox_asm/struct.Asm.html index 8ca2b50..e4eaf87 100644 --- a/juicebox_asm/struct.Asm.html +++ b/juicebox_asm/struct.Asm.html @@ -1,9 +1,10 @@ -<!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="`x64` jit assembler."><title>Asm in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Asm</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.bind">bind</a></li><li><a href="#method.into_code">into_code</a></li><li><a href="#method.new">new</a></li><li><a href="#method.nop">nop</a></li><li><a href="#method.resolve">resolve</a></li><li><a href="#method.ret">ret</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm">Add<MemOp, Imm16></a></li><li><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm">Add<MemOp, Reg16></a></li><li><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm">Add<Reg32, Reg32></a></li><li><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm">Add<Reg64, Reg64></a></li><li><a href="#impl-Call%3CReg64%3E-for-Asm">Call<Reg64></a></li><li><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm">Cmp<MemOp, Imm16></a></li><li><a href="#impl-Dec%3CReg32%3E-for-Asm">Dec<Reg32></a></li><li><a href="#impl-Dec%3CReg64%3E-for-Asm">Dec<Reg64></a></li><li><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm">Jmp<&mut Label></a></li><li><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm">Jnz<&mut Label></a></li><li><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm">Jz<&mut Label></a></li><li><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm">Mov<MemOp, Imm16></a></li><li><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm">Mov<MemOp, Reg16></a></li><li><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm">Mov<MemOp, Reg32></a></li><li><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm">Mov<MemOp, Reg64></a></li><li><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm">Mov<MemOp, Reg8></a></li><li><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm">Mov<Reg16, Imm16></a></li><li><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm">Mov<Reg16, MemOp></a></li><li><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm">Mov<Reg16, Reg16></a></li><li><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm">Mov<Reg32, Imm32></a></li><li><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm">Mov<Reg32, MemOp></a></li><li><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm">Mov<Reg32, Reg32></a></li><li><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm">Mov<Reg64, Imm64></a></li><li><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm">Mov<Reg64, MemOp></a></li><li><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm">Mov<Reg64, Reg64></a></li><li><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm">Mov<Reg8, Imm8></a></li><li><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm">Mov<Reg8, MemOp></a></li><li><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm">Mov<Reg8, Reg8></a></li><li><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm">Test<MemOp, Imm16></a></li><li><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm">Test<Reg32, Reg32></a></li><li><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm">Test<Reg64, Reg64></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Asm">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Asm">Send</a></li><li><a href="#impl-Sync-for-Asm">Sync</a></li><li><a href="#impl-Unpin-for-Asm">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Asm">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Asm">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Asm">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Asm">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Asm">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Asm">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Asm">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Asm">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">juicebox_asm</a>::<wbr><a class="struct" href="#">Asm</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/juicebox_asm/lib.rs.html#125-127">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Asm { /* private fields */ }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p><code>x64</code> jit assembler.</p> -</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/nop.rs.html#3-7">source</a><a href="#impl-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><section id="method.nop" class="method"><a class="src rightside" href="../src/juicebox_asm/insn/nop.rs.html#4-6">source</a><h4 class="code-header">pub fn <a href="#method.nop" class="fn">nop</a>(&mut self)</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Asm-1" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/ret.rs.html#3-7">source</a><a href="#impl-Asm-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><section id="method.ret" class="method"><a class="src rightside" href="../src/juicebox_asm/insn/ret.rs.html#4-6">source</a><h4 class="code-header">pub fn <a href="#method.ret" class="fn">ret</a>(&mut self)</h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Asm-2" class="impl"><a class="src rightside" href="../src/juicebox_asm/lib.rs.html#129-372">source</a><a href="#impl-Asm-2" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/juicebox_asm/lib.rs.html#131-135">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>() -> <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h4></section></summary><div class="docblock"><p>Create a new <code>x64</code> jit assembler.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.into_code" class="method"><a class="src rightside" href="../src/juicebox_asm/lib.rs.html#138-140">source</a><h4 class="code-header">pub fn <a href="#method.into_code" class="fn">into_code</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>></h4></section></summary><div class="docblock"><p>Consume the assembler and get the emitted code.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.bind" class="method"><a class="src rightside" href="../src/juicebox_asm/lib.rs.html#168-174">source</a><h4 class="code-header">pub fn <a href="#method.bind" class="fn">bind</a>(&mut self, label: &mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>)</h4></section></summary><div class="docblock"><p>Bind the <a href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a> to the current location.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.resolve" class="method"><a class="src rightside" href="../src/juicebox_asm/lib.rs.html#177-193">source</a><h4 class="code-header">pub fn <a href="#method.resolve" class="fn">resolve</a>(&mut self, label: &mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>)</h4></section></summary><div class="docblock"><p>If the <a href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a> is bound, patch any pending relocation.</p> -</div></details></div></details></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#21-25">source</a><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#22-24">source</a><a href="#method.add-3" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#15-19">source</a><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#16-18">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#9-13">source</a><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#10-12">source</a><a href="#method.add-2" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#3-7">source</a><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#4-6">source</a><a href="#method.add-1" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Call%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#3-7">source</a><a href="#impl-Call%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Call.html" title="trait juicebox_asm::prelude::Call">Call</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.call" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#4-6">source</a><a href="#method.call" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Call.html#tymethod.call" class="fn">call</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#3-7">source</a><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Cmp.html" title="trait juicebox_asm::prelude::Cmp">Cmp</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#4-6">source</a><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Cmp.html#tymethod.cmp" class="fn">cmp</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a compare call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#9-13">source</a><a href="#impl-Dec%3CReg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Dec.html" title="trait juicebox_asm::prelude::Dec">Dec</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#10-12">source</a><a href="#method.dec-1" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#3-7">source</a><a href="#impl-Dec%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Dec.html" title="trait juicebox_asm::prelude::Dec">Dec</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#4-6">source</a><a href="#method.dec" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jmp%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jmp.rs.html#3-7">source</a><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Jmp.html" title="trait juicebox_asm::prelude::Jmp">Jmp</a><&mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jmp.rs.html#4-6">source</a><a href="#method.jmp" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Jmp.html#tymethod.jmp" class="fn">jmp</a>(&mut self, op1: &mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit an unconditional jump instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jnz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jnz.rs.html#3-7">source</a><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Jnz.html" title="trait juicebox_asm::prelude::Jnz">Jnz</a><&mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jnz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jnz.rs.html#4-6">source</a><a href="#method.jnz" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Jnz.html#tymethod.jnz" class="fn">jnz</a>(&mut self, op1: &mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jz.rs.html#3-7">source</a><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Jz.html" title="trait juicebox_asm::prelude::Jz">Jz</a><&mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jz.rs.html#4-6">source</a><a href="#method.jz" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Jz.html#tymethod.jz" class="fn">jz</a>(&mut self, op1: &mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if zero instruction (<code>ZF = 1</code>).</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#109-113">source</a><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#110-112">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#43-47">source</a><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-10" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#44-46">source</a><a href="#method.mov-10" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#37-41">source</a><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-6" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#38-40">source</a><a href="#method.mov-6" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#31-35">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-8" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#32-34">source</a><a href="#method.mov-8" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#49-53">source</a><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-9" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#50-52">source</a><a href="#method.mov-9" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#95-99">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#96-98">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#69-73">source</a><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#70-72">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#17-21">source</a><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-5" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#18-20">source</a><a href="#method.mov-5" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, op2: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#89-93">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-14" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#90-92">source</a><a href="#method.mov-14" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#63-67">source</a><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-16" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#64-66">source</a><a href="#method.mov-16" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#11-15">source</a><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-7" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#12-14">source</a><a href="#method.mov-7" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#83-87">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-12" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#84-86">source</a><a href="#method.mov-12" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#57-61">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-15" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#58-60">source</a><a href="#method.mov-15" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#5-9">source</a><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-4" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#6-8">source</a><a href="#method.mov-4" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#101-105">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-11" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#102-104">source</a><a href="#method.mov-11" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, op2: <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#75-79">source</a><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-13" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#76-78">source</a><a href="#method.mov-13" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#23-27">source</a><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#24-26">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, op2: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#15-19">source</a><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#16-18">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="prelude/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#9-13">source</a><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#10-12">source</a><a href="#method.test-1" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="prelude/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#3-7">source</a><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#4-6">source</a><a href="#method.test-2" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="prelude/trait.Test.html#tymethod.test">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Asm" class="impl"><a href="#impl-RefUnwindSafe-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Send-for-Asm" class="impl"><a href="#impl-Send-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Sync-for-Asm" class="impl"><a href="#impl-Sync-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Unpin-for-Asm" class="impl"><a href="#impl-Unpin-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-UnwindSafe-for-Asm" class="impl"><a href="#impl-UnwindSafe-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Asm" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Asm" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +<!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="`x64` jit assembler."><title>Asm in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Asm</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.bind">bind</a></li><li><a href="#method.into_code">into_code</a></li><li><a href="#method.new">new</a></li><li><a href="#method.nop">nop</a></li><li><a href="#method.ret">ret</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm">Add<MemOp, Imm16></a></li><li><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm">Add<MemOp, Reg16></a></li><li><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm">Add<Reg32, Reg32></a></li><li><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm">Add<Reg64, Reg64></a></li><li><a href="#impl-Call%3CReg64%3E-for-Asm">Call<Reg64></a></li><li><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm">Cmp<MemOp, Imm16></a></li><li><a href="#impl-Dec%3CReg32%3E-for-Asm">Dec<Reg32></a></li><li><a href="#impl-Dec%3CReg64%3E-for-Asm">Dec<Reg64></a></li><li><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm">Jmp<&mut Label></a></li><li><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm">Jnz<&mut Label></a></li><li><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm">Jz<&mut Label></a></li><li><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm">Mov<MemOp, Imm16></a></li><li><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm">Mov<MemOp, Reg16></a></li><li><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm">Mov<MemOp, Reg32></a></li><li><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm">Mov<MemOp, Reg64></a></li><li><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm">Mov<MemOp, Reg8></a></li><li><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm">Mov<Reg16, Imm16></a></li><li><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm">Mov<Reg16, MemOp></a></li><li><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm">Mov<Reg16, Reg16></a></li><li><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm">Mov<Reg32, Imm32></a></li><li><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm">Mov<Reg32, MemOp></a></li><li><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm">Mov<Reg32, Reg32></a></li><li><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm">Mov<Reg64, Imm64></a></li><li><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm">Mov<Reg64, MemOp></a></li><li><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm">Mov<Reg64, Reg64></a></li><li><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm">Mov<Reg8, Imm8></a></li><li><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm">Mov<Reg8, MemOp></a></li><li><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm">Mov<Reg8, Reg8></a></li><li><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm">Test<MemOp, Imm16></a></li><li><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm">Test<Reg32, Reg32></a></li><li><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm">Test<Reg64, Reg64></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Asm">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Asm">Send</a></li><li><a href="#impl-Sync-for-Asm">Sync</a></li><li><a href="#impl-Unpin-for-Asm">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Asm">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Asm">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Asm">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Asm">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Asm">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Asm">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Asm">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Asm">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">juicebox_asm</a>::<wbr><a class="struct" href="#">Asm</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/juicebox_asm/asm.rs.html#22-24">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Asm { /* private fields */ }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p><code>x64</code> jit assembler.</p> +</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/asm.rs.html#26-247">source</a><a href="#impl-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/juicebox_asm/asm.rs.html#28-32">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>() -> <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h4></section></summary><div class="docblock"><p>Create a new <code>x64</code> jit assembler.</p> +</div></details><details class="toggle method-toggle" open><summary><section id="method.into_code" class="method"><a class="src rightside" href="../src/juicebox_asm/asm.rs.html#35-37">source</a><h4 class="code-header">pub fn <a href="#method.into_code" class="fn">into_code</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>></h4></section></summary><div class="docblock"><p>Consume the assembler and get the emitted code.</p> +</div></details><details class="toggle method-toggle" open><summary><section id="method.bind" class="method"><a class="src rightside" href="../src/juicebox_asm/asm.rs.html#65-71">source</a><h4 class="code-header">pub fn <a href="#method.bind" class="fn">bind</a>(&mut self, label: &mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class="docblock"><p>Bind the <a href="struct.Label.html" title="struct juicebox_asm::Label">Label</a> to the current location.</p> +</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Asm-1" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/nop.rs.html#3-8">source</a><a href="#impl-Asm-1" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.nop" class="method"><a class="src rightside" href="../src/juicebox_asm/insn/nop.rs.html#5-7">source</a><h4 class="code-header">pub fn <a href="#method.nop" class="fn">nop</a>(&mut self)</h4></section></summary><div class="docblock"><p>Emit a <a href="https://www.felixcloutier.com/x86/nop"><code>nop</code></a> instruction.</p> +</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Asm-2" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/ret.rs.html#3-8">source</a><a href="#impl-Asm-2" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.ret" class="method"><a class="src rightside" href="../src/juicebox_asm/insn/ret.rs.html#5-7">source</a><h4 class="code-header">pub fn <a href="#method.ret" class="fn">ret</a>(&mut self)</h4></section></summary><div class="docblock"><p>Emit a <a href="https://www.felixcloutier.com/x86/ret"><code>ret</code></a> instruction.</p> +</div></details></div></details></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#22-26">source</a><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#23-25">source</a><a href="#method.add-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#16-20">source</a><a href="#impl-Add%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#17-19">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#10-14">source</a><a href="#impl-Add%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#11-13">source</a><a href="#method.add-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#4-8">source</a><a href="#impl-Add%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#5-7">source</a><a href="#method.add-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Call%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#4-8">source</a><a href="#impl-Call%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Call.html" title="trait juicebox_asm::insn::Call">Call</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.call" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/call.rs.html#5-7">source</a><a href="#method.call" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Call.html#tymethod.call" class="fn">call</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#4-8">source</a><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Cmp.html" title="trait juicebox_asm::insn::Cmp">Cmp</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#5-7">source</a><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Cmp.html#tymethod.cmp" class="fn">cmp</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a compare instruction. <a href="insn/trait.Cmp.html#tymethod.cmp">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#10-14">source</a><a href="#impl-Dec%3CReg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#11-13">source</a><a href="#method.dec-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Dec%3CReg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#4-8">source</a><a href="#impl-Dec%3CReg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Dec.html" title="trait juicebox_asm::insn::Dec">Dec</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.dec" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/dec.rs.html#5-7">source</a><a href="#method.dec" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Dec.html#tymethod.dec" class="fn">dec</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a decrement instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jmp%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jmp.rs.html#4-8">source</a><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Jmp.html" title="trait juicebox_asm::insn::Jmp">Jmp</a><&mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jmp.rs.html#5-7">source</a><a href="#method.jmp" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Jmp.html#tymethod.jmp" class="fn">jmp</a>(&mut self, op1: &mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit an unconditional jump instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jnz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jnz.rs.html#4-8">source</a><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Jnz.html" title="trait juicebox_asm::insn::Jnz">Jnz</a><&mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jnz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jnz.rs.html#5-7">source</a><a href="#method.jnz" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Jnz.html#tymethod.jnz" class="fn">jnz</a>(&mut self, op1: &mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jz.rs.html#4-8">source</a><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Jz.html" title="trait juicebox_asm::insn::Jz">Jz</a><&mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jz.rs.html#5-7">source</a><a href="#method.jz" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Jz.html#tymethod.jz" class="fn">jz</a>(&mut self, op1: &mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if zero instruction (<code>ZF = 1</code>).</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#110-114">source</a><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#111-113">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#44-48">source</a><a href="#impl-Mov%3CMemOp,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-10" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#45-47">source</a><a href="#method.mov-10" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#38-42">source</a><a href="#impl-Mov%3CMemOp,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-6" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#39-41">source</a><a href="#method.mov-6" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#32-36">source</a><a href="#impl-Mov%3CMemOp,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-8" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#33-35">source</a><a href="#method.mov-8" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#50-54">source</a><a href="#impl-Mov%3CMemOp,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-9" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#51-53">source</a><a href="#method.mov-9" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#96-100">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#97-99">source</a><a href="#method.mov-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#70-74">source</a><a href="#impl-Mov%3CReg16,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#71-73">source</a><a href="#method.mov-3" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#18-22">source</a><a href="#impl-Mov%3CReg16,+Reg16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-5" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#19-21">source</a><a href="#method.mov-5" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#90-94">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-14" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#91-93">source</a><a href="#method.mov-14" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#64-68">source</a><a href="#impl-Mov%3CReg32,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-16" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#65-67">source</a><a href="#method.mov-16" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#12-16">source</a><a href="#impl-Mov%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-7" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#13-15">source</a><a href="#method.mov-7" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#84-88">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-12" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#85-87">source</a><a href="#method.mov-12" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#58-62">source</a><a href="#impl-Mov%3CReg64,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-15" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#59-61">source</a><a href="#method.mov-15" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#6-10">source</a><a href="#impl-Mov%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-4" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#7-9">source</a><a href="#method.mov-4" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#102-106">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-11" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#103-105">source</a><a href="#method.mov-11" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#76-80">source</a><a href="#impl-Mov%3CReg8,+MemOp%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-13" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#77-79">source</a><a href="#method.mov-13" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#24-28">source</a><a href="#impl-Mov%3CReg8,+Reg8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#25-27">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#16-20">source</a><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#17-19">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg32,+Reg32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#10-14">source</a><a href="#impl-Test%3CReg32,+Reg32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#11-13">source</a><a href="#method.test-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CReg64,+Reg64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#4-8">source</a><a href="#impl-Test%3CReg64,+Reg64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#5-7">source</a><a href="#method.test-2" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Asm" class="impl"><a href="#impl-RefUnwindSafe-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Send-for-Asm" class="impl"><a href="#impl-Send-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Sync-for-Asm" class="impl"><a href="#impl-Sync-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-Unpin-for-Asm" class="impl"><a href="#impl-Unpin-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section><section id="impl-UnwindSafe-for-Asm" class="impl"><a href="#impl-UnwindSafe-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Asm" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Asm" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Asm" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Asm" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Asm" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/juicebox_asm/struct.Imm16.html b/juicebox_asm/struct.Imm16.html index 7e9bd5a..1216553 100644 --- a/juicebox_asm/struct.Imm16.html +++ b/juicebox_asm/struct.Imm16.html @@ -1,5 +1,5 @@ <!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="Type representing a 16 bit immediate."><title>Imm16 in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Imm16</a></h2><div class="sidebar-elems"><section><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm">Add<MemOp, Imm16></a></li><li><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm">Cmp<MemOp, Imm16></a></li><li><a href="#impl-From%3Ci16%3E-for-Imm16">From<i16></a></li><li><a href="#impl-From%3Ci8%3E-for-Imm16">From<i8></a></li><li><a href="#impl-From%3Cu16%3E-for-Imm16">From<u16></a></li><li><a href="#impl-From%3Cu8%3E-for-Imm16">From<u8></a></li><li><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm">Mov<MemOp, Imm16></a></li><li><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm">Mov<Reg16, Imm16></a></li><li><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm">Test<MemOp, Imm16></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Imm16">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Imm16">Send</a></li><li><a href="#impl-Sync-for-Imm16">Sync</a></li><li><a href="#impl-Unpin-for-Imm16">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Imm16">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Imm16">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Imm16">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Imm16">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Imm16">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Imm16">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Imm16">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Imm16">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">juicebox_asm</a>::<wbr><a class="struct" href="#">Imm16</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/juicebox_asm/imm.rs.html#39-42">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Imm16(/* private fields */);</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Type representing a 16 bit immediate.</p> -</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#21-25">source</a><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Add.html" title="trait juicebox_asm::prelude::Add">Add</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#22-24">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#3-7">source</a><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Cmp.html" title="trait juicebox_asm::prelude::Cmp">Cmp</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#4-6">source</a><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Cmp.html#tymethod.cmp" class="fn">cmp</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a compare call instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci16%3E-for-Imm16" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#impl-From%3Ci16%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>> for <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci8%3E-for-Imm16" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#impl-From%3Ci8%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>> for <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu16%3E-for-Imm16" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#impl-From%3Cu16%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>> for <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu8%3E-for-Imm16" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#impl-From%3Cu8%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>> for <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#109-113">source</a><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#110-112">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#95-99">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#96-98">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg16.html" title="enum juicebox_asm::prelude::Reg16">Reg16</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#15-19">source</a><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Test.html" title="trait juicebox_asm::prelude::Test">Test</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#16-18">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="prelude/trait.Test.html#tymethod.test">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Imm16" class="impl"><a href="#impl-RefUnwindSafe-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section><section id="impl-Send-for-Imm16" class="impl"><a href="#impl-Send-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section><section id="impl-Sync-for-Imm16" class="impl"><a href="#impl-Sync-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section><section id="impl-Unpin-for-Imm16" class="impl"><a href="#impl-Unpin-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section><section id="impl-UnwindSafe-for-Imm16" class="impl"><a href="#impl-UnwindSafe-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="prelude/struct.Imm16.html" title="struct juicebox_asm::prelude::Imm16">Imm16</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Imm16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Imm16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#22-26">source</a><a href="#impl-Add%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Add.html" title="trait juicebox_asm::insn::Add">Add</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.add" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/add.rs.html#23-25">source</a><a href="#method.add" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Add.html#tymethod.add" class="fn">add</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an add instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#4-8">source</a><a href="#impl-Cmp%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Cmp.html" title="trait juicebox_asm::insn::Cmp">Cmp</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/cmp.rs.html#5-7">source</a><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Cmp.html#tymethod.cmp" class="fn">cmp</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a compare instruction. <a href="insn/trait.Cmp.html#tymethod.cmp">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci16%3E-for-Imm16" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#impl-From%3Ci16%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci8%3E-for-Imm16" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#impl-From%3Ci8%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu16%3E-for-Imm16" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#impl-From%3Cu16%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu8%3E-for-Imm16" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#impl-From%3Cu8%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#39-42">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#110-114">source</a><a href="#impl-Mov%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#111-113">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#96-100">source</a><a href="#impl-Mov%3CReg16,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#97-99">source</a><a href="#method.mov-1" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg16.html" title="enum juicebox_asm::Reg16">Reg16</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#16-20">source</a><a href="#impl-Test%3CMemOp,+Imm16%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Test.html" title="trait juicebox_asm::insn::Test">Test</a><<a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.test" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/test.rs.html#17-19">source</a><a href="#method.test" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Test.html#tymethod.test" class="fn">test</a>(&mut self, op1: <a class="enum" href="enum.MemOp.html" title="enum juicebox_asm::MemOp">MemOp</a>, op2: <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a>)</h4></section></summary><div class='docblock'>Emit a logical compare instruction. <a href="insn/trait.Test.html#tymethod.test">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Imm16" class="impl"><a href="#impl-RefUnwindSafe-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a></h3></section><section id="impl-Send-for-Imm16" class="impl"><a href="#impl-Send-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a></h3></section><section id="impl-Sync-for-Imm16" class="impl"><a href="#impl-Sync-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a></h3></section><section id="impl-Unpin-for-Imm16" class="impl"><a href="#impl-Unpin-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a></h3></section><section id="impl-UnwindSafe-for-Imm16" class="impl"><a href="#impl-UnwindSafe-for-Imm16" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Imm16.html" title="struct juicebox_asm::Imm16">Imm16</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Imm16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Imm16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Imm16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Imm16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Imm16" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Imm16" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/juicebox_asm/struct.Imm32.html b/juicebox_asm/struct.Imm32.html index 5dce417..8a2d937 100644 --- a/juicebox_asm/struct.Imm32.html +++ b/juicebox_asm/struct.Imm32.html @@ -1,5 +1,5 @@ <!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="Type representing a 32 bit immediate."><title>Imm32 in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Imm32</a></h2><div class="sidebar-elems"><section><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-From%3Ci16%3E-for-Imm32">From<i16></a></li><li><a href="#impl-From%3Ci32%3E-for-Imm32">From<i32></a></li><li><a href="#impl-From%3Ci8%3E-for-Imm32">From<i8></a></li><li><a href="#impl-From%3Cu16%3E-for-Imm32">From<u16></a></li><li><a href="#impl-From%3Cu32%3E-for-Imm32">From<u32></a></li><li><a href="#impl-From%3Cu8%3E-for-Imm32">From<u8></a></li><li><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm">Mov<Reg32, Imm32></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Imm32">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Imm32">Send</a></li><li><a href="#impl-Sync-for-Imm32">Sync</a></li><li><a href="#impl-Unpin-for-Imm32">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Imm32">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Imm32">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Imm32">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Imm32">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Imm32">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Imm32">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Imm32">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Imm32">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">juicebox_asm</a>::<wbr><a class="struct" href="#">Imm32</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/juicebox_asm/imm.rs.html#43-46">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Imm32(/* private fields */);</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Type representing a 32 bit immediate.</p> -</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci16%3E-for-Imm32" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Ci16%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>> for <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci32%3E-for-Imm32" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Ci32%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>> for <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci8%3E-for-Imm32" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Ci8%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>> for <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu16%3E-for-Imm32" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Cu16%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>> for <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu32%3E-for-Imm32" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Cu32%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u32.html">u32</a>> for <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u32.html">u32</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu8%3E-for-Imm32" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Cu8%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>> for <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#89-93">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#90-92">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg32.html" title="enum juicebox_asm::prelude::Reg32">Reg32</a>, op2: <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Imm32" class="impl"><a href="#impl-RefUnwindSafe-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section><section id="impl-Send-for-Imm32" class="impl"><a href="#impl-Send-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section><section id="impl-Sync-for-Imm32" class="impl"><a href="#impl-Sync-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section><section id="impl-Unpin-for-Imm32" class="impl"><a href="#impl-Unpin-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section><section id="impl-UnwindSafe-for-Imm32" class="impl"><a href="#impl-UnwindSafe-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="prelude/struct.Imm32.html" title="struct juicebox_asm::prelude::Imm32">Imm32</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Imm32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Imm32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci16%3E-for-Imm32" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Ci16%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci32%3E-for-Imm32" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Ci32%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci8%3E-for-Imm32" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Ci8%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu16%3E-for-Imm32" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Cu16%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu32%3E-for-Imm32" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Cu32%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u32.html">u32</a>> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u32.html">u32</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu8%3E-for-Imm32" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#impl-From%3Cu8%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#43-46">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#90-94">source</a><a href="#impl-Mov%3CReg32,+Imm32%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#91-93">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg32.html" title="enum juicebox_asm::Reg32">Reg32</a>, op2: <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Imm32" class="impl"><a href="#impl-RefUnwindSafe-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></h3></section><section id="impl-Send-for-Imm32" class="impl"><a href="#impl-Send-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></h3></section><section id="impl-Sync-for-Imm32" class="impl"><a href="#impl-Sync-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></h3></section><section id="impl-Unpin-for-Imm32" class="impl"><a href="#impl-Unpin-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></h3></section><section id="impl-UnwindSafe-for-Imm32" class="impl"><a href="#impl-UnwindSafe-for-Imm32" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Imm32.html" title="struct juicebox_asm::Imm32">Imm32</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Imm32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Imm32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Imm32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Imm32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Imm32" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Imm32" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-6" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from-6" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/juicebox_asm/struct.Imm64.html b/juicebox_asm/struct.Imm64.html index dc3d9a6..cb711ee 100644 --- a/juicebox_asm/struct.Imm64.html +++ b/juicebox_asm/struct.Imm64.html @@ -1,8 +1,8 @@ -<!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="Type representing a 64 bit immediate."><title>Imm64 in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Imm64</a></h2><div class="sidebar-elems"><section><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-From%3Ci16%3E-for-Imm64">From<i16></a></li><li><a href="#impl-From%3Ci32%3E-for-Imm64">From<i32></a></li><li><a href="#impl-From%3Ci64%3E-for-Imm64">From<i64></a></li><li><a href="#impl-From%3Ci8%3E-for-Imm64">From<i8></a></li><li><a href="#impl-From%3Cu16%3E-for-Imm64">From<u16></a></li><li><a href="#impl-From%3Cu32%3E-for-Imm64">From<u32></a></li><li><a href="#impl-From%3Cu64%3E-for-Imm64">From<u64></a></li><li><a href="#impl-From%3Cu8%3E-for-Imm64">From<u8></a></li><li><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm">Mov<Reg64, Imm64></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Imm64">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Imm64">Send</a></li><li><a href="#impl-Sync-for-Imm64">Sync</a></li><li><a href="#impl-Unpin-for-Imm64">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Imm64">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Imm64">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Imm64">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Imm64">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Imm64">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Imm64">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Imm64">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Imm64">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">juicebox_asm</a>::<wbr><a class="struct" href="#">Imm64</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/juicebox_asm/imm.rs.html#47-50">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Imm64(/* private fields */);</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Type representing a 64 bit immediate.</p> -</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci16%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Ci16%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci32%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Ci32%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-7" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-7" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci64%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Ci64%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i64.html">i64</a>> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i64.html">i64</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci8%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Ci8%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu16%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cu16%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu32%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cu32%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u32.html">u32</a>> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u32.html">u32</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu64%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cu64%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u64.html">u64</a>> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-6" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-6" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u64.html">u64</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu8%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cu8%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#83-87">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#84-86">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg64.html" title="enum juicebox_asm::prelude::Reg64">Reg64</a>, op2: <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Imm64" class="impl"><a href="#impl-RefUnwindSafe-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section><section id="impl-Send-for-Imm64" class="impl"><a href="#impl-Send-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section><section id="impl-Sync-for-Imm64" class="impl"><a href="#impl-Sync-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section><section id="impl-Unpin-for-Imm64" class="impl"><a href="#impl-Unpin-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section><section id="impl-UnwindSafe-for-Imm64" class="impl"><a href="#impl-UnwindSafe-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="prelude/struct.Imm64.html" title="struct juicebox_asm::prelude::Imm64">Imm64</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +<!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="Type representing a 64 bit immediate."><title>Imm64 in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Imm64</a></h2><div class="sidebar-elems"><section><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-From%3Ci16%3E-for-Imm64">From<i16></a></li><li><a href="#impl-From%3Ci32%3E-for-Imm64">From<i32></a></li><li><a href="#impl-From%3Ci64%3E-for-Imm64">From<i64></a></li><li><a href="#impl-From%3Ci8%3E-for-Imm64">From<i8></a></li><li><a href="#impl-From%3Cisize%3E-for-Imm64">From<isize></a></li><li><a href="#impl-From%3Cu16%3E-for-Imm64">From<u16></a></li><li><a href="#impl-From%3Cu32%3E-for-Imm64">From<u32></a></li><li><a href="#impl-From%3Cu64%3E-for-Imm64">From<u64></a></li><li><a href="#impl-From%3Cu8%3E-for-Imm64">From<u8></a></li><li><a href="#impl-From%3Cusize%3E-for-Imm64">From<usize></a></li><li><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm">Mov<Reg64, Imm64></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Imm64">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Imm64">Send</a></li><li><a href="#impl-Sync-for-Imm64">Sync</a></li><li><a href="#impl-Unpin-for-Imm64">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Imm64">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Imm64">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Imm64">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Imm64">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Imm64">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Imm64">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Imm64">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Imm64">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">juicebox_asm</a>::<wbr><a class="struct" href="#">Imm64</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/juicebox_asm/imm.rs.html#47-50">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Imm64(/* private fields */);</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Type representing a 64 bit immediate.</p> +</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci16%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Ci16%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci32%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Ci32%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-8" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-8" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i32.html">i32</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci64%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Ci64%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i64.html">i64</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i64.html">i64</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci8%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Ci8%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-4" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cisize%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cisize%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.isize.html">isize</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-9" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-9" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.isize.html">isize</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu16%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cu16%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-6" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-6" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu32%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cu32%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u32.html">u32</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-3" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u32.html">u32</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu64%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cu64%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u64.html">u64</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-7" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-7" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u64.html">u64</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu8%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cu8%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from-5" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cusize%3E-for-Imm64" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#impl-From%3Cusize%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.usize.html">usize</a>> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#47-50">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.usize.html">usize</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#84-88">source</a><a href="#impl-Mov%3CReg64,+Imm64%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#85-87">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg64.html" title="enum juicebox_asm::Reg64">Reg64</a>, op2: <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Imm64" class="impl"><a href="#impl-RefUnwindSafe-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section><section id="impl-Send-for-Imm64" class="impl"><a href="#impl-Send-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section><section id="impl-Sync-for-Imm64" class="impl"><a href="#impl-Sync-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section><section id="impl-Unpin-for-Imm64" class="impl"><a href="#impl-Unpin-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section><section id="impl-UnwindSafe-for-Imm64" class="impl"><a href="#impl-UnwindSafe-for-Imm64" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Imm64.html" title="struct juicebox_asm::Imm64">Imm64</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where - T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-8" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from-8" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> + T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-10" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from-10" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> </div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-Imm64" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#706">source</a><a href="#impl-Into%3CU%3E-for-Imm64" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<span class="where fmt-newline">where U: <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#715">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p> <p>That is, this conversion is whatever the implementation of diff --git a/juicebox_asm/struct.Imm8.html b/juicebox_asm/struct.Imm8.html index da8ec5a..b59a1df 100644 --- a/juicebox_asm/struct.Imm8.html +++ b/juicebox_asm/struct.Imm8.html @@ -1,5 +1,5 @@ <!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="Type representing an 8 bit immediate."><title>Imm8 in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Imm8</a></h2><div class="sidebar-elems"><section><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-From%3Ci8%3E-for-Imm8">From<i8></a></li><li><a href="#impl-From%3Cu8%3E-for-Imm8">From<u8></a></li><li><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm">Mov<Reg8, Imm8></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Imm8">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Imm8">Send</a></li><li><a href="#impl-Sync-for-Imm8">Sync</a></li><li><a href="#impl-Unpin-for-Imm8">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Imm8">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Imm8">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Imm8">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Imm8">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Imm8">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Imm8">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Imm8">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Imm8">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">juicebox_asm</a>::<wbr><a class="struct" href="#">Imm8</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/juicebox_asm/imm.rs.html#35-38">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Imm8(/* private fields */);</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Type representing an 8 bit immediate.</p> -</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci8%3E-for-Imm8" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#35-38">source</a><a href="#impl-From%3Ci8%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>> for <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#35-38">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu8%3E-for-Imm8" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#35-38">source</a><a href="#impl-From%3Cu8%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>> for <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#35-38">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#101-105">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Mov.html" title="trait juicebox_asm::prelude::Mov">Mov</a><<a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#102-104">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="prelude/enum.Reg8.html" title="enum juicebox_asm::prelude::Reg8">Reg8</a>, op2: <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Imm8" class="impl"><a href="#impl-RefUnwindSafe-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section><section id="impl-Send-for-Imm8" class="impl"><a href="#impl-Send-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section><section id="impl-Sync-for-Imm8" class="impl"><a href="#impl-Sync-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section><section id="impl-Unpin-for-Imm8" class="impl"><a href="#impl-Unpin-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section><section id="impl-UnwindSafe-for-Imm8" class="impl"><a href="#impl-UnwindSafe-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="prelude/struct.Imm8.html" title="struct juicebox_asm::prelude::Imm8">Imm8</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Imm8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Imm8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Ci8%3E-for-Imm8" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#35-38">source</a><a href="#impl-From%3Ci8%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#35-38">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i8.html">i8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3Cu8%3E-for-Imm8" class="impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#35-38">source</a><a href="#impl-From%3Cu8%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/imm.rs.html#35-38">source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(imm: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>) -> Self</h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#102-106">source</a><a href="#impl-Mov%3CReg8,+Imm8%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Mov.html" title="trait juicebox_asm::insn::Mov">Mov</a><<a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.mov" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/mov.rs.html#103-105">source</a><a href="#method.mov" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Mov.html#tymethod.mov" class="fn">mov</a>(&mut self, op1: <a class="enum" href="enum.Reg8.html" title="enum juicebox_asm::Reg8">Reg8</a>, op2: <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a>)</h4></section></summary><div class='docblock'>Emit an move instruction.</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Imm8" class="impl"><a href="#impl-RefUnwindSafe-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a></h3></section><section id="impl-Send-for-Imm8" class="impl"><a href="#impl-Send-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a></h3></section><section id="impl-Sync-for-Imm8" class="impl"><a href="#impl-Sync-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a></h3></section><section id="impl-Unpin-for-Imm8" class="impl"><a href="#impl-Unpin-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a></h3></section><section id="impl-UnwindSafe-for-Imm8" class="impl"><a href="#impl-UnwindSafe-for-Imm8" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Imm8.html" title="struct juicebox_asm::Imm8">Imm8</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Imm8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Imm8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Imm8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Imm8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Imm8" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Imm8" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from-2" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/juicebox_asm/struct.Label.html b/juicebox_asm/struct.Label.html index 9223133..63fc164 100644 --- a/juicebox_asm/struct.Label.html +++ b/juicebox_asm/struct.Label.html @@ -1,6 +1,7 @@ -<!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="A label which is used as target for jump instructions."><title>Label in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Label</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.new">new</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Drop-for-Label">Drop</a></li><li><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm">Jmp<&mut Label></a></li><li><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm">Jnz<&mut Label></a></li><li><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm">Jz<&mut Label></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Label">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Label">Send</a></li><li><a href="#impl-Sync-for-Label">Sync</a></li><li><a href="#impl-Unpin-for-Label">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Label">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Label">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Label">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Label">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Label">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Label">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Label">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Label">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">juicebox_asm</a>::<wbr><a class="struct" href="#">Label</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/juicebox_asm/label.rs.html#24-30">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Label { /* private fields */ }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A label which is used as target for jump instructions.</p> +<!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="A label which is used as target for jump instructions."><title>Label in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Label</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.new">new</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Drop-for-Label">Drop</a></li><li><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm">Jmp<&mut Label></a></li><li><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm">Jnz<&mut Label></a></li><li><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm">Jz<&mut Label></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Label">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Label">Send</a></li><li><a href="#impl-Sync-for-Label">Sync</a></li><li><a href="#impl-Unpin-for-Label">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Label">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Label">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Label">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Label">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Label">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Label">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Label">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Label">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">juicebox_asm</a>::<wbr><a class="struct" href="#">Label</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/juicebox_asm/label.rs.html#25-31">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Label { /* private fields */ }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A label which is used as target for jump instructions.</p> -<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>juicebox_asm::prelude::<span class="kw-2">*</span>; +<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>juicebox_asm::{Asm, Label, Reg64}; +<span class="kw">use </span>juicebox_asm::insn::{Mov, Jmp}; <span class="kw">let </span><span class="kw-2">mut </span>lbl = Label::new(); <span class="kw">let </span><span class="kw-2">mut </span>asm = Asm::new(); @@ -12,8 +13,8 @@ asm.bind(<span class="kw-2">&mut </span>lbl);</code></pre></div> <h2 id="panics"><a href="#panics">Panics</a></h2> <p>Panics if the label is dropped while not yet bound, or having unresolved relocations. This is mainly a safety-guard to detect wrong usage.</p> -</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Label" class="impl"><a class="src rightside" href="../src/juicebox_asm/label.rs.html#32-73">source</a><a href="#impl-Label" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/juicebox_asm/label.rs.html#34-39">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>() -> <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h4></section></summary><div class="docblock"><p>Create a new <code>unbound</code> <a href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>.</p> -</div></details></div></details></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Drop-for-Label" class="impl"><a class="src rightside" href="../src/juicebox_asm/label.rs.html#75-82">source</a><a href="#impl-Drop-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html" title="trait core::ops::drop::Drop">Drop</a> for <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drop" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/label.rs.html#76-81">source</a><a href="#method.drop" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html#tymethod.drop" class="fn">drop</a>(&mut self)</h4></section></summary><div class='docblock'>Executes the destructor for this type. <a href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html#tymethod.drop">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jmp%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jmp.rs.html#3-7">source</a><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Jmp.html" title="trait juicebox_asm::prelude::Jmp">Jmp</a><&mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jmp.rs.html#4-6">source</a><a href="#method.jmp" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Jmp.html#tymethod.jmp" class="fn">jmp</a>(&mut self, op1: &mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit an unconditional jump instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jnz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jnz.rs.html#3-7">source</a><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Jnz.html" title="trait juicebox_asm::prelude::Jnz">Jnz</a><&mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jnz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jnz.rs.html#4-6">source</a><a href="#method.jnz" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Jnz.html#tymethod.jnz" class="fn">jnz</a>(&mut self, op1: &mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jz.rs.html#3-7">source</a><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="prelude/trait.Jz.html" title="trait juicebox_asm::prelude::Jz">Jz</a><&mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jz.rs.html#4-6">source</a><a href="#method.jz" class="anchor">§</a><h4 class="code-header">fn <a href="prelude/trait.Jz.html#tymethod.jz" class="fn">jz</a>(&mut self, op1: &mut <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if zero instruction (<code>ZF = 1</code>).</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Label" class="impl"><a href="#impl-RefUnwindSafe-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section><section id="impl-Send-for-Label" class="impl"><a href="#impl-Send-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section><section id="impl-Sync-for-Label" class="impl"><a href="#impl-Sync-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section><section id="impl-Unpin-for-Label" class="impl"><a href="#impl-Unpin-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section><section id="impl-UnwindSafe-for-Label" class="impl"><a href="#impl-UnwindSafe-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="prelude/struct.Label.html" title="struct juicebox_asm::prelude::Label">Label</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Label" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Label" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Label" class="impl"><a class="src rightside" href="../src/juicebox_asm/label.rs.html#33-74">source</a><a href="#impl-Label" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/juicebox_asm/label.rs.html#35-40">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>() -> <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a></h4></section></summary><div class="docblock"><p>Create a new <code>unbound</code> <a href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>.</p> +</div></details></div></details></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Drop-for-Label" class="impl"><a class="src rightside" href="../src/juicebox_asm/label.rs.html#76-83">source</a><a href="#impl-Drop-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html" title="trait core::ops::drop::Drop">Drop</a> for <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drop" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/label.rs.html#77-82">source</a><a href="#method.drop" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html#tymethod.drop" class="fn">drop</a>(&mut self)</h4></section></summary><div class='docblock'>Executes the destructor for this type. <a href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html#tymethod.drop">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jmp%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jmp.rs.html#4-8">source</a><a href="#impl-Jmp%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Jmp.html" title="trait juicebox_asm::insn::Jmp">Jmp</a><&mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jmp" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jmp.rs.html#5-7">source</a><a href="#method.jmp" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Jmp.html#tymethod.jmp" class="fn">jmp</a>(&mut self, op1: &mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit an unconditional jump instruction.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jnz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jnz.rs.html#4-8">source</a><a href="#impl-Jnz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Jnz.html" title="trait juicebox_asm::insn::Jnz">Jnz</a><&mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jnz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jnz.rs.html#5-7">source</a><a href="#method.jnz" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Jnz.html#tymethod.jnz" class="fn">jnz</a>(&mut self, op1: &mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Jz%3C%26mut+Label%3E-for-Asm" class="impl"><a class="src rightside" href="../src/juicebox_asm/insn/jz.rs.html#4-8">source</a><a href="#impl-Jz%3C%26mut+Label%3E-for-Asm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="insn/trait.Jz.html" title="trait juicebox_asm::insn::Jz">Jz</a><&mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>> for <a class="struct" href="struct.Asm.html" title="struct juicebox_asm::Asm">Asm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.jz" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/insn/jz.rs.html#5-7">source</a><a href="#method.jz" class="anchor">§</a><h4 class="code-header">fn <a href="insn/trait.Jz.html#tymethod.jz" class="fn">jz</a>(&mut self, op1: &mut <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a>)</h4></section></summary><div class='docblock'>Emit a conditional jump if zero instruction (<code>ZF = 1</code>).</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Label" class="impl"><a href="#impl-RefUnwindSafe-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a></h3></section><section id="impl-Send-for-Label" class="impl"><a href="#impl-Send-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a></h3></section><section id="impl-Sync-for-Label" class="impl"><a href="#impl-Sync-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a></h3></section><section id="impl-Unpin-for-Label" class="impl"><a href="#impl-Unpin-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a></h3></section><section id="impl-UnwindSafe-for-Label" class="impl"><a href="#impl-UnwindSafe-for-Label" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Label.html" title="struct juicebox_asm::Label">Label</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Label" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Label" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Label" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Label" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Label" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Label" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Label" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Label" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/juicebox_asm/struct.Runtime.html b/juicebox_asm/struct.Runtime.html index 6c73cc1..9fee473 100644 --- a/juicebox_asm/struct.Runtime.html +++ b/juicebox_asm/struct.Runtime.html @@ -1,10 +1,30 @@ -<!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="A simple `mmap`ed runtime with executable pages."><title>Runtime in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Runtime</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.add_code">add_code</a></li><li><a href="#method.dump">dump</a></li><li><a href="#method.new">new</a></li><li><a href="#method.protect">protect</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Drop-for-Runtime">Drop</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Send-for-Runtime">!Send</a></li><li><a href="#impl-Sync-for-Runtime">!Sync</a></li><li><a href="#impl-RefUnwindSafe-for-Runtime">RefUnwindSafe</a></li><li><a href="#impl-Unpin-for-Runtime">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Runtime">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Runtime">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Runtime">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Runtime">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Runtime">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Runtime">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Runtime">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Runtime">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">juicebox_asm</a>::<wbr><a class="struct" href="#">Runtime</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/juicebox_asm/rt.rs.html#7-11">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Runtime { /* private fields */ }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A simple <code>mmap</code>ed runtime with executable pages.</p> -</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Runtime" class="impl"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#13-80">source</a><a href="#impl-Runtime" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#15-35">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>() -> <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h4></section></summary><div class="docblock"><p>Create a new <a href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a>.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.protect" class="method"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#38-48">source</a><h4 class="code-header">pub fn <a href="#method.protect" class="fn">protect</a>(&mut self)</h4></section></summary><div class="docblock"><p>Write protect the underlying code page(s).</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.add_code" class="method"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#51-66">source</a><h4 class="code-header">pub unsafe fn <a href="#method.add_code" class="fn">add_code</a><F>(&mut self, code: impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><[<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>]>) -> F</h4></section></summary><div class="docblock"><p>Add block of code to the runtime and get function pointer back.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.dump" class="method"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#76-79">source</a><h4 class="code-header">pub fn <a href="#method.dump" class="fn">dump</a>(&self)</h4></section></summary><div class="docblock"><p>Dump the currently added code to a file called <code>jit.asm</code>. The disassembly can be inspected -as <code>ndisasm -b 64 jit.asm</code>.</p> -</div></details></div></details></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Drop-for-Runtime" class="impl"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#82-88">source</a><a href="#impl-Drop-for-Runtime" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html" title="trait core::ops::drop::Drop">Drop</a> for <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drop" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#83-87">source</a><a href="#method.drop" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html#tymethod.drop" class="fn">drop</a>(&mut self)</h4></section></summary><div class='docblock'>Executes the destructor for this type. <a href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html#tymethod.drop">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Runtime" class="impl"><a href="#impl-RefUnwindSafe-for-Runtime" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section><section id="impl-Send-for-Runtime" class="impl"><a href="#impl-Send-for-Runtime" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section><section id="impl-Sync-for-Runtime" class="impl"><a href="#impl-Sync-for-Runtime" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section><section id="impl-Unpin-for-Runtime" class="impl"><a href="#impl-Unpin-for-Runtime" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section><section id="impl-UnwindSafe-for-Runtime" class="impl"><a href="#impl-UnwindSafe-for-Runtime" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Runtime" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Runtime" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +<!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="A simple `mmap`ed runtime with executable pages."><title>Runtime in juicebox_asm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../juicebox_asm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Runtime</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.add_code">add_code</a></li><li><a href="#method.dump">dump</a></li><li><a href="#method.new">new</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Drop-for-Runtime">Drop</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Send-for-Runtime">!Send</a></li><li><a href="#impl-Sync-for-Runtime">!Sync</a></li><li><a href="#impl-RefUnwindSafe-for-Runtime">RefUnwindSafe</a></li><li><a href="#impl-Unpin-for-Runtime">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Runtime">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Runtime">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Runtime">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Runtime">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Runtime">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Runtime">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Runtime">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Runtime">TryInto<U></a></li></ul></section><h2><a href="index.html">In juicebox_asm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">juicebox_asm</a>::<wbr><a class="struct" href="#">Runtime</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/juicebox_asm/rt.rs.html#12-16">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Runtime { /* private fields */ }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A simple <code>mmap</code>ed runtime with executable pages.</p> +</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Runtime" class="impl"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#18-143">source</a><a href="#impl-Runtime" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#24-44">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>() -> <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h4></section></summary><div class="docblock"><p>Create a new <a href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a>.</p> +<h5 id="panics"><a href="#panics">Panics</a></h5> +<p>Panics if the <code>mmap</code> call fails.</p> +</div></details><details class="toggle method-toggle" open><summary><section id="method.add_code" class="method"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#67-88">source</a><h4 class="code-header">pub unsafe fn <a href="#method.add_code" class="fn">add_code</a><F>(&mut self, code: impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><[<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u8.html">u8</a>]>) -> F</h4></section></summary><div class="docblock"><p>Add the block of <code>code</code> to the runtime and a get function pointer of type <code>F</code>.</p> +<h5 id="panics-1"><a href="#panics-1">Panics</a></h5> +<p>Panics if the <code>code</code> does not fit on the <code>mmap</code>ed pages or is empty.</p> +<h5 id="safety"><a href="#safety">Safety</a></h5> +<p>The code added must fulfill the ABI of the specified function <code>F</code> and the returned function +pointer is only valid until the <a href="struct.Runtime.html" title="struct juicebox_asm::Runtime"><code>Runtime</code></a> is dropped.</p> +<h5 id="examples"><a href="#examples">Examples</a></h5> +<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">let </span><span class="kw-2">mut </span>rt = juicebox_asm::Runtime::new(); + +<span class="kw">let </span>code = [ <span class="number">0x90 </span><span class="comment">/* nop */</span>, <span class="number">0xc3 </span><span class="comment">/* ret */ </span>]; +<span class="kw">let </span>nop = <span class="kw">unsafe </span>{ rt.add_code::<<span class="kw">extern </span><span class="string">"C" </span><span class="kw">fn</span>()>(<span class="kw-2">&</span>code) }; + +nop();</code></pre></div> +</div></details><details class="toggle method-toggle" open><summary><section id="method.dump" class="method"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#102-106">source</a><h4 class="code-header">pub fn <a href="#method.dump" class="fn">dump</a>(&self)</h4></section></summary><div class="docblock"><p>Dump the code added so far to the runtime into a file called <code>jit.asm</code> in the processes +current working directory.</p> +<p>The code can be inspected with a disassembler as for example <code>ndiasm</code> from +<a href="https://nasm.us/index.php">nasm.us</a>.</p> +<div class="example-wrap"><pre class="language-sh"><code>ndisasm -b 64 jit.asm +</code></pre></div><h5 id="panics-2"><a href="#panics-2">Panics</a></h5> +<p>Panics if writing the file failed.</p> +</div></details></div></details></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Drop-for-Runtime" class="impl"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#145-153">source</a><a href="#impl-Drop-for-Runtime" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html" title="trait core::ops::drop::Drop">Drop</a> for <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drop" class="method trait-impl"><a class="src rightside" href="../src/juicebox_asm/rt.rs.html#148-152">source</a><a href="#method.drop" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/ops/drop/trait.Drop.html#tymethod.drop" class="fn">drop</a>(&mut self)</h4></section></summary><div class="docblock"><p>Unmaps the code page. This invalidates all the function pointer returned by +<a href="struct.Runtime.html#method.add_code" title="method juicebox_asm::Runtime::add_code"><code>Runtime::add_code</code></a>.</p> +</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Runtime" class="impl"><a href="#impl-RefUnwindSafe-for-Runtime" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section><section id="impl-Send-for-Runtime" class="impl"><a href="#impl-Send-for-Runtime" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section><section id="impl-Sync-for-Runtime" class="impl"><a href="#impl-Sync-for-Runtime" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section><section id="impl-Unpin-for-Runtime" class="impl"><a href="#impl-Unpin-for-Runtime" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section><section id="impl-UnwindSafe-for-Runtime" class="impl"><a href="#impl-UnwindSafe-for-Runtime" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Runtime.html" title="struct juicebox_asm::Runtime">Runtime</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Runtime" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Runtime" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Runtime" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Runtime" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Runtime" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Runtime" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Runtime" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-Runtime" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/search-index.js b/search-index.js index b08749a..01b4533 100644 --- a/search-index.js +++ b/search-index.js @@ -1,7 +1,7 @@ var searchIndex = JSON.parse('{\ "add":{"doc":"Add example.","t":"","n":[],"q":[],"d":[],"i":[],"f":[],"c":[],"p":[]},\ "fib":{"doc":"Fibonacci example.","t":"","n":[],"q":[],"d":[],"i":[],"f":[],"c":[],"p":[]},\ -"juicebox_asm":{"doc":"A simple <code>x64</code> jit assembler with a minimal runtime to …","t":"DDDDDNNDEEEEEDLLLLLNNNNLNLLLLLLNNNLNNLNLLNNNNLLNNNNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLALNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNLLNNNNNNLLLLLLLLLLLLICIIIDDDDIIIDCIEEEEIKNNNNNLLLLLLLLLLLLLLLLLLNNNKNNLLLLLLLLKNKNNNNLNNNNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKKKKLNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL","n":["Asm","Imm16","Imm32","Imm64","Imm8","Indirect","IndirectDisp","Label","MemOp","Reg16","Reg32","Reg64","Reg8","Runtime","add","add","add","add","add_code","ah","al","ax","bh","bind","bl","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","bp","bpl","bx","call","ch","cl","cmp","cx","dec","dec","dh","di","dil","dl","drop","dump","dx","eax","ebp","ebx","ecx","edi","edx","esi","esp","from","from","from","into","into","into","into_code","jmp","jnz","jz","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","new","new","nop","prelude","protect","r10","r10d","r10l","r10w","r11","r11d","r11l","r11w","r12","r12d","r12l","r12w","r13","r13d","r13l","r13w","r14","r14d","r14l","r14w","r15","r15d","r15l","r15w","r8","r8d","r8l","r8w","r9","r9d","r9l","r9w","rax","rbp","rbx","rcx","rdi","rdx","resolve","ret","rsi","rsp","si","sil","sp","spl","test","test","test","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","Add","Asm","Call","Cmp","Dec","Imm16","Imm32","Imm64","Imm8","Jmp","Jnz","Jz","Label","MemOp","Mov","Reg16","Reg32","Reg64","Reg8","Test","add","ah","al","ax","bh","bl","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bp","bpl","bx","call","ch","cl","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","cx","dec","dh","di","dil","dl","drop","dx","eax","ebp","ebx","ecx","edi","edx","esi","esp","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","into","into","into","into","into","into","into","into","into","jmp","jnz","jz","mov","new","r10","r10d","r10l","r10w","r11","r11d","r11l","r11w","r12","r12d","r12l","r12w","r13","r13d","r13l","r13w","r14","r14d","r14l","r14w","r15","r15d","r15l","r15w","r8","r8d","r8l","r8w","r9","r9d","r9l","r9w","rax","rbp","rbx","rcx","rdi","rdx","rsi","rsp","si","sil","sp","spl","test","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id"],"q":[[0,"juicebox_asm"],[146,"juicebox_asm::prelude"],[340,"core::convert"],[341,"alloc::vec"],[342,"core::result"],[343,"core::any"]],"d":["<code>x64</code> jit assembler.","Type representing a 16 bit immediate.","Type representing a 32 bit immediate.","Type representing a 64 bit immediate.","Type representing an 8 bit immediate.","An indirect memory operand, eg <code>mov [rax], rcx</code>.","An indirect memory operand with additional displacement, …","A label which is used as target for jump instructions.","Type representing a memory operand.","Definition of 16 bit registers.","Definition of 32 bit registers.","Definition of 64 bit registers.","Definition of 8 bit registers.","A simple <code>mmap</code>ed runtime with executable pages.","","","","","Add block of code to the runtime and get function pointer …","","","","","Bind the Label to the current location.","","","","","","","","","","","","","","","","","","","","","","","Dump the currently added code to a file called <code>jit.asm</code>. …","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Consume the assembler and get the emitted code.","","","","","","","","","","","","","","","","","","","","","Create a new Runtime.","Create a new <code>x64</code> jit assembler.","","Crate prelude, which can be used to import the most …","Write protect the underlying code page(s).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","If the Label is bound, patch any pending relocation.","","","","","","","","","","","","","","","","","","","","","","","","","Type representing a 16 bit immediate.","Type representing a 32 bit immediate.","Type representing a 64 bit immediate.","Type representing an 8 bit immediate.","","","","A label which is used as target for jump instructions.","","","Definition of 16 bit registers.","Definition of 32 bit registers.","Definition of 64 bit registers.","Definition of 8 bit registers.","","Emit an add instruction.","","","","","","","","","","","","","","","","","","","","","","","","","","","Emit a call instruction.","","","","","","","","","","","Emit a compare call instruction.","","Emit a decrement instruction.","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","","","","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Emit an unconditional jump instruction.","Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).","Emit a conditional jump if zero instruction (<code>ZF = 1</code>).","Emit an move instruction.","Create a new <code>unbound</code> Label.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Emit a logical compare instruction.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""],"i":[0,0,0,0,0,4,4,0,0,0,0,0,0,0,1,1,1,1,8,14,14,5,14,1,14,8,4,1,8,4,1,5,14,5,1,14,14,1,5,1,1,14,5,14,14,8,8,5,6,6,6,6,6,6,6,6,8,4,1,8,4,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,8,1,1,0,8,2,6,14,5,2,6,14,5,2,6,14,5,2,6,14,5,2,6,14,5,2,6,14,5,2,6,14,5,2,6,14,5,2,2,2,2,2,2,1,1,2,2,5,14,5,14,1,1,1,8,4,1,8,4,1,8,4,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,14,14,5,14,14,12,17,7,15,16,2,6,5,14,12,17,7,15,16,2,6,5,14,5,14,5,28,14,14,2,6,5,14,2,6,5,14,29,5,30,14,5,14,14,12,5,6,6,6,6,6,6,6,6,12,17,17,17,7,7,7,7,7,15,15,15,15,15,15,15,16,16,16,16,16,16,16,16,16,2,6,5,14,12,17,7,15,16,2,6,5,14,31,32,33,34,12,2,6,14,5,2,6,14,5,2,6,14,5,2,6,14,5,2,6,14,5,2,6,14,5,2,6,14,5,2,6,14,5,2,2,2,2,2,2,2,2,5,14,5,14,35,2,6,5,14,12,17,7,15,16,2,6,5,14,12,17,7,15,16,2,6,5,14,12,17,7,15,16,2,6,5,14],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[1,2,2],3],[[1,4,5],3],[[1,6,6],3],[[1,4,7],3],[[8,-1],-2,[[11,[[10,[9]]]]],[]],0,0,0,0,[[1,12],3],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,[[1,2],3],0,0,[[1,4,7],3],0,[[1,6],3],[[1,2],3],0,0,0,0,[8,3],[8,3],0,0,0,0,0,0,0,0,0,[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[1,[[13,[9]]]],[[1,12],3],[[1,12],3],[[1,12],3],[[1,4,7],3],[[1,14,14],3],[[1,6,4],3],[[1,2,4],3],[[1,6,15],3],[[1,14,4],3],[[1,2,16],3],[[1,14,17],3],[[1,4,5],3],[[1,4,14],3],[[1,4,2],3],[[1,6,6],3],[[1,4,6],3],[[1,5,5],3],[[1,2,2],3],[[1,5,4],3],[[1,5,7],3],[[],8],[[],1],[1,3],0,[8,3],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[1,12],3],[1,3],0,0,0,0,0,0,[[1,4,7],3],[[1,2,2],3],[[1,6,6],3],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,19,[]],[-1,19,[]],[-1,19,[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,-2,-3],3,[],[],[]],0,0,0,0,0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,[[-1,-2],3,[],[]],0,0,[2,2],[6,6],[5,5],[14,14],[[-1,-2],3,[],[]],[[-1,-2],3,[],[]],[[-1,-2],3,[],[]],[[-1,-2],3,[],[]],[[-1,-2,-3],3,[],[],[]],0,[[-1,-2],3,[],[]],0,0,0,0,[12,3],0,0,0,0,0,0,0,0,0,[-1,-1,[]],[-1,-1,[]],[20,17],[9,17],[9,7],[-1,-1,[]],[20,7],[21,7],[22,7],[22,15],[-1,-1,[]],[20,15],[21,15],[23,15],[9,15],[24,15],[25,16],[24,16],[26,16],[-1,-1,[]],[23,16],[20,16],[9,16],[21,16],[22,16],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[[-1,-2],3,[],[]],[[-1,-2],3,[],[]],[[-1,-2],3,[],[]],[[-1,-2,-3],3,[],[],[]],[[],12],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[-1,-2,-3],3,[],[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,[[18,[-2]]],[],[]],[-1,19,[]],[-1,19,[]],[-1,19,[]],[-1,19,[]],[-1,19,[]],[-1,19,[]],[-1,19,[]],[-1,19,[]],[-1,19,[]]],"c":[],"p":[[3,"Asm",0],[4,"Reg64",146],[15,"tuple"],[4,"MemOp",0],[4,"Reg16",146],[4,"Reg32",146],[3,"Imm16",146],[3,"Runtime",0],[15,"u8"],[15,"slice"],[8,"AsRef",340],[3,"Label",146],[3,"Vec",341],[4,"Reg8",146],[3,"Imm32",146],[3,"Imm64",146],[3,"Imm8",146],[4,"Result",342],[3,"TypeId",343],[15,"i8"],[15,"u16"],[15,"i16"],[15,"u32"],[15,"i32"],[15,"i64"],[15,"u64"],[8,"Add",146],[8,"Call",146],[8,"Cmp",146],[8,"Dec",146],[8,"Jmp",146],[8,"Jnz",146],[8,"Jz",146],[8,"Mov",146],[8,"Test",146]]},\ +"juicebox_asm":{"doc":"A simple <code>x64</code> jit assembler with a minimal runtime to …","t":"DDDDDNNDEEEEEDLLLLLNNNNLNLLLLLLLLLLLLLLLLLLLLLLLLNNNLNNLLLLLLLLLNLLNNNNLLLNNNNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLIIIIIIIIIKKKKKKKKK","n":["Asm","Imm16","Imm32","Imm64","Imm8","Indirect","IndirectDisp","Label","MemOp","Reg16","Reg32","Reg64","Reg8","Runtime","add","add","add","add","add_code","ah","al","ax","bh","bind","bl","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bp","bpl","bx","call","ch","cl","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","cx","dec","dec","dh","di","dil","dl","drop","drop","dump","dx","eax","ebp","ebx","ecx","edi","edx","esi","esp","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","insn","into","into","into","into","into","into","into","into","into","into","into","into","into_code","jmp","jnz","jz","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","mov","new","new","new","nop","r10","r10d","r10l","r10w","r11","r11d","r11l","r11w","r12","r12d","r12l","r12w","r13","r13d","r13l","r13w","r14","r14d","r14l","r14w","r15","r15d","r15l","r15w","r8","r8d","r8l","r8w","r9","r9d","r9l","r9w","rax","rbp","rbx","rcx","rdi","rdx","ret","rsi","rsp","si","sil","sp","spl","test","test","test","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","Add","Call","Cmp","Dec","Jmp","Jnz","Jz","Mov","Test","add","call","cmp","dec","jmp","jnz","jz","mov","test"],"q":[[0,"juicebox_asm"],[243,"juicebox_asm::insn"],[261,"core::convert"],[262,"alloc::vec"],[263,"core::result"],[264,"core::any"]],"d":["<code>x64</code> jit assembler.","Type representing a 16 bit immediate.","Type representing a 32 bit immediate.","Type representing a 64 bit immediate.","Type representing an 8 bit immediate.","An indirect memory operand, eg <code>mov [rax], rcx</code>.","An indirect memory operand with additional displacement, …","A label which is used as target for jump instructions.","Type representing a memory operand.","Definition of 16 bit registers.","Definition of 32 bit registers.","Definition of 64 bit registers.","Definition of 8 bit registers.","A simple <code>mmap</code>ed runtime with executable pages.","","","","","Add the block of <code>code</code> to the runtime and a get function …","","","","","Bind the Label to the current location.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Unmaps the code page. This invalidates all the function …","Dump the code added so far to the runtime into a file …","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","","","","","Returns the argument unchanged.","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Trait definitions of various instructions.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Consume the assembler and get the emitted code.","","","","","","","","","","","","","","","","","","","","","Create a new <code>x64</code> jit assembler.","Create a new <code>unbound</code> Label.","Create a new Runtime.","Emit a <code>nop</code> instruction.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Emit a <code>ret</code> instruction.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Trait for <code>add</code> instruction kinds.","Trait for <code>call</code> instruction kinds.","Trait for <code>cmp</code> instruction kinds.","Trait for <code>dec</code> instruction kinds.","Trait for <code>jmp</code> instruction kinds.","Trait for <code>jnz</code> instruction kinds.","Trait for <code>jz</code> instruction kinds.","Trait for <code>mov</code> instruction kinds.","Trait for <code>test</code> instruction kinds.","Emit an add instruction.","Emit a call instruction.","Emit a compare instruction.","Emit a decrement instruction.","Emit an unconditional jump instruction.","Emit a conditional jump if not zero instruction (<code>ZF = 0</code>).","Emit a conditional jump if zero instruction (<code>ZF = 1</code>).","Emit an move instruction.","Emit a logical compare instruction."],"i":[0,0,0,0,0,2,2,0,0,0,0,0,0,0,1,1,1,1,8,13,13,3,13,1,13,1,12,8,2,15,6,18,22,7,5,3,13,1,12,8,2,15,6,18,22,7,5,3,13,3,13,3,1,13,13,7,5,3,13,7,5,3,13,1,3,1,1,13,3,13,13,12,8,8,3,5,5,5,5,5,5,5,5,1,12,8,2,15,15,15,6,6,6,6,6,18,18,18,18,18,18,18,22,22,22,22,22,22,22,22,22,22,22,7,5,3,13,0,1,12,8,2,15,6,18,22,7,5,3,13,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,12,8,1,7,5,13,3,7,5,13,3,7,5,13,3,7,5,13,3,7,5,13,3,7,5,13,3,7,5,13,3,7,5,13,3,7,7,7,7,7,7,1,7,7,3,13,3,13,1,1,1,7,5,3,13,1,12,8,2,15,6,18,22,7,5,3,13,1,12,8,2,15,6,18,22,7,5,3,13,1,12,8,2,15,6,18,22,7,5,3,13,0,0,0,0,0,0,0,0,0,29,30,31,32,33,34,35,36,37],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[1,2,3],4],[[1,5,5],4],[[1,2,6],4],[[1,7,7],4],[[8,-1],-2,[[11,[[10,[9]]]]],[]],0,0,0,0,[[1,12],4],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],0,0,0,[[1,7],4],0,0,[7,7],[5,5],[3,3],[13,13],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[[1,2,6],4],0,[[1,5],4],[[1,7],4],0,0,0,0,[12,4],[8,4],[8,4],0,0,0,0,0,0,0,0,0,[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[14,15],[-1,-1,[]],[9,15],[9,6],[-1,-1,[]],[16,6],[17,6],[14,6],[-1,-1,[]],[16,18],[9,18],[14,18],[19,18],[20,18],[17,18],[21,22],[-1,-1,[]],[17,22],[20,22],[16,22],[23,22],[14,22],[9,22],[24,22],[19,22],[25,22],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],0,[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[1,[[26,[9]]]],[[1,12],4],[[1,12],4],[[1,12],4],[[1,2,5],4],[[1,5,5],4],[[1,5,2],4],[[1,7,2],4],[[1,5,18],4],[[1,13,2],4],[[1,7,22],4],[[1,13,15],4],[[1,2,3],4],[[1,2,13],4],[[1,2,6],4],[[1,3,6],4],[[1,3,2],4],[[1,2,7],4],[[1,7,7],4],[[1,3,3],4],[[1,13,13],4],[[],1],[[],12],[[],8],[1,4],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[1,4],0,0,0,0,0,0,[[1,5,5],4],[[1,7,7],4],[[1,2,6],4],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,[[27,[-2]]],[],[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],[-1,28,[]],0,0,0,0,0,0,0,0,0,[[-1,-2,-3],4,[],[],[]],[[-1,-2],4,[],[]],[[-1,-2,-3],4,[],[],[]],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[[-1,-2,-3],4,[],[],[]],[[-1,-2,-3],4,[],[],[]]],"c":[],"p":[[3,"Asm",0],[4,"MemOp",0],[4,"Reg16",0],[15,"tuple"],[4,"Reg32",0],[3,"Imm16",0],[4,"Reg64",0],[3,"Runtime",0],[15,"u8"],[15,"slice"],[8,"AsRef",261],[3,"Label",0],[4,"Reg8",0],[15,"i8"],[3,"Imm8",0],[15,"i16"],[15,"u16"],[3,"Imm32",0],[15,"i32"],[15,"u32"],[15,"isize"],[3,"Imm64",0],[15,"usize"],[15,"i64"],[15,"u64"],[3,"Vec",262],[4,"Result",263],[3,"TypeId",264],[8,"Add",243],[8,"Call",243],[8,"Cmp",243],[8,"Dec",243],[8,"Jmp",243],[8,"Jnz",243],[8,"Jz",243],[8,"Mov",243],[8,"Test",243]]},\ "tiny_vm":{"doc":"TinyVm example.","t":"NNNNNNNDNNNDNEEDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFFFLLLLLLLLLLLLLLLLLLLLLLL","n":["A","Add","Addi","B","Branch","BranchZero","C","Fixup","Halt","Load","LoadImm","PhysAddr","Store","TinyInsn","TinyReg","TinyVm","bind","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","dump","eq","eq","fmt","fmt","from","from","from","from","from","interp","into","into","into","into","into","into","jit","make_tinyvm_fib","make_tinyvm_jit_perf","make_tinyvm_jit_test","new","new","read_mem","read_reg","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","write_mem","write_reg"],"q":[[0,"tiny_vm"],[75,"alloc::vec"],[76,"core::fmt"],[77,"core::fmt"],[78,"core::any"]],"d":["","Add the register to the register <code>reg1 += reg2</code>.","Add the immediate to the register <code>reg += imm</code>.","","Jump unconditional (absolute addressing) <code>pc = disp</code>.","Jump if the register is zero (absolute addressing) …","","A minial fixup utility to implement jump labels when …","Halt the VM.","Load a value from the memory (absolute addressing) into …","Load the immediate value into the register <code>reg = imm</code>.","A guest physical address.","Store a value from the register into the memory (absolute …","The instructions for the <code>TinyVm</code>.","The registers for the <code>TinyVm</code>.","The <code>TinyVm</code> virtual machine state.","Bind the <code>Fixup</code> to the current location of <code>prog</code> and resolve …","","","","","","","","","","","","","","","Dump the VM state to stdout.","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Run in interpreter mode until the next <code>TinyInsn::Halt</code> …","Calls <code>U::from(self)</code>.","","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Calls <code>U::from(self)</code>.","Run in JIT mode until the next <code>TinyInsn::Halt</code> instruction …","Generate a guest program to compute the fiibonacci …","Generate a simple count down loop to crunch some …","Generate a test program for the jit.","Create a new <code>TinyVm</code> and initialize the instruction memory …","Create a new <code>Fixup</code> at the current pc.","Read guest data memory.","Read guest register.","","","","","","","","","","","","","","","","","","Write guest data memory.","Write guest register."],"i":[5,2,2,5,2,2,5,0,2,2,2,0,2,0,0,0,1,10,6,1,5,2,10,6,1,5,2,5,2,5,2,6,5,2,5,2,10,6,1,5,2,6,10,10,6,1,5,2,6,0,0,0,6,1,6,6,5,2,10,6,1,5,2,10,6,1,5,2,10,6,1,5,2,6,6],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[1,[3,[2]]],4],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[5,5],[2,2],[[-1,-2],4,[],[]],[[-1,-2],4,[],[]],[6,4],[[5,5],7],[[2,2],7],[[5,8],9],[[2,8],9],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[-1,-1,[]],[6,4],[-1,-2,[],[]],[10,11],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[-1,-2,[],[]],[6,4],[12,[[3,[2]]]],[[],[[3,[2]]]],[[],[[3,[2]]]],[[[3,[2]]],6],[11,1],[[6,10],12],[[6,5],12],[-1,-2,[],[]],[-1,-2,[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,[[13,[-2]]],[],[]],[-1,14,[]],[-1,14,[]],[-1,14,[]],[-1,14,[]],[-1,14,[]],[[6,10,12],4],[[6,5,12],4]],"c":[],"p":[[3,"Fixup",0],[4,"TinyInsn",0],[3,"Vec",75],[15,"tuple"],[4,"TinyReg",0],[3,"TinyVm",0],[15,"bool"],[3,"Formatter",76],[6,"Result",76],[3,"PhysAddr",0],[15,"usize"],[15,"u16"],[4,"Result",77],[3,"TypeId",78]]}\ }'); if (typeof window !== 'undefined' && window.initSearch) {window.initSearch(searchIndex)}; diff --git a/settings.html b/settings.html index 0959e0c..69169e2 100644 --- a/settings.html +++ b/settings.html @@ -1 +1 @@ -<!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="Settings of Rustdoc"><title>Rustdoc settings</title><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="./static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="./static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="./" data-static-root-path="./static.files/" data-current-crate="fib" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="./static.files/storage-fec3eaa3851e447d.js"></script><script defer src="./static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="./static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="./fib/index.html"><img class="rust-logo" src="./static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="./fib/index.html"><img class="rust-logo" src="./static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location">Settings</h2><div class="sidebar-elems"></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="./help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="./settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="./static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Rustdoc settings</h1><span class="out-of-band"><a id="back" href="javascript:void(0)" onclick="history.back();">Back</a></span></div><noscript><section>You need to enable JavaScript be able to update your settings.</section></noscript><script defer src="./static.files/settings-74424d7eec62a23e.js"></script></section></div></main></body></html>
\ No newline at end of file +<!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="Settings of Rustdoc"><title>Rustdoc settings</title><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="./static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="./static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="./static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="./" data-static-root-path="./static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="./static.files/storage-fec3eaa3851e447d.js"></script><script defer src="./static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="./static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="./tiny_vm/index.html"><img class="rust-logo" src="./static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="./tiny_vm/index.html"><img class="rust-logo" src="./static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location">Settings</h2><div class="sidebar-elems"></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="./help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="./settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="./static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Rustdoc settings</h1><span class="out-of-band"><a id="back" href="javascript:void(0)" onclick="history.back();">Back</a></span></div><noscript><section>You need to enable JavaScript be able to update your settings.</section></noscript><script defer src="./static.files/settings-74424d7eec62a23e.js"></script></section></div></main></body></html>
\ No newline at end of file diff --git a/src-files.js b/src-files.js index 19d233f..de66aef 100644 --- a/src-files.js +++ b/src-files.js @@ -1,7 +1,7 @@ var srcIndex = JSON.parse('{\ "add":["",[],["add.rs"]],\ "fib":["",[],["fib.rs"]],\ -"juicebox_asm":["",[["insn",[],["add.rs","call.rs","cmp.rs","dec.rs","jmp.rs","jnz.rs","jz.rs","mov.rs","nop.rs","ret.rs","test.rs"]]],["imm.rs","insn.rs","label.rs","lib.rs","prelude.rs","reg.rs","rt.rs"]],\ +"juicebox_asm":["",[["insn",[],["add.rs","call.rs","cmp.rs","dec.rs","jmp.rs","jnz.rs","jz.rs","mov.rs","nop.rs","ret.rs","test.rs"]]],["asm.rs","imm.rs","insn.rs","label.rs","lib.rs","reg.rs","rt.rs"]],\ "tiny_vm":["",[],["tiny_vm.rs"]]\ }'); createSrcSidebar(); diff --git a/src/add/add.rs.html b/src/add/add.rs.html index 112d0f1..dc8c566 100644 --- a/src/add/add.rs.html +++ b/src/add/add.rs.html @@ -44,9 +44,9 @@ </span><span class="attr">#[cfg(not(any(target_arch = <span class="string">"x86_64"</span>, target_os = <span class="string">"linux"</span>)))] </span><span class="macro">compile_error!</span>(<span class="string">"Only supported on x86_64 with SystemV abi"</span>); -<span class="kw">use </span>juicebox_asm::prelude::<span class="kw-2">*</span>; +<span class="kw">use </span>juicebox_asm::insn::<span class="kw-2">*</span>; <span class="kw">use </span>juicebox_asm::Runtime; -<span class="kw">use </span>Reg64::<span class="kw-2">*</span>; +<span class="kw">use </span>juicebox_asm::{Asm, Imm64, Reg64::<span class="kw-2">*</span>}; <span class="kw">extern </span><span class="string">"C" </span><span class="kw">fn </span>add(a: u32, b: u32) -> u32 { a + b @@ -59,9 +59,9 @@ // rdi -> first argument // rsi -> second argument // rax -> return value - // + </span>asm.mov(rsi, Imm64::from(<span class="number">42</span>)); - asm.mov(rax, Imm64::from(add <span class="kw">as </span>u64)); + asm.mov(rax, Imm64::from(add <span class="kw">as </span>usize)); asm.call(rax); asm.ret(); diff --git a/src/fib/fib.rs.html b/src/fib/fib.rs.html index 87a1bbf..f7b4aa6 100644 --- a/src/fib/fib.rs.html +++ b/src/fib/fib.rs.html @@ -76,13 +76,15 @@ <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> </pre></div><pre class="rust"><code><span class="doccomment">//! Fibonacci example. //! //! Jit compile a function at runtime (generate native host code) to compute the fibonacci sequence //! to demonstrate the [`juicebox_asm`] crate. -</span><span class="kw">use </span>juicebox_asm::prelude::<span class="kw-2">*</span>; +</span><span class="kw">use </span>juicebox_asm::insn::<span class="kw-2">*</span>; <span class="kw">use </span>juicebox_asm::Runtime; +<span class="kw">use </span>juicebox_asm::{Asm, Imm64, Label, Reg64}; <span class="kw">const fn </span>fib_rs(n: u64) -> u64 { <span class="kw">match </span>n { diff --git a/src/juicebox_asm/asm.rs.html b/src/juicebox_asm/asm.rs.html new file mode 100644 index 0000000..fd5f0d5 --- /dev/null +++ b/src/juicebox_asm/asm.rs.html @@ -0,0 +1,689 @@ +<!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 `src/asm.rs`."><title>asm.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/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="../../static.files/src-script-3280b574d94e47b4.js"></script><script defer src="../../src-files.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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><main><nav class="sub"><a class="sub-logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="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> +<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> +<a href="#110" id="110">110</a> +<a href="#111" id="111">111</a> +<a href="#112" id="112">112</a> +<a href="#113" id="113">113</a> +<a href="#114" id="114">114</a> +<a href="#115" id="115">115</a> +<a href="#116" id="116">116</a> +<a href="#117" id="117">117</a> +<a href="#118" id="118">118</a> +<a href="#119" id="119">119</a> +<a href="#120" id="120">120</a> +<a href="#121" id="121">121</a> +<a href="#122" id="122">122</a> +<a href="#123" id="123">123</a> +<a href="#124" id="124">124</a> +<a href="#125" id="125">125</a> +<a href="#126" id="126">126</a> +<a href="#127" id="127">127</a> +<a href="#128" id="128">128</a> +<a href="#129" id="129">129</a> +<a href="#130" id="130">130</a> +<a href="#131" id="131">131</a> +<a href="#132" id="132">132</a> +<a href="#133" id="133">133</a> +<a href="#134" id="134">134</a> +<a href="#135" id="135">135</a> +<a href="#136" id="136">136</a> +<a href="#137" id="137">137</a> +<a href="#138" id="138">138</a> +<a href="#139" id="139">139</a> +<a href="#140" id="140">140</a> +<a href="#141" id="141">141</a> +<a href="#142" id="142">142</a> +<a href="#143" id="143">143</a> +<a href="#144" id="144">144</a> +<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> +<a href="#156" id="156">156</a> +<a href="#157" id="157">157</a> +<a href="#158" id="158">158</a> +<a href="#159" id="159">159</a> +<a href="#160" id="160">160</a> +<a href="#161" id="161">161</a> +<a href="#162" id="162">162</a> +<a href="#163" id="163">163</a> +<a href="#164" id="164">164</a> +<a href="#165" id="165">165</a> +<a href="#166" id="166">166</a> +<a href="#167" id="167">167</a> +<a href="#168" id="168">168</a> +<a href="#169" id="169">169</a> +<a href="#170" id="170">170</a> +<a href="#171" id="171">171</a> +<a href="#172" id="172">172</a> +<a href="#173" id="173">173</a> +<a href="#174" id="174">174</a> +<a href="#175" id="175">175</a> +<a href="#176" id="176">176</a> +<a href="#177" id="177">177</a> +<a href="#178" id="178">178</a> +<a href="#179" id="179">179</a> +<a href="#180" id="180">180</a> +<a href="#181" id="181">181</a> +<a href="#182" id="182">182</a> +<a href="#183" id="183">183</a> +<a href="#184" id="184">184</a> +<a href="#185" id="185">185</a> +<a href="#186" id="186">186</a> +<a href="#187" id="187">187</a> +<a href="#188" id="188">188</a> +<a href="#189" id="189">189</a> +<a href="#190" id="190">190</a> +<a href="#191" id="191">191</a> +<a href="#192" id="192">192</a> +<a href="#193" id="193">193</a> +<a href="#194" id="194">194</a> +<a href="#195" id="195">195</a> +<a href="#196" id="196">196</a> +<a href="#197" id="197">197</a> +<a href="#198" id="198">198</a> +<a href="#199" id="199">199</a> +<a href="#200" id="200">200</a> +<a href="#201" id="201">201</a> +<a href="#202" id="202">202</a> +<a href="#203" id="203">203</a> +<a href="#204" id="204">204</a> +<a href="#205" id="205">205</a> +<a href="#206" id="206">206</a> +<a href="#207" id="207">207</a> +<a href="#208" id="208">208</a> +<a href="#209" id="209">209</a> +<a href="#210" id="210">210</a> +<a href="#211" id="211">211</a> +<a href="#212" id="212">212</a> +<a href="#213" id="213">213</a> +<a href="#214" id="214">214</a> +<a href="#215" id="215">215</a> +<a href="#216" id="216">216</a> +<a href="#217" id="217">217</a> +<a href="#218" id="218">218</a> +<a href="#219" id="219">219</a> +<a href="#220" id="220">220</a> +<a href="#221" id="221">221</a> +<a href="#222" id="222">222</a> +<a href="#223" id="223">223</a> +<a href="#224" id="224">224</a> +<a href="#225" id="225">225</a> +<a href="#226" id="226">226</a> +<a href="#227" id="227">227</a> +<a href="#228" id="228">228</a> +<a href="#229" id="229">229</a> +<a href="#230" id="230">230</a> +<a href="#231" id="231">231</a> +<a href="#232" id="232">232</a> +<a href="#233" id="233">233</a> +<a href="#234" id="234">234</a> +<a href="#235" id="235">235</a> +<a href="#236" id="236">236</a> +<a href="#237" id="237">237</a> +<a href="#238" id="238">238</a> +<a href="#239" id="239">239</a> +<a href="#240" id="240">240</a> +<a href="#241" id="241">241</a> +<a href="#242" id="242">242</a> +<a href="#243" id="243">243</a> +<a href="#244" id="244">244</a> +<a href="#245" id="245">245</a> +<a href="#246" id="246">246</a> +<a href="#247" id="247">247</a> +<a href="#248" id="248">248</a> +<a href="#249" id="249">249</a> +<a href="#250" id="250">250</a> +<a href="#251" id="251">251</a> +<a href="#252" id="252">252</a> +<a href="#253" id="253">253</a> +<a href="#254" id="254">254</a> +<a href="#255" id="255">255</a> +<a href="#256" id="256">256</a> +<a href="#257" id="257">257</a> +<a href="#258" id="258">258</a> +<a href="#259" id="259">259</a> +<a href="#260" id="260">260</a> +<a href="#261" id="261">261</a> +<a href="#262" id="262">262</a> +<a href="#263" id="263">263</a> +<a href="#264" id="264">264</a> +<a href="#265" id="265">265</a> +<a href="#266" id="266">266</a> +<a href="#267" id="267">267</a> +<a href="#268" id="268">268</a> +<a href="#269" id="269">269</a> +<a href="#270" id="270">270</a> +<a href="#271" id="271">271</a> +<a href="#272" id="272">272</a> +<a href="#273" id="273">273</a> +<a href="#274" id="274">274</a> +<a href="#275" id="275">275</a> +<a href="#276" id="276">276</a> +<a href="#277" id="277">277</a> +<a href="#278" id="278">278</a> +<a href="#279" id="279">279</a> +<a href="#280" id="280">280</a> +<a href="#281" id="281">281</a> +<a href="#282" id="282">282</a> +<a href="#283" id="283">283</a> +<a href="#284" id="284">284</a> +<a href="#285" id="285">285</a> +<a href="#286" id="286">286</a> +<a href="#287" id="287">287</a> +<a href="#288" id="288">288</a> +<a href="#289" id="289">289</a> +<a href="#290" id="290">290</a> +<a href="#291" id="291">291</a> +<a href="#292" id="292">292</a> +<a href="#293" id="293">293</a> +<a href="#294" id="294">294</a> +<a href="#295" id="295">295</a> +<a href="#296" id="296">296</a> +<a href="#297" id="297">297</a> +<a href="#298" id="298">298</a> +<a href="#299" id="299">299</a> +<a href="#300" id="300">300</a> +<a href="#301" id="301">301</a> +<a href="#302" id="302">302</a> +<a href="#303" id="303">303</a> +<a href="#304" id="304">304</a> +<a href="#305" id="305">305</a> +<a href="#306" id="306">306</a> +<a href="#307" id="307">307</a> +<a href="#308" id="308">308</a> +<a href="#309" id="309">309</a> +<a href="#310" id="310">310</a> +<a href="#311" id="311">311</a> +<a href="#312" id="312">312</a> +<a href="#313" id="313">313</a> +<a href="#314" id="314">314</a> +<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> +</pre></div><pre class="rust"><code><span class="doccomment">//! The `x64` jit assembler. + +</span><span class="kw">use crate</span>::<span class="kw-2">*</span>; +<span class="kw">use </span>imm::Imm; +<span class="kw">use </span>reg::Reg; + +<span class="doccomment">/// Encode the `REX` byte. +</span><span class="kw">const fn </span>rex(w: bool, r: u8, x: u8, b: u8) -> u8 { + <span class="kw">let </span>w = <span class="kw">if </span>w { <span class="number">1 </span>} <span class="kw">else </span>{ <span class="number">0 </span>}; + <span class="kw">let </span>r = (r >> <span class="number">3</span>) & <span class="number">1</span>; + <span class="kw">let </span>x = (x >> <span class="number">3</span>) & <span class="number">1</span>; + <span class="kw">let </span>b = (b >> <span class="number">3</span>) & <span class="number">1</span>; + <span class="number">0b0100_0000 </span>| ((w & <span class="number">1</span>) << <span class="number">3</span>) | (r << <span class="number">2</span>) | (x << <span class="number">1</span>) | b +} + +<span class="doccomment">/// Encode the `ModR/M` byte. +</span><span class="kw">const fn </span>modrm(mod_: u8, reg: u8, rm: u8) -> u8 { + ((mod_ & <span class="number">0b11</span>) << <span class="number">6</span>) | ((reg & <span class="number">0b111</span>) << <span class="number">3</span>) | (rm & <span class="number">0b111</span>) +} + +<span class="doccomment">/// `x64` jit assembler. +</span><span class="kw">pub struct </span>Asm { + buf: Vec<u8>, +} + +<span class="kw">impl </span>Asm { + <span class="doccomment">/// Create a new `x64` jit assembler. + </span><span class="kw">pub fn </span>new() -> Asm { + <span class="comment">// Some random default capacity. + </span><span class="kw">let </span>buf = Vec::with_capacity(<span class="number">1024</span>); + Asm { buf } + } + + <span class="doccomment">/// Consume the assembler and get the emitted code. + </span><span class="kw">pub fn </span>into_code(<span class="self">self</span>) -> Vec<u8> { + <span class="self">self</span>.buf + } + + <span class="doccomment">/// Emit a slice of bytes. + </span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn </span>emit(<span class="kw-2">&mut </span><span class="self">self</span>, bytes: <span class="kw-2">&</span>[u8]) { + <span class="self">self</span>.buf.extend_from_slice(bytes); + } + + <span class="doccomment">/// Emit a slice of optional bytes. + </span><span class="kw">fn </span>emit_optional(<span class="kw-2">&mut </span><span class="self">self</span>, bytes: <span class="kw-2">&</span>[<span class="prelude-ty">Option</span><u8>]) { + <span class="kw">for </span>byte <span class="kw">in </span>bytes.iter().filter_map(|<span class="kw-2">&</span>b| b) { + <span class="self">self</span>.buf.push(byte); + } + } + + <span class="doccomment">/// Emit a slice of bytes at `pos`. + /// + /// # Panics + /// + /// Panics if [pos..pos+len] indexes out of bound of the underlying code buffer. + </span><span class="kw">fn </span>emit_at(<span class="kw-2">&mut </span><span class="self">self</span>, pos: usize, bytes: <span class="kw-2">&</span>[u8]) { + <span class="kw">if let </span><span class="prelude-val">Some</span>(buf) = <span class="self">self</span>.buf.get_mut(pos..pos + bytes.len()) { + buf.copy_from_slice(bytes); + } <span class="kw">else </span>{ + <span class="macro">unimplemented!</span>(); + } + } + + <span class="doccomment">/// Bind the [Label] to the current location. + </span><span class="kw">pub fn </span>bind(<span class="kw-2">&mut </span><span class="self">self</span>, label: <span class="kw-2">&mut </span>Label) { + <span class="comment">// Bind the label to the current offset. + </span>label.bind(<span class="self">self</span>.buf.len()); + + <span class="comment">// Resolve any pending relocations for the label. + </span><span class="self">self</span>.resolve(label); + } + + <span class="doccomment">/// If the [Label] is bound, patch any pending relocation. + </span><span class="kw">fn </span>resolve(<span class="kw-2">&mut </span><span class="self">self</span>, label: <span class="kw-2">&mut </span>Label) { + <span class="kw">if let </span><span class="prelude-val">Some</span>(loc) = label.location() { + <span class="comment">// For now we only support disp32 as label location. + </span><span class="kw">let </span>loc = i32::try_from(loc).expect(<span class="string">"Label location did not fit into i32."</span>); + + <span class="comment">// Resolve any pending relocations for the label. + </span><span class="kw">for </span>off <span class="kw">in </span>label.offsets_mut().drain() { + <span class="comment">// Displacement is relative to the next instruction following the jump. + // We record the offset to patch at the first byte of the disp32 therefore we need + // to account for that in the disp computation. + </span><span class="kw">let </span>disp32 = loc - i32::try_from(off).expect(<span class="string">"Label offset did not fit into i32"</span>) - <span class="number">4 </span><span class="comment">/* account for the disp32 */</span>; + + <span class="comment">// Patch the relocation with the disp32. + </span><span class="self">self</span>.emit_at(off, <span class="kw-2">&</span>disp32.to_ne_bytes()); + } + } + } + + <span class="comment">// -- Encode utilities. + + </span><span class="doccomment">/// Encode an register-register instruction. + </span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn </span>encode_rr<T: Reg>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, op1: T, op2: T) + <span class="kw">where + </span><span class="self">Self</span>: EncodeRR<T>, + { + <span class="comment">// MR operand encoding. + // op1 -> modrm.rm + // op2 -> modrm.reg + </span><span class="kw">let </span>modrm = modrm( + <span class="number">0b11</span>, <span class="comment">/* mod */ + </span>op2.idx(), <span class="comment">/* reg */ + </span>op1.idx(), <span class="comment">/* rm */ + </span>); + + <span class="kw">let </span>prefix = <<span class="self">Self </span><span class="kw">as </span>EncodeRR<T>>::legacy_prefix(); + <span class="kw">let </span>rex = <<span class="self">Self </span><span class="kw">as </span>EncodeRR<T>>::rex(op1, op2); + + <span class="self">self</span>.emit_optional(<span class="kw-2">&</span>[prefix, rex]); + <span class="self">self</span>.emit(<span class="kw-2">&</span>[opc, modrm]); + } + + <span class="doccomment">/// Encode an offset-immediate instruction. + /// Register idx is encoded in the opcode. + </span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn </span>encode_oi<T: Reg, U: Imm>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, op1: T, op2: U) + <span class="kw">where + </span><span class="self">Self</span>: EncodeR<T>, + { + <span class="kw">let </span>opc = opc + (op1.idx() & <span class="number">0b111</span>); + <span class="kw">let </span>prefix = <<span class="self">Self </span><span class="kw">as </span>EncodeR<T>>::legacy_prefix(); + <span class="kw">let </span>rex = <<span class="self">Self </span><span class="kw">as </span>EncodeR<T>>::rex(op1); + + <span class="self">self</span>.emit_optional(<span class="kw-2">&</span>[prefix, rex]); + <span class="self">self</span>.emit(<span class="kw-2">&</span>[opc]); + <span class="self">self</span>.emit(op2.bytes()); + } + + <span class="doccomment">/// Encode a register instruction. + </span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn </span>encode_r<T: Reg>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, opc_ext: u8, op1: T) + <span class="kw">where + </span><span class="self">Self</span>: EncodeR<T>, + { + <span class="comment">// M operand encoding. + // op1 -> modrm.rm + // opc extension -> modrm.reg + </span><span class="kw">let </span>modrm = modrm( + <span class="number">0b11</span>, <span class="comment">/* mod */ + </span>opc_ext, <span class="comment">/* reg */ + </span>op1.idx(), <span class="comment">/* rm */ + </span>); + + <span class="kw">let </span>prefix = <<span class="self">Self </span><span class="kw">as </span>EncodeR<T>>::legacy_prefix(); + <span class="kw">let </span>rex = <<span class="self">Self </span><span class="kw">as </span>EncodeR<T>>::rex(op1); + + <span class="self">self</span>.emit_optional(<span class="kw-2">&</span>[prefix, rex]); + <span class="self">self</span>.emit(<span class="kw-2">&</span>[opc, modrm]); + } + + <span class="doccomment">/// Encode a memory-immediate instruction. + </span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn </span>encode_mi<T: Imm>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, opc_ext: u8, op1: MemOp, op2: T) + <span class="kw">where + </span><span class="self">Self</span>: EncodeMI<T>, + { + <span class="comment">// MI operand encoding. + // op1 -> modrm.rm + // op2 -> imm + </span><span class="kw">let </span>mode = <span class="kw">match </span>op1 { + MemOp::Indirect(..) => { + <span class="macro">assert!</span>(!op1.base().need_sib() && !op1.base().is_pc_rel()); + <span class="number">0b00 + </span>} + MemOp::IndirectDisp(..) => { + <span class="macro">assert!</span>(!op1.base().need_sib()); + <span class="number">0b10 + </span>} + }; + + <span class="kw">let </span>modrm = modrm( + mode, <span class="comment">/* mode */ + </span>opc_ext, <span class="comment">/* reg */ + </span>op1.base().idx(), <span class="comment">/* rm */ + </span>); + + <span class="kw">let </span>prefix = <<span class="self">Self </span><span class="kw">as </span>EncodeMI<T>>::legacy_prefix(); + <span class="kw">let </span>rex = <<span class="self">Self </span><span class="kw">as </span>EncodeMI<T>>::rex(<span class="kw-2">&</span>op1); + + <span class="self">self</span>.emit_optional(<span class="kw-2">&</span>[prefix, rex]); + <span class="self">self</span>.emit(<span class="kw-2">&</span>[opc, modrm]); + <span class="kw">if let </span>MemOp::IndirectDisp(<span class="kw">_</span>, disp) = op1 { + <span class="self">self</span>.emit(<span class="kw-2">&</span>disp.to_ne_bytes()); + } + <span class="self">self</span>.emit(op2.bytes()); + } + + <span class="doccomment">/// Encode a memory-register instruction. + </span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn </span>encode_mr<T: Reg>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, op1: MemOp, op2: T) + <span class="kw">where + </span><span class="self">Self</span>: EncodeMR<T>, + { + <span class="comment">// MR operand encoding. + // op1 -> modrm.rm + // op2 -> modrm.reg + </span><span class="kw">let </span>mode = <span class="kw">match </span>op1 { + MemOp::Indirect(..) => { + <span class="macro">assert!</span>(!op1.base().need_sib() && !op1.base().is_pc_rel()); + <span class="number">0b00 + </span>} + MemOp::IndirectDisp(..) => { + <span class="macro">assert!</span>(!op1.base().need_sib()); + <span class="number">0b10 + </span>} + }; + + <span class="kw">let </span>modrm = modrm( + mode, <span class="comment">/* mode */ + </span>op2.idx(), <span class="comment">/* reg */ + </span>op1.base().idx(), <span class="comment">/* rm */ + </span>); + <span class="kw">let </span>prefix = <<span class="self">Self </span><span class="kw">as </span>EncodeMR<T>>::legacy_prefix(); + <span class="kw">let </span>rex = <<span class="self">Self </span><span class="kw">as </span>EncodeMR<T>>::rex(<span class="kw-2">&</span>op1, op2); + + <span class="self">self</span>.emit_optional(<span class="kw-2">&</span>[prefix, rex]); + <span class="self">self</span>.emit(<span class="kw-2">&</span>[opc, modrm]); + <span class="kw">if let </span>MemOp::IndirectDisp(<span class="kw">_</span>, disp) = op1 { + <span class="self">self</span>.emit(<span class="kw-2">&</span>disp.to_ne_bytes()); + } + } + + <span class="doccomment">/// Encode a register-memory instruction. + </span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn </span>encode_rm<T: Reg>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, op1: T, op2: MemOp) + <span class="kw">where + </span><span class="self">Self</span>: EncodeMR<T>, + { + <span class="comment">// RM operand encoding. + // op1 -> modrm.reg + // op2 -> modrm.rm + </span><span class="self">self</span>.encode_mr(opc, op2, op1); + } + + <span class="doccomment">/// Encode a jump to label instruction. + </span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">fn </span>encode_jmp_label(<span class="kw-2">&mut </span><span class="self">self</span>, opc: <span class="kw-2">&</span>[u8], op1: <span class="kw-2">&mut </span>Label) { + <span class="comment">// Emit the opcode. + </span><span class="self">self</span>.emit(opc); + + <span class="comment">// Record relocation offset starting at the first byte of the disp32. + </span>op1.record_offset(<span class="self">self</span>.buf.len()); + + <span class="comment">// Emit a zeroed disp32, which serves as placeholder for the relocation. + // We currently only support disp32 jump targets. + </span><span class="self">self</span>.emit(<span class="kw-2">&</span>[<span class="number">0u8</span>; <span class="number">4</span>]); + + <span class="comment">// Resolve any pending relocations for the label. + </span><span class="self">self</span>.resolve(op1); + } +} + +<span class="comment">// -- Encoder helper. + +</span><span class="doccomment">/// Encode helper for register-register instructions. +</span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">trait </span>EncodeRR<T: Reg> { + <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { + <span class="prelude-val">None + </span>} + + <span class="kw">fn </span>rex(op1: T, op2: T) -> <span class="prelude-ty">Option</span><u8> { + <span class="kw">if </span>op1.need_rex() || op2.need_rex() { + <span class="prelude-val">Some</span>(rex(op1.rexw(), op2.idx(), <span class="number">0</span>, op1.idx())) + } <span class="kw">else </span>{ + <span class="prelude-val">None + </span>} + } +} + +<span class="kw">impl </span>EncodeRR<Reg8> <span class="kw">for </span>Asm {} +<span class="kw">impl </span>EncodeRR<Reg32> <span class="kw">for </span>Asm {} +<span class="kw">impl </span>EncodeRR<Reg16> <span class="kw">for </span>Asm { + <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { + <span class="prelude-val">Some</span>(<span class="number">0x66</span>) + } +} +<span class="kw">impl </span>EncodeRR<Reg64> <span class="kw">for </span>Asm {} + +<span class="doccomment">/// Encode helper for register instructions. +</span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">trait </span>EncodeR<T: Reg> { + <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { + <span class="prelude-val">None + </span>} + + <span class="kw">fn </span>rex(op1: T) -> <span class="prelude-ty">Option</span><u8> { + <span class="kw">if </span>op1.need_rex() { + <span class="prelude-val">Some</span>(rex(op1.rexw(), <span class="number">0</span>, <span class="number">0</span>, op1.idx())) + } <span class="kw">else </span>{ + <span class="prelude-val">None + </span>} + } +} + +<span class="kw">impl </span>EncodeR<Reg8> <span class="kw">for </span>Asm {} +<span class="kw">impl </span>EncodeR<Reg32> <span class="kw">for </span>Asm {} +<span class="kw">impl </span>EncodeR<Reg16> <span class="kw">for </span>Asm { + <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { + <span class="prelude-val">Some</span>(<span class="number">0x66</span>) + } +} +<span class="kw">impl </span>EncodeR<Reg64> <span class="kw">for </span>Asm {} + +<span class="doccomment">/// Encode helper for memory-register instructions. +</span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">trait </span>EncodeMR<T: Reg> { + <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { + <span class="prelude-val">None + </span>} + + <span class="kw">fn </span>rex(op1: <span class="kw-2">&</span>MemOp, op2: T) -> <span class="prelude-ty">Option</span><u8> { + <span class="kw">if </span>op2.need_rex() || (op1.base().is_ext()) { + <span class="prelude-val">Some</span>(rex(op2.rexw(), op2.idx(), <span class="number">0</span>, op1.base().idx())) + } <span class="kw">else </span>{ + <span class="prelude-val">None + </span>} + } +} + +<span class="kw">impl </span>EncodeMR<Reg8> <span class="kw">for </span>Asm {} +<span class="kw">impl </span>EncodeMR<Reg16> <span class="kw">for </span>Asm { + <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { + <span class="prelude-val">Some</span>(<span class="number">0x66</span>) + } +} +<span class="kw">impl </span>EncodeMR<Reg32> <span class="kw">for </span>Asm {} +<span class="kw">impl </span>EncodeMR<Reg64> <span class="kw">for </span>Asm {} + +<span class="doccomment">/// Encode helper for memory-immediate instructions. +</span><span class="kw">pub</span>(<span class="kw">crate</span>) <span class="kw">trait </span>EncodeMI<T: Imm> { + <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { + <span class="prelude-val">None + </span>} + + <span class="kw">fn </span>rex(op1: <span class="kw-2">&</span>MemOp) -> <span class="prelude-ty">Option</span><u8> { + <span class="kw">if </span>op1.base().is_ext() { + <span class="prelude-val">Some</span>(rex(<span class="bool-val">false</span>, <span class="number">0</span>, <span class="number">0</span>, op1.base().idx())) + } <span class="kw">else </span>{ + <span class="prelude-val">None + </span>} + } +} + +<span class="kw">impl </span>EncodeMI<Imm8> <span class="kw">for </span>Asm {} +<span class="kw">impl </span>EncodeMI<Imm16> <span class="kw">for </span>Asm { + <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { + <span class="prelude-val">Some</span>(<span class="number">0x66</span>) + } +} +<span class="kw">impl </span>EncodeMI<Imm32> <span class="kw">for </span>Asm {} +</code></pre></div></section></main></body></html>
\ No newline at end of file diff --git a/src/juicebox_asm/imm.rs.html b/src/juicebox_asm/imm.rs.html index 78f4a8b..e0b6592 100644 --- a/src/juicebox_asm/imm.rs.html +++ b/src/juicebox_asm/imm.rs.html @@ -48,6 +48,19 @@ <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> </pre></div><pre class="rust"><code><span class="doccomment">//! Definition of different immediate types which are used as input operands for various //! instructions. @@ -96,6 +109,19 @@ ); <span class="macro">impl_imm!</span>( <span class="doccomment">/// Type representing a 64 bit immediate. - </span>Imm64, <span class="number">8</span>, from: { u64, i64, u32, i32, u16, i16, u8, i8 } + </span>Imm64, <span class="number">8</span>, from: { u64, i64, u32, i32, u16, i16, u8, i8, usize, isize } ); + +<span class="attr">#[cfg(test)] +</span><span class="kw">mod </span>test { + <span class="kw">use super</span>::<span class="kw-2">*</span>; + <span class="kw">use </span>std::mem::size_of; + + <span class="attr">#[test] + </span><span class="kw">fn </span>test_usize_isize() { + <span class="comment">// Imm64 should not implementd from usize/isize if this fails. + </span><span class="macro">assert_eq!</span>(size_of::<usize>(), size_of::<Imm64>()); + <span class="macro">assert_eq!</span>(size_of::<isize>(), size_of::<Imm64>()); + } +} </code></pre></div></section></main></body></html>
\ No newline at end of file diff --git a/src/juicebox_asm/insn.rs.html b/src/juicebox_asm/insn.rs.html index 550a4ab..a367feb 100644 --- a/src/juicebox_asm/insn.rs.html +++ b/src/juicebox_asm/insn.rs.html @@ -59,6 +59,18 @@ <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> </pre></div><pre class="rust"><code><span class="doccomment">//! Trait definitions of various instructions. </span><span class="kw">mod </span>add; @@ -73,47 +85,59 @@ <span class="kw">mod </span>ret; <span class="kw">mod </span>test; -<span class="kw">pub trait </span>Add<T, U> { +<span class="doccomment">/// Trait for [`add`](https://www.felixcloutier.com/x86/add) instruction kinds. +</span><span class="kw">pub trait </span>Add<T, U> { <span class="doccomment">/// Emit an add instruction. </span><span class="kw">fn </span>add(<span class="kw-2">&mut </span><span class="self">self</span>, op1: T, op2: U); } -<span class="kw">pub trait </span>Call<T> { +<span class="doccomment">/// Trait for [`call`](https://www.felixcloutier.com/x86/call) instruction kinds. +</span><span class="kw">pub trait </span>Call<T> { <span class="doccomment">/// Emit a call instruction. </span><span class="kw">fn </span>call(<span class="kw-2">&mut </span><span class="self">self</span>, op1: T); } -<span class="kw">pub trait </span>Cmp<T, U> { - <span class="doccomment">/// Emit a compare call instruction. +<span class="doccomment">/// Trait for [`cmp`](https://www.felixcloutier.com/x86/cmp) instruction kinds. +</span><span class="kw">pub trait </span>Cmp<T, U> { + <span class="doccomment">/// Emit a compare instruction. + /// + /// Computes `op2 - op1` and sets the status flags in the same way as the `sub` instruction, + /// the result is discarded. </span><span class="kw">fn </span>cmp(<span class="kw-2">&mut </span><span class="self">self</span>, op1: T, op2: U); } -<span class="kw">pub trait </span>Dec<T> { +<span class="doccomment">/// Trait for [`dec`](https://www.felixcloutier.com/x86/dec) instruction kinds. +</span><span class="kw">pub trait </span>Dec<T> { <span class="doccomment">/// Emit a decrement instruction. </span><span class="kw">fn </span>dec(<span class="kw-2">&mut </span><span class="self">self</span>, op1: T); } -<span class="kw">pub trait </span>Jmp<T> { +<span class="doccomment">/// Trait for [`jmp`](https://www.felixcloutier.com/x86/jmp) instruction kinds. +</span><span class="kw">pub trait </span>Jmp<T> { <span class="doccomment">/// Emit an unconditional jump instruction. </span><span class="kw">fn </span>jmp(<span class="kw-2">&mut </span><span class="self">self</span>, op1: T); } -<span class="kw">pub trait </span>Jnz<T> { +<span class="doccomment">/// Trait for [`jnz`](https://www.felixcloutier.com/x86/jcc) instruction kinds. +</span><span class="kw">pub trait </span>Jnz<T> { <span class="doccomment">/// Emit a conditional jump if not zero instruction (`ZF = 0`). </span><span class="kw">fn </span>jnz(<span class="kw-2">&mut </span><span class="self">self</span>, op1: T); } -<span class="kw">pub trait </span>Jz<T> { +<span class="doccomment">/// Trait for [`jz`](https://www.felixcloutier.com/x86/jcc) instruction kinds. +</span><span class="kw">pub trait </span>Jz<T> { <span class="doccomment">/// Emit a conditional jump if zero instruction (`ZF = 1`). </span><span class="kw">fn </span>jz(<span class="kw-2">&mut </span><span class="self">self</span>, op1: T); } -<span class="kw">pub trait </span>Mov<T, U> { +<span class="doccomment">/// Trait for [`mov`](https://www.felixcloutier.com/x86/mov) instruction kinds. +</span><span class="kw">pub trait </span>Mov<T, U> { <span class="doccomment">/// Emit an move instruction. </span><span class="kw">fn </span>mov(<span class="kw-2">&mut </span><span class="self">self</span>, op1: T, op2: U); } -<span class="kw">pub trait </span>Test<T, U> { +<span class="doccomment">/// Trait for [`test`](https://www.felixcloutier.com/x86/test) instruction kinds. +</span><span class="kw">pub trait </span>Test<T, U> { <span class="doccomment">/// Emit a logical compare instruction. /// /// Computes the bit-wise logical AND of first operand and the second operand and sets the diff --git a/src/juicebox_asm/insn/add.rs.html b/src/juicebox_asm/insn/add.rs.html index d7f968a..d7d8c39 100644 --- a/src/juicebox_asm/insn/add.rs.html +++ b/src/juicebox_asm/insn/add.rs.html @@ -23,7 +23,9 @@ <a href="#23" id="23">23</a> <a href="#24" id="24">24</a> <a href="#25" id="25">25</a> -</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">crate</span>::prelude::<span class="kw-2">*</span>; +<a href="#26" id="26">26</a> +</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">super</span>::Add; +<span class="kw">use crate</span>::{Asm, Imm16, MemOp, Reg16, Reg32, Reg64}; <span class="kw">impl </span>Add<Reg64, Reg64> <span class="kw">for </span>Asm { <span class="kw">fn </span>add(<span class="kw-2">&mut </span><span class="self">self</span>, op1: Reg64, op2: Reg64) { diff --git a/src/juicebox_asm/insn/call.rs.html b/src/juicebox_asm/insn/call.rs.html index f9649ed..e88996d 100644 --- a/src/juicebox_asm/insn/call.rs.html +++ b/src/juicebox_asm/insn/call.rs.html @@ -5,7 +5,9 @@ <a href="#5" id="5">5</a> <a href="#6" id="6">6</a> <a href="#7" id="7">7</a> -</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">crate</span>::prelude::<span class="kw-2">*</span>; +<a href="#8" id="8">8</a> +</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">super</span>::Call; +<span class="kw">use crate</span>::{Asm, Reg64}; <span class="kw">impl </span>Call<Reg64> <span class="kw">for </span>Asm { <span class="kw">fn </span>call(<span class="kw-2">&mut </span><span class="self">self</span>, op1: Reg64) { diff --git a/src/juicebox_asm/insn/cmp.rs.html b/src/juicebox_asm/insn/cmp.rs.html index b50d90d..4e28818 100644 --- a/src/juicebox_asm/insn/cmp.rs.html +++ b/src/juicebox_asm/insn/cmp.rs.html @@ -5,7 +5,9 @@ <a href="#5" id="5">5</a> <a href="#6" id="6">6</a> <a href="#7" id="7">7</a> -</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">crate</span>::prelude::<span class="kw-2">*</span>; +<a href="#8" id="8">8</a> +</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">super</span>::Cmp; +<span class="kw">use crate</span>::{Asm, Imm16, MemOp}; <span class="kw">impl </span>Cmp<MemOp, Imm16> <span class="kw">for </span>Asm { <span class="kw">fn </span>cmp(<span class="kw-2">&mut </span><span class="self">self</span>, op1: MemOp, op2: Imm16) { diff --git a/src/juicebox_asm/insn/dec.rs.html b/src/juicebox_asm/insn/dec.rs.html index 2afecd2..5a10063 100644 --- a/src/juicebox_asm/insn/dec.rs.html +++ b/src/juicebox_asm/insn/dec.rs.html @@ -11,7 +11,9 @@ <a href="#11" id="11">11</a> <a href="#12" id="12">12</a> <a href="#13" id="13">13</a> -</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">crate</span>::prelude::<span class="kw-2">*</span>; +<a href="#14" id="14">14</a> +</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">super</span>::Dec; +<span class="kw">use crate</span>::{Asm, Reg32, Reg64}; <span class="kw">impl </span>Dec<Reg64> <span class="kw">for </span>Asm { <span class="kw">fn </span>dec(<span class="kw-2">&mut </span><span class="self">self</span>, op1: Reg64) { diff --git a/src/juicebox_asm/insn/jmp.rs.html b/src/juicebox_asm/insn/jmp.rs.html index 55da0e3..e0167e3 100644 --- a/src/juicebox_asm/insn/jmp.rs.html +++ b/src/juicebox_asm/insn/jmp.rs.html @@ -5,7 +5,9 @@ <a href="#5" id="5">5</a> <a href="#6" id="6">6</a> <a href="#7" id="7">7</a> -</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">crate</span>::prelude::<span class="kw-2">*</span>; +<a href="#8" id="8">8</a> +</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">super</span>::Jmp; +<span class="kw">use crate</span>::{Asm, Label}; <span class="kw">impl </span>Jmp<<span class="kw-2">&mut </span>Label> <span class="kw">for </span>Asm { <span class="kw">fn </span>jmp(<span class="kw-2">&mut </span><span class="self">self</span>, op1: <span class="kw-2">&mut </span>Label) { diff --git a/src/juicebox_asm/insn/jnz.rs.html b/src/juicebox_asm/insn/jnz.rs.html index 45fb92d..be0062d 100644 --- a/src/juicebox_asm/insn/jnz.rs.html +++ b/src/juicebox_asm/insn/jnz.rs.html @@ -5,7 +5,9 @@ <a href="#5" id="5">5</a> <a href="#6" id="6">6</a> <a href="#7" id="7">7</a> -</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">crate</span>::prelude::<span class="kw-2">*</span>; +<a href="#8" id="8">8</a> +</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">super</span>::Jnz; +<span class="kw">use crate</span>::{Asm, Label}; <span class="kw">impl </span>Jnz<<span class="kw-2">&mut </span>Label> <span class="kw">for </span>Asm { <span class="kw">fn </span>jnz(<span class="kw-2">&mut </span><span class="self">self</span>, op1: <span class="kw-2">&mut </span>Label) { diff --git a/src/juicebox_asm/insn/jz.rs.html b/src/juicebox_asm/insn/jz.rs.html index 4b17a71..e4197af 100644 --- a/src/juicebox_asm/insn/jz.rs.html +++ b/src/juicebox_asm/insn/jz.rs.html @@ -5,7 +5,9 @@ <a href="#5" id="5">5</a> <a href="#6" id="6">6</a> <a href="#7" id="7">7</a> -</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">crate</span>::prelude::<span class="kw-2">*</span>; +<a href="#8" id="8">8</a> +</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">super</span>::Jz; +<span class="kw">use crate</span>::{Asm, Label}; <span class="kw">impl </span>Jz<<span class="kw-2">&mut </span>Label> <span class="kw">for </span>Asm { <span class="kw">fn </span>jz(<span class="kw-2">&mut </span><span class="self">self</span>, op1: <span class="kw-2">&mut </span>Label) { diff --git a/src/juicebox_asm/insn/mov.rs.html b/src/juicebox_asm/insn/mov.rs.html index 7be5d09..1e672a1 100644 --- a/src/juicebox_asm/insn/mov.rs.html +++ b/src/juicebox_asm/insn/mov.rs.html @@ -111,7 +111,9 @@ <a href="#111" id="111">111</a> <a href="#112" id="112">112</a> <a href="#113" id="113">113</a> -</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">crate</span>::prelude::<span class="kw-2">*</span>; +<a href="#114" id="114">114</a> +</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">super</span>::Mov; +<span class="kw">use crate</span>::{Asm, Imm16, Imm32, Imm64, Imm8, MemOp, Reg16, Reg32, Reg64, Reg8}; <span class="comment">// -- MOV : reg reg diff --git a/src/juicebox_asm/insn/nop.rs.html b/src/juicebox_asm/insn/nop.rs.html index accc13a..c3c264b 100644 --- a/src/juicebox_asm/insn/nop.rs.html +++ b/src/juicebox_asm/insn/nop.rs.html @@ -5,10 +5,12 @@ <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> </pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">crate</span>::Asm; <span class="kw">impl </span>Asm { - <span class="kw">pub fn </span>nop(<span class="kw-2">&mut </span><span class="self">self</span>) { + <span class="doccomment">/// Emit a [`nop`](https://www.felixcloutier.com/x86/nop) instruction. + </span><span class="kw">pub fn </span>nop(<span class="kw-2">&mut </span><span class="self">self</span>) { <span class="self">self</span>.emit(<span class="kw-2">&</span>[<span class="number">0x90</span>]); } } diff --git a/src/juicebox_asm/insn/ret.rs.html b/src/juicebox_asm/insn/ret.rs.html index 97070e8..26e3a47 100644 --- a/src/juicebox_asm/insn/ret.rs.html +++ b/src/juicebox_asm/insn/ret.rs.html @@ -5,10 +5,12 @@ <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> </pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">crate</span>::Asm; <span class="kw">impl </span>Asm { - <span class="kw">pub fn </span>ret(<span class="kw-2">&mut </span><span class="self">self</span>) { + <span class="doccomment">/// Emit a [`ret`](https://www.felixcloutier.com/x86/ret) instruction. + </span><span class="kw">pub fn </span>ret(<span class="kw-2">&mut </span><span class="self">self</span>) { <span class="self">self</span>.emit(<span class="kw-2">&</span>[<span class="number">0xc3</span>]); } } diff --git a/src/juicebox_asm/insn/test.rs.html b/src/juicebox_asm/insn/test.rs.html index d636920..0f1d8da 100644 --- a/src/juicebox_asm/insn/test.rs.html +++ b/src/juicebox_asm/insn/test.rs.html @@ -17,7 +17,9 @@ <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><span class="kw">crate</span>::prelude::<span class="kw-2">*</span>; +<a href="#20" id="20">20</a> +</pre></div><pre class="rust"><code><span class="kw">use </span><span class="kw">super</span>::Test; +<span class="kw">use crate</span>::{Asm, Imm16, MemOp, Reg32, Reg64}; <span class="kw">impl </span>Test<Reg64, Reg64> <span class="kw">for </span>Asm { <span class="kw">fn </span>test(<span class="kw-2">&mut </span><span class="self">self</span>, op1: Reg64, op2: Reg64) { diff --git a/src/juicebox_asm/label.rs.html b/src/juicebox_asm/label.rs.html index e209289..29d236e 100644 --- a/src/juicebox_asm/label.rs.html +++ b/src/juicebox_asm/label.rs.html @@ -80,6 +80,7 @@ <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> </pre></div><pre class="rust"><code><span class="doccomment">//! Definition of the lable type which can be used as jump target and can be bound to a location in //! the emitted code. @@ -88,7 +89,8 @@ <span class="doccomment">/// A label which is used as target for jump instructions. /// /// ```rust -/// use juicebox_asm::prelude::*; +/// use juicebox_asm::{Asm, Label, Reg64}; +/// use juicebox_asm::insn::{Mov, Jmp}; /// /// let mut lbl = Label::new(); /// let mut asm = Asm::new(); diff --git a/src/juicebox_asm/lib.rs.html b/src/juicebox_asm/lib.rs.html index 83c8f81..7d1bc0c 100644 --- a/src/juicebox_asm/lib.rs.html +++ b/src/juicebox_asm/lib.rs.html @@ -105,373 +105,12 @@ <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> -<a href="#110" id="110">110</a> -<a href="#111" id="111">111</a> -<a href="#112" id="112">112</a> -<a href="#113" id="113">113</a> -<a href="#114" id="114">114</a> -<a href="#115" id="115">115</a> -<a href="#116" id="116">116</a> -<a href="#117" id="117">117</a> -<a href="#118" id="118">118</a> -<a href="#119" id="119">119</a> -<a href="#120" id="120">120</a> -<a href="#121" id="121">121</a> -<a href="#122" id="122">122</a> -<a href="#123" id="123">123</a> -<a href="#124" id="124">124</a> -<a href="#125" id="125">125</a> -<a href="#126" id="126">126</a> -<a href="#127" id="127">127</a> -<a href="#128" id="128">128</a> -<a href="#129" id="129">129</a> -<a href="#130" id="130">130</a> -<a href="#131" id="131">131</a> -<a href="#132" id="132">132</a> -<a href="#133" id="133">133</a> -<a href="#134" id="134">134</a> -<a href="#135" id="135">135</a> -<a href="#136" id="136">136</a> -<a href="#137" id="137">137</a> -<a href="#138" id="138">138</a> -<a href="#139" id="139">139</a> -<a href="#140" id="140">140</a> -<a href="#141" id="141">141</a> -<a href="#142" id="142">142</a> -<a href="#143" id="143">143</a> -<a href="#144" id="144">144</a> -<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> -<a href="#156" id="156">156</a> -<a href="#157" id="157">157</a> -<a href="#158" id="158">158</a> -<a href="#159" id="159">159</a> -<a href="#160" id="160">160</a> -<a href="#161" id="161">161</a> -<a href="#162" id="162">162</a> -<a href="#163" id="163">163</a> -<a href="#164" id="164">164</a> -<a href="#165" id="165">165</a> -<a href="#166" id="166">166</a> -<a href="#167" id="167">167</a> -<a href="#168" id="168">168</a> -<a href="#169" id="169">169</a> -<a href="#170" id="170">170</a> -<a href="#171" id="171">171</a> -<a href="#172" id="172">172</a> -<a href="#173" id="173">173</a> -<a href="#174" id="174">174</a> -<a href="#175" id="175">175</a> -<a href="#176" id="176">176</a> -<a href="#177" id="177">177</a> -<a href="#178" id="178">178</a> -<a href="#179" id="179">179</a> -<a href="#180" id="180">180</a> -<a href="#181" id="181">181</a> -<a href="#182" id="182">182</a> -<a href="#183" id="183">183</a> -<a href="#184" id="184">184</a> -<a href="#185" id="185">185</a> -<a href="#186" id="186">186</a> -<a href="#187" id="187">187</a> -<a href="#188" id="188">188</a> -<a href="#189" id="189">189</a> -<a href="#190" id="190">190</a> -<a href="#191" id="191">191</a> -<a href="#192" id="192">192</a> -<a href="#193" id="193">193</a> -<a href="#194" id="194">194</a> -<a href="#195" id="195">195</a> -<a href="#196" id="196">196</a> -<a href="#197" id="197">197</a> -<a href="#198" id="198">198</a> -<a href="#199" id="199">199</a> -<a href="#200" id="200">200</a> -<a href="#201" id="201">201</a> -<a href="#202" id="202">202</a> -<a href="#203" id="203">203</a> -<a href="#204" id="204">204</a> -<a href="#205" id="205">205</a> -<a href="#206" id="206">206</a> -<a href="#207" id="207">207</a> -<a href="#208" id="208">208</a> -<a href="#209" id="209">209</a> -<a href="#210" id="210">210</a> -<a href="#211" id="211">211</a> -<a href="#212" id="212">212</a> -<a href="#213" id="213">213</a> -<a href="#214" id="214">214</a> -<a href="#215" id="215">215</a> -<a href="#216" id="216">216</a> -<a href="#217" id="217">217</a> -<a href="#218" id="218">218</a> -<a href="#219" id="219">219</a> -<a href="#220" id="220">220</a> -<a href="#221" id="221">221</a> -<a href="#222" id="222">222</a> -<a href="#223" id="223">223</a> -<a href="#224" id="224">224</a> -<a href="#225" id="225">225</a> -<a href="#226" id="226">226</a> -<a href="#227" id="227">227</a> -<a href="#228" id="228">228</a> -<a href="#229" id="229">229</a> -<a href="#230" id="230">230</a> -<a href="#231" id="231">231</a> -<a href="#232" id="232">232</a> -<a href="#233" id="233">233</a> -<a href="#234" id="234">234</a> -<a href="#235" id="235">235</a> -<a href="#236" id="236">236</a> -<a href="#237" id="237">237</a> -<a href="#238" id="238">238</a> -<a href="#239" id="239">239</a> -<a href="#240" id="240">240</a> -<a href="#241" id="241">241</a> -<a href="#242" id="242">242</a> -<a href="#243" id="243">243</a> -<a href="#244" id="244">244</a> -<a href="#245" id="245">245</a> -<a href="#246" id="246">246</a> -<a href="#247" id="247">247</a> -<a href="#248" id="248">248</a> -<a href="#249" id="249">249</a> -<a href="#250" id="250">250</a> -<a href="#251" id="251">251</a> -<a href="#252" id="252">252</a> -<a href="#253" id="253">253</a> -<a href="#254" id="254">254</a> -<a href="#255" id="255">255</a> -<a href="#256" id="256">256</a> -<a href="#257" id="257">257</a> -<a href="#258" id="258">258</a> -<a href="#259" id="259">259</a> -<a href="#260" id="260">260</a> -<a href="#261" id="261">261</a> -<a href="#262" id="262">262</a> -<a href="#263" id="263">263</a> -<a href="#264" id="264">264</a> -<a href="#265" id="265">265</a> -<a href="#266" id="266">266</a> -<a href="#267" id="267">267</a> -<a href="#268" id="268">268</a> -<a href="#269" id="269">269</a> -<a href="#270" id="270">270</a> -<a href="#271" id="271">271</a> -<a href="#272" id="272">272</a> -<a href="#273" id="273">273</a> -<a href="#274" id="274">274</a> -<a href="#275" id="275">275</a> -<a href="#276" id="276">276</a> -<a href="#277" id="277">277</a> -<a href="#278" id="278">278</a> -<a href="#279" id="279">279</a> -<a href="#280" id="280">280</a> -<a href="#281" id="281">281</a> -<a href="#282" id="282">282</a> -<a href="#283" id="283">283</a> -<a href="#284" id="284">284</a> -<a href="#285" id="285">285</a> -<a href="#286" id="286">286</a> -<a href="#287" id="287">287</a> -<a href="#288" id="288">288</a> -<a href="#289" id="289">289</a> -<a href="#290" id="290">290</a> -<a href="#291" id="291">291</a> -<a href="#292" id="292">292</a> -<a href="#293" id="293">293</a> -<a href="#294" id="294">294</a> -<a href="#295" id="295">295</a> -<a href="#296" id="296">296</a> -<a href="#297" id="297">297</a> -<a href="#298" id="298">298</a> -<a href="#299" id="299">299</a> -<a href="#300" id="300">300</a> -<a href="#301" id="301">301</a> -<a href="#302" id="302">302</a> -<a href="#303" id="303">303</a> -<a href="#304" id="304">304</a> -<a href="#305" id="305">305</a> -<a href="#306" id="306">306</a> -<a href="#307" id="307">307</a> -<a href="#308" id="308">308</a> -<a href="#309" id="309">309</a> -<a href="#310" id="310">310</a> -<a href="#311" id="311">311</a> -<a href="#312" id="312">312</a> -<a href="#313" id="313">313</a> -<a href="#314" id="314">314</a> -<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> -<a href="#374" id="374">374</a> -<a href="#375" id="375">375</a> -<a href="#376" id="376">376</a> -<a href="#377" id="377">377</a> -<a href="#378" id="378">378</a> -<a href="#379" id="379">379</a> -<a href="#380" id="380">380</a> -<a href="#381" id="381">381</a> -<a href="#382" id="382">382</a> -<a href="#383" id="383">383</a> -<a href="#384" id="384">384</a> -<a href="#385" id="385">385</a> -<a href="#386" id="386">386</a> -<a href="#387" id="387">387</a> -<a href="#388" id="388">388</a> -<a href="#389" id="389">389</a> -<a href="#390" id="390">390</a> -<a href="#391" id="391">391</a> -<a href="#392" id="392">392</a> -<a href="#393" id="393">393</a> -<a href="#394" id="394">394</a> -<a href="#395" id="395">395</a> -<a href="#396" id="396">396</a> -<a href="#397" id="397">397</a> -<a href="#398" id="398">398</a> -<a href="#399" id="399">399</a> -<a href="#400" id="400">400</a> -<a href="#401" id="401">401</a> -<a href="#402" id="402">402</a> -<a href="#403" id="403">403</a> -<a href="#404" id="404">404</a> -<a href="#405" id="405">405</a> -<a href="#406" id="406">406</a> -<a href="#407" id="407">407</a> -<a href="#408" id="408">408</a> -<a href="#409" id="409">409</a> -<a href="#410" id="410">410</a> -<a href="#411" id="411">411</a> -<a href="#412" id="412">412</a> -<a href="#413" id="413">413</a> -<a href="#414" id="414">414</a> -<a href="#415" id="415">415</a> -<a href="#416" id="416">416</a> -<a href="#417" id="417">417</a> -<a href="#418" id="418">418</a> -<a href="#419" id="419">419</a> -<a href="#420" id="420">420</a> -<a href="#421" id="421">421</a> -<a href="#422" id="422">422</a> -<a href="#423" id="423">423</a> -<a href="#424" id="424">424</a> -<a href="#425" id="425">425</a> -<a href="#426" id="426">426</a> -<a href="#427" id="427">427</a> -<a href="#428" id="428">428</a> -<a href="#429" id="429">429</a> -<a href="#430" id="430">430</a> -<a href="#431" id="431">431</a> -<a href="#432" id="432">432</a> -<a href="#433" id="433">433</a> -<a href="#434" id="434">434</a> -<a href="#435" id="435">435</a> -<a href="#436" id="436">436</a> -<a href="#437" id="437">437</a> -<a href="#438" id="438">438</a> -<a href="#439" id="439">439</a> -<a href="#440" id="440">440</a> -<a href="#441" id="441">441</a> -<a href="#442" id="442">442</a> -<a href="#443" id="443">443</a> -<a href="#444" id="444">444</a> -<a href="#445" id="445">445</a> -<a href="#446" id="446">446</a> -<a href="#447" id="447">447</a> -<a href="#448" id="448">448</a> -<a href="#449" id="449">449</a> -<a href="#450" id="450">450</a> -<a href="#451" id="451">451</a> -<a href="#452" id="452">452</a> -<a href="#453" id="453">453</a> -<a href="#454" id="454">454</a> -<a href="#455" id="455">455</a> -<a href="#456" id="456">456</a> -<a href="#457" id="457">457</a> -<a href="#458" id="458">458</a> -<a href="#459" id="459">459</a> -<a href="#460" id="460">460</a> -<a href="#461" id="461">461</a> -<a href="#462" id="462">462</a> -<a href="#463" id="463">463</a> -<a href="#464" id="464">464</a> -<a href="#465" id="465">465</a> -<a href="#466" id="466">466</a> -<a href="#467" id="467">467</a> -<a href="#468" id="468">468</a> -<a href="#469" id="469">469</a> </pre></div><pre class="rust"><code><span class="doccomment">//! A simple `x64` jit assembler with a minimal runtime to execute emitted code for fun. //! //! The following is an fibonacci example implementation. //! ```rust -//! use juicebox_asm::prelude::*; +//! use juicebox_asm::{Asm, Reg64, Imm64, Label}; +//! use juicebox_asm::insn::*; //! use juicebox_asm::Runtime; //! //! const fn fib_rs(n: u64) -> u64 { @@ -541,22 +180,20 @@ //! } //! ``` -</span><span class="kw">pub mod </span>prelude; - +</span><span class="kw">mod </span>asm; <span class="kw">mod </span>imm; -<span class="kw">mod </span>insn; <span class="kw">mod </span>label; <span class="kw">mod </span>reg; <span class="kw">mod </span>rt; +<span class="kw">pub mod </span>insn; + +<span class="kw">pub use </span>asm::Asm; <span class="kw">pub use </span>imm::{Imm16, Imm32, Imm64, Imm8}; <span class="kw">pub use </span>label::Label; <span class="kw">pub use </span>reg::{Reg16, Reg32, Reg64, Reg8}; <span class="kw">pub use </span>rt::Runtime; -<span class="kw">use </span>imm::Imm; -<span class="kw">use </span>reg::Reg; - <span class="doccomment">/// Type representing a memory operand. </span><span class="kw">pub enum </span>MemOp { <span class="doccomment">/// An indirect memory operand, eg `mov [rax], rcx`. @@ -575,365 +212,4 @@ } } } - -<span class="doccomment">/// Encode the `REX` byte. -</span><span class="kw">const fn </span>rex(w: bool, r: u8, x: u8, b: u8) -> u8 { - <span class="kw">let </span>w = <span class="kw">if </span>w { <span class="number">1 </span>} <span class="kw">else </span>{ <span class="number">0 </span>}; - <span class="kw">let </span>r = (r >> <span class="number">3</span>) & <span class="number">1</span>; - <span class="kw">let </span>x = (x >> <span class="number">3</span>) & <span class="number">1</span>; - <span class="kw">let </span>b = (b >> <span class="number">3</span>) & <span class="number">1</span>; - <span class="number">0b0100_0000 </span>| ((w & <span class="number">1</span>) << <span class="number">3</span>) | (r << <span class="number">2</span>) | (x << <span class="number">1</span>) | b -} - -<span class="doccomment">/// Encode the `ModR/M` byte. -</span><span class="kw">const fn </span>modrm(mod_: u8, reg: u8, rm: u8) -> u8 { - ((mod_ & <span class="number">0b11</span>) << <span class="number">6</span>) | ((reg & <span class="number">0b111</span>) << <span class="number">3</span>) | (rm & <span class="number">0b111</span>) -} - -<span class="doccomment">/// `x64` jit assembler. -</span><span class="kw">pub struct </span>Asm { - buf: Vec<u8>, -} - -<span class="kw">impl </span>Asm { - <span class="doccomment">/// Create a new `x64` jit assembler. - </span><span class="kw">pub fn </span>new() -> Asm { - <span class="comment">// Some random default capacity. - </span><span class="kw">let </span>buf = Vec::with_capacity(<span class="number">1024</span>); - Asm { buf } - } - - <span class="doccomment">/// Consume the assembler and get the emitted code. - </span><span class="kw">pub fn </span>into_code(<span class="self">self</span>) -> Vec<u8> { - <span class="self">self</span>.buf - } - - <span class="doccomment">/// Emit a slice of bytes. - </span><span class="kw">fn </span>emit(<span class="kw-2">&mut </span><span class="self">self</span>, bytes: <span class="kw-2">&</span>[u8]) { - <span class="self">self</span>.buf.extend_from_slice(bytes); - } - - <span class="doccomment">/// Emit a slice of optional bytes. - </span><span class="kw">fn </span>emit_optional(<span class="kw-2">&mut </span><span class="self">self</span>, bytes: <span class="kw-2">&</span>[<span class="prelude-ty">Option</span><u8>]) { - <span class="kw">for </span>byte <span class="kw">in </span>bytes.iter().filter_map(|<span class="kw-2">&</span>b| b) { - <span class="self">self</span>.buf.push(byte); - } - } - - <span class="doccomment">/// Emit a slice of bytes at `pos`. - /// - /// # Panics - /// - /// Panics if [pos..pos+len] indexes out of bound of the underlying code buffer. - </span><span class="kw">fn </span>emit_at(<span class="kw-2">&mut </span><span class="self">self</span>, pos: usize, bytes: <span class="kw-2">&</span>[u8]) { - <span class="kw">if let </span><span class="prelude-val">Some</span>(buf) = <span class="self">self</span>.buf.get_mut(pos..pos + bytes.len()) { - buf.copy_from_slice(bytes); - } <span class="kw">else </span>{ - <span class="macro">unimplemented!</span>(); - } - } - - <span class="doccomment">/// Bind the [Label] to the current location. - </span><span class="kw">pub fn </span>bind(<span class="kw-2">&mut </span><span class="self">self</span>, label: <span class="kw-2">&mut </span>Label) { - <span class="comment">// Bind the label to the current offset. - </span>label.bind(<span class="self">self</span>.buf.len()); - - <span class="comment">// Resolve any pending relocations for the label. - </span><span class="self">self</span>.resolve(label); - } - - <span class="doccomment">/// If the [Label] is bound, patch any pending relocation. - </span><span class="kw">pub fn </span>resolve(<span class="kw-2">&mut </span><span class="self">self</span>, label: <span class="kw-2">&mut </span>Label) { - <span class="kw">if let </span><span class="prelude-val">Some</span>(loc) = label.location() { - <span class="comment">// For now we only support disp32 as label location. - </span><span class="kw">let </span>loc = i32::try_from(loc).expect(<span class="string">"Label location did not fit into i32."</span>); - - <span class="comment">// Resolve any pending relocations for the label. - </span><span class="kw">for </span>off <span class="kw">in </span>label.offsets_mut().drain() { - <span class="comment">// Displacement is relative to the next instruction following the jump. - // We record the offset to patch at the first byte of the disp32 therefore we need - // to account for that in the disp computation. - </span><span class="kw">let </span>disp32 = loc - i32::try_from(off).expect(<span class="string">"Label offset did not fit into i32"</span>) - <span class="number">4 </span><span class="comment">/* account for the disp32 */</span>; - - <span class="comment">// Patch the relocation with the disp32. - </span><span class="self">self</span>.emit_at(off, <span class="kw-2">&</span>disp32.to_ne_bytes()); - } - } - } - - <span class="comment">// -- Encode utilities. - - </span><span class="doccomment">/// Encode an register-register instruction. - </span><span class="kw">fn </span>encode_rr<T: Reg>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, op1: T, op2: T) - <span class="kw">where - </span><span class="self">Self</span>: EncodeRR<T>, - { - <span class="comment">// MR operand encoding. - // op1 -> modrm.rm - // op2 -> modrm.reg - </span><span class="kw">let </span>modrm = modrm( - <span class="number">0b11</span>, <span class="comment">/* mod */ - </span>op2.idx(), <span class="comment">/* reg */ - </span>op1.idx(), <span class="comment">/* rm */ - </span>); - - <span class="kw">let </span>prefix = <<span class="self">Self </span><span class="kw">as </span>EncodeRR<T>>::legacy_prefix(); - <span class="kw">let </span>rex = <<span class="self">Self </span><span class="kw">as </span>EncodeRR<T>>::rex(op1, op2); - - <span class="self">self</span>.emit_optional(<span class="kw-2">&</span>[prefix, rex]); - <span class="self">self</span>.emit(<span class="kw-2">&</span>[opc, modrm]); - } - - <span class="doccomment">/// Encode an offset-immediate instruction. - /// Register idx is encoded in the opcode. - </span><span class="kw">fn </span>encode_oi<T: Reg, U: Imm>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, op1: T, op2: U) - <span class="kw">where - </span><span class="self">Self</span>: EncodeR<T>, - { - <span class="kw">let </span>opc = opc + (op1.idx() & <span class="number">0b111</span>); - <span class="kw">let </span>prefix = <<span class="self">Self </span><span class="kw">as </span>EncodeR<T>>::legacy_prefix(); - <span class="kw">let </span>rex = <<span class="self">Self </span><span class="kw">as </span>EncodeR<T>>::rex(op1); - - <span class="self">self</span>.emit_optional(<span class="kw-2">&</span>[prefix, rex]); - <span class="self">self</span>.emit(<span class="kw-2">&</span>[opc]); - <span class="self">self</span>.emit(op2.bytes()); - } - - <span class="doccomment">/// Encode a register-immediate instruction. - </span><span class="kw">fn </span>encode_ri<T: Reg, U: Imm>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, opc_ext: u8, op1: T, op2: U) - <span class="kw">where - </span><span class="self">Self</span>: EncodeR<T>, - { - <span class="comment">// MI operand encoding. - // op1 -> modrm.rm - // opc extension -> modrm.reg - </span><span class="kw">let </span>modrm = modrm( - <span class="number">0b11</span>, <span class="comment">/* mod */ - </span>opc_ext, <span class="comment">/* reg */ - </span>op1.idx(), <span class="comment">/* rm */ - </span>); - - <span class="kw">let </span>prefix = <<span class="self">Self </span><span class="kw">as </span>EncodeR<T>>::legacy_prefix(); - <span class="kw">let </span>rex = <<span class="self">Self </span><span class="kw">as </span>EncodeR<T>>::rex(op1); - - <span class="self">self</span>.emit_optional(<span class="kw-2">&</span>[prefix, rex]); - <span class="self">self</span>.emit(<span class="kw-2">&</span>[opc, modrm]); - <span class="self">self</span>.emit(op2.bytes()); - } - - <span class="doccomment">/// Encode a register instruction. - </span><span class="kw">fn </span>encode_r<T: Reg>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, opc_ext: u8, op1: T) - <span class="kw">where - </span><span class="self">Self</span>: EncodeR<T>, - { - <span class="comment">// M operand encoding. - // op1 -> modrm.rm - // opc extension -> modrm.reg - </span><span class="kw">let </span>modrm = modrm( - <span class="number">0b11</span>, <span class="comment">/* mod */ - </span>opc_ext, <span class="comment">/* reg */ - </span>op1.idx(), <span class="comment">/* rm */ - </span>); - - <span class="kw">let </span>prefix = <<span class="self">Self </span><span class="kw">as </span>EncodeR<T>>::legacy_prefix(); - <span class="kw">let </span>rex = <<span class="self">Self </span><span class="kw">as </span>EncodeR<T>>::rex(op1); - - <span class="self">self</span>.emit_optional(<span class="kw-2">&</span>[prefix, rex]); - <span class="self">self</span>.emit(<span class="kw-2">&</span>[opc, modrm]); - } - - <span class="doccomment">/// Encode a memory-immediate instruction. - </span><span class="kw">fn </span>encode_mi<T: Imm>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, opc_ext: u8, op1: MemOp, op2: T) - <span class="kw">where - </span><span class="self">Self</span>: EncodeMI<T>, - { - <span class="comment">// MI operand encoding. - // op1 -> modrm.rm - // op2 -> imm - </span><span class="kw">let </span>mode = <span class="kw">match </span>op1 { - MemOp::Indirect(..) => { - <span class="macro">assert!</span>(!op1.base().need_sib() && !op1.base().is_pc_rel()); - <span class="number">0b00 - </span>} - MemOp::IndirectDisp(..) => { - <span class="macro">assert!</span>(!op1.base().need_sib()); - <span class="number">0b10 - </span>} - }; - - <span class="kw">let </span>modrm = modrm( - mode, <span class="comment">/* mode */ - </span>opc_ext, <span class="comment">/* reg */ - </span>op1.base().idx(), <span class="comment">/* rm */ - </span>); - - <span class="kw">let </span>prefix = <<span class="self">Self </span><span class="kw">as </span>EncodeMI<T>>::legacy_prefix(); - <span class="kw">let </span>rex = <<span class="self">Self </span><span class="kw">as </span>EncodeMI<T>>::rex(<span class="kw-2">&</span>op1); - - <span class="self">self</span>.emit_optional(<span class="kw-2">&</span>[prefix, rex]); - <span class="self">self</span>.emit(<span class="kw-2">&</span>[opc, modrm]); - <span class="kw">if let </span>MemOp::IndirectDisp(<span class="kw">_</span>, disp) = op1 { - <span class="self">self</span>.emit(<span class="kw-2">&</span>disp.to_ne_bytes()); - } - <span class="self">self</span>.emit(op2.bytes()); - } - - <span class="doccomment">/// Encode a memory-register instruction. - </span><span class="kw">fn </span>encode_mr<T: Reg>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, op1: MemOp, op2: T) - <span class="kw">where - </span><span class="self">Self</span>: EncodeMR<T>, - { - <span class="comment">// MR operand encoding. - // op1 -> modrm.rm - // op2 -> modrm.reg - </span><span class="kw">let </span>mode = <span class="kw">match </span>op1 { - MemOp::Indirect(..) => { - <span class="macro">assert!</span>(!op1.base().need_sib() && !op1.base().is_pc_rel()); - <span class="number">0b00 - </span>} - MemOp::IndirectDisp(..) => { - <span class="macro">assert!</span>(!op1.base().need_sib()); - <span class="number">0b10 - </span>} - }; - - <span class="kw">let </span>modrm = modrm( - mode, <span class="comment">/* mode */ - </span>op2.idx(), <span class="comment">/* reg */ - </span>op1.base().idx(), <span class="comment">/* rm */ - </span>); - <span class="kw">let </span>prefix = <<span class="self">Self </span><span class="kw">as </span>EncodeMR<T>>::legacy_prefix(); - <span class="kw">let </span>rex = <<span class="self">Self </span><span class="kw">as </span>EncodeMR<T>>::rex(<span class="kw-2">&</span>op1, op2); - - <span class="self">self</span>.emit_optional(<span class="kw-2">&</span>[prefix, rex]); - <span class="self">self</span>.emit(<span class="kw-2">&</span>[opc, modrm]); - <span class="kw">if let </span>MemOp::IndirectDisp(<span class="kw">_</span>, disp) = op1 { - <span class="self">self</span>.emit(<span class="kw-2">&</span>disp.to_ne_bytes()); - } - } - - <span class="doccomment">/// Encode a register-memory instruction. - </span><span class="kw">fn </span>encode_rm<T: Reg>(<span class="kw-2">&mut </span><span class="self">self</span>, opc: u8, op1: T, op2: MemOp) - <span class="kw">where - </span><span class="self">Self</span>: EncodeMR<T>, - { - <span class="comment">// RM operand encoding. - // op1 -> modrm.reg - // op2 -> modrm.rm - </span><span class="self">self</span>.encode_mr(opc, op2, op1); - } - - <span class="doccomment">/// Encode a jump to label instruction. - </span><span class="kw">fn </span>encode_jmp_label(<span class="kw-2">&mut </span><span class="self">self</span>, opc: <span class="kw-2">&</span>[u8], op1: <span class="kw-2">&mut </span>Label) { - <span class="comment">// Emit the opcode. - </span><span class="self">self</span>.emit(opc); - - <span class="comment">// Record relocation offset starting at the first byte of the disp32. - </span>op1.record_offset(<span class="self">self</span>.buf.len()); - - <span class="comment">// Emit a zeroed disp32, which serves as placeholder for the relocation. - // We currently only support disp32 jump targets. - </span><span class="self">self</span>.emit(<span class="kw-2">&</span>[<span class="number">0u8</span>; <span class="number">4</span>]); - - <span class="comment">// Resolve any pending relocations for the label. - </span><span class="self">self</span>.resolve(op1); - } -} - -<span class="comment">// -- Encoder helper. - -</span><span class="doccomment">/// Encode helper for register-register instructions. -</span><span class="kw">trait </span>EncodeRR<T: Reg> { - <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { - <span class="prelude-val">None - </span>} - - <span class="kw">fn </span>rex(op1: T, op2: T) -> <span class="prelude-ty">Option</span><u8> { - <span class="kw">if </span>op1.need_rex() || op2.need_rex() { - <span class="prelude-val">Some</span>(rex(op1.rexw(), op2.idx(), <span class="number">0</span>, op1.idx())) - } <span class="kw">else </span>{ - <span class="prelude-val">None - </span>} - } -} - -<span class="kw">impl </span>EncodeRR<Reg8> <span class="kw">for </span>Asm {} -<span class="kw">impl </span>EncodeRR<Reg32> <span class="kw">for </span>Asm {} -<span class="kw">impl </span>EncodeRR<Reg16> <span class="kw">for </span>Asm { - <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { - <span class="prelude-val">Some</span>(<span class="number">0x66</span>) - } -} -<span class="kw">impl </span>EncodeRR<Reg64> <span class="kw">for </span>Asm {} - -<span class="doccomment">/// Encode helper for register instructions. -</span><span class="kw">trait </span>EncodeR<T: Reg> { - <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { - <span class="prelude-val">None - </span>} - - <span class="kw">fn </span>rex(op1: T) -> <span class="prelude-ty">Option</span><u8> { - <span class="kw">if </span>op1.need_rex() { - <span class="prelude-val">Some</span>(rex(op1.rexw(), <span class="number">0</span>, <span class="number">0</span>, op1.idx())) - } <span class="kw">else </span>{ - <span class="prelude-val">None - </span>} - } -} - -<span class="kw">impl </span>EncodeR<Reg8> <span class="kw">for </span>Asm {} -<span class="kw">impl </span>EncodeR<Reg32> <span class="kw">for </span>Asm {} -<span class="kw">impl </span>EncodeR<Reg16> <span class="kw">for </span>Asm { - <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { - <span class="prelude-val">Some</span>(<span class="number">0x66</span>) - } -} -<span class="kw">impl </span>EncodeR<Reg64> <span class="kw">for </span>Asm {} - -<span class="doccomment">/// Encode helper for memory-register instructions. -</span><span class="kw">trait </span>EncodeMR<T: Reg> { - <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { - <span class="prelude-val">None - </span>} - - <span class="kw">fn </span>rex(op1: <span class="kw-2">&</span>MemOp, op2: T) -> <span class="prelude-ty">Option</span><u8> { - <span class="kw">if </span>op2.need_rex() || (op1.base().is_ext()) { - <span class="prelude-val">Some</span>(rex(op2.rexw(), op2.idx(), <span class="number">0</span>, op1.base().idx())) - } <span class="kw">else </span>{ - <span class="prelude-val">None - </span>} - } -} - -<span class="kw">impl </span>EncodeMR<Reg8> <span class="kw">for </span>Asm {} -<span class="kw">impl </span>EncodeMR<Reg16> <span class="kw">for </span>Asm { - <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { - <span class="prelude-val">Some</span>(<span class="number">0x66</span>) - } -} -<span class="kw">impl </span>EncodeMR<Reg32> <span class="kw">for </span>Asm {} -<span class="kw">impl </span>EncodeMR<Reg64> <span class="kw">for </span>Asm {} - -<span class="doccomment">/// Encode helper for memory-immediate instructions. -</span><span class="kw">trait </span>EncodeMI<T: Imm> { - <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { - <span class="prelude-val">None - </span>} - - <span class="kw">fn </span>rex(op1: <span class="kw-2">&</span>MemOp) -> <span class="prelude-ty">Option</span><u8> { - <span class="kw">if </span>op1.base().is_ext() { - <span class="prelude-val">Some</span>(rex(<span class="bool-val">false</span>, <span class="number">0</span>, <span class="number">0</span>, op1.base().idx())) - } <span class="kw">else </span>{ - <span class="prelude-val">None - </span>} - } -} - -<span class="kw">impl </span>EncodeMI<Imm8> <span class="kw">for </span>Asm {} -<span class="kw">impl </span>EncodeMI<Imm16> <span class="kw">for </span>Asm { - <span class="kw">fn </span>legacy_prefix() -> <span class="prelude-ty">Option</span><u8> { - <span class="prelude-val">Some</span>(<span class="number">0x66</span>) - } -} -<span class="kw">impl </span>EncodeMI<Imm32> <span class="kw">for </span>Asm {} </code></pre></div></section></main></body></html>
\ No newline at end of file diff --git a/src/juicebox_asm/prelude.rs.html b/src/juicebox_asm/prelude.rs.html deleted file mode 100644 index e877286..0000000 --- a/src/juicebox_asm/prelude.rs.html +++ /dev/null @@ -1,21 +0,0 @@ -<!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 `src/prelude.rs`."><title>prelude.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/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="juicebox_asm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="../../static.files/src-script-3280b574d94e47b4.js"></script><script defer src="../../src-files.js"></script><script defer src="../../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-5d8b3c7633ad77ba.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><main><nav class="sub"><a class="sub-logo-container" href="../../juicebox_asm/index.html"><img class="rust-logo" src="../../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="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> -</pre></div><pre class="rust"><code><span class="doccomment">//! Crate prelude, which can be used to import the most important types at once. - -</span><span class="kw">pub use </span><span class="kw">crate</span>::Asm; -<span class="kw">pub use </span><span class="kw">crate</span>::MemOp; - -<span class="kw">pub use </span><span class="kw">crate</span>::imm::{Imm16, Imm32, Imm64, Imm8}; -<span class="kw">pub use </span><span class="kw">crate</span>::label::Label; -<span class="kw">pub use </span><span class="kw">crate</span>::reg::{Reg16, Reg32, Reg64, Reg8}; - -<span class="kw">pub use </span><span class="kw">crate</span>::insn::{Add, Call, Cmp, Dec, Jmp, Jnz, Jz, Mov, Test}; -</code></pre></div></section></main></body></html>
\ No newline at end of file diff --git a/src/juicebox_asm/reg.rs.html b/src/juicebox_asm/reg.rs.html index a511005..fe4b50c 100644 --- a/src/juicebox_asm/reg.rs.html +++ b/src/juicebox_asm/reg.rs.html @@ -302,36 +302,6 @@ <a href="#302" id="302">302</a> <a href="#303" id="303">303</a> <a href="#304" id="304">304</a> -<a href="#305" id="305">305</a> -<a href="#306" id="306">306</a> -<a href="#307" id="307">307</a> -<a href="#308" id="308">308</a> -<a href="#309" id="309">309</a> -<a href="#310" id="310">310</a> -<a href="#311" id="311">311</a> -<a href="#312" id="312">312</a> -<a href="#313" id="313">313</a> -<a href="#314" id="314">314</a> -<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> </pre></div><pre class="rust"><code><span class="doccomment">//! Definition of registers which are used as input operands for various instructions. /// Trait to interact with register operands. @@ -489,27 +459,21 @@ <span class="macro">assert_eq!</span>(r.idx(), idx); <span class="comment">// Check REX.W bit. - </span><span class="macro">assert_eq!</span>(r.rexw(), <span class="bool-val">false</span>); + </span><span class="macro">assert!</span>(!r.rexw()); <span class="comment">// Check need REX byte. - </span><span class="kw">let </span>rex = <span class="kw">match </span>r { - r8l | r9l | r10l | r11l | r12l | r13l | r14l | r15l | spl | bpl | sil | dil => <span class="bool-val">true</span>, - <span class="kw">_ </span>=> <span class="bool-val">false</span>, - }; + </span><span class="kw">let </span>rex = <span class="macro">matches!</span>( + r, + r8l | r9l | r10l | r11l | r12l | r13l | r14l | r15l | spl | bpl | sil | dil + ); <span class="macro">assert_eq!</span>(r.need_rex(), rex); <span class="comment">// Check need SIB byte. - </span><span class="kw">let </span>sib = <span class="kw">match </span>r { - spl | r12l | ah => <span class="bool-val">true</span>, - <span class="kw">_ </span>=> <span class="bool-val">false</span>, - }; + </span><span class="kw">let </span>sib = <span class="macro">matches!</span>(r, spl | r12l | ah); <span class="macro">assert_eq!</span>(r.need_sib(), sib); <span class="comment">// Check if is PC relative addressing. - </span><span class="kw">let </span>rel = <span class="kw">match </span>r { - bpl | r13l | ch => <span class="bool-val">true</span>, - <span class="kw">_ </span>=> <span class="bool-val">false</span>, - }; + </span><span class="kw">let </span>rel = <span class="macro">matches!</span>(r, bpl | r13l | ch); <span class="macro">assert_eq!</span>(r.is_pc_rel(), rel); } } @@ -541,27 +505,18 @@ <span class="macro">assert_eq!</span>(r.idx(), idx); <span class="comment">// Check REX.W bit. - </span><span class="macro">assert_eq!</span>(r.rexw(), <span class="bool-val">false</span>); + </span><span class="macro">assert!</span>(!r.rexw()); <span class="comment">// Check need REX byte. - </span><span class="kw">let </span>rex = <span class="kw">match </span>r { - r8w | r9w | r10w | r11w | r12w | r13w | r14w | r15w => <span class="bool-val">true</span>, - <span class="kw">_ </span>=> <span class="bool-val">false</span>, - }; + </span><span class="kw">let </span>rex = <span class="macro">matches!</span>(r, r8w | r9w | r10w | r11w | r12w | r13w | r14w | r15w); <span class="macro">assert_eq!</span>(r.need_rex(), rex); <span class="comment">// Check need SIB byte. - </span><span class="kw">let </span>sib = <span class="kw">match </span>r { - sp | r12w => <span class="bool-val">true</span>, - <span class="kw">_ </span>=> <span class="bool-val">false</span>, - }; + </span><span class="kw">let </span>sib = <span class="macro">matches!</span>(r, sp | r12w); <span class="macro">assert_eq!</span>(r.need_sib(), sib); <span class="comment">// Check if is PC relative addressing. - </span><span class="kw">let </span>rel = <span class="kw">match </span>r { - bp | r13w => <span class="bool-val">true</span>, - <span class="kw">_ </span>=> <span class="bool-val">false</span>, - }; + </span><span class="kw">let </span>rel = <span class="macro">matches!</span>(r, bp | r13w); <span class="macro">assert_eq!</span>(r.is_pc_rel(), rel); } } @@ -593,27 +548,18 @@ <span class="macro">assert_eq!</span>(r.idx(), idx); <span class="comment">// Check REX.W bit. - </span><span class="macro">assert_eq!</span>(r.rexw(), <span class="bool-val">false</span>); + </span><span class="macro">assert!</span>(!r.rexw()); <span class="comment">// Check need REX byte. - </span><span class="kw">let </span>rex = <span class="kw">match </span>r { - r8d | r9d | r10d | r11d | r12d | r13d | r14d | r15d => <span class="bool-val">true</span>, - <span class="kw">_ </span>=> <span class="bool-val">false</span>, - }; + </span><span class="kw">let </span>rex = <span class="macro">matches!</span>(r, r8d | r9d | r10d | r11d | r12d | r13d | r14d | r15d); <span class="macro">assert_eq!</span>(r.need_rex(), rex); <span class="comment">// Check need SIB byte. - </span><span class="kw">let </span>sib = <span class="kw">match </span>r { - esp | r12d => <span class="bool-val">true</span>, - <span class="kw">_ </span>=> <span class="bool-val">false</span>, - }; + </span><span class="kw">let </span>sib = <span class="macro">matches!</span>(r, esp | r12d); <span class="macro">assert_eq!</span>(r.need_sib(), sib); <span class="comment">// Check if is PC relative addressing. - </span><span class="kw">let </span>rel = <span class="kw">match </span>r { - ebp | r13d => <span class="bool-val">true</span>, - <span class="kw">_ </span>=> <span class="bool-val">false</span>, - }; + </span><span class="kw">let </span>rel = <span class="macro">matches!</span>(r, ebp | r13d); <span class="macro">assert_eq!</span>(r.is_pc_rel(), rel); } } @@ -645,23 +591,17 @@ <span class="macro">assert_eq!</span>(r.idx(), idx); <span class="comment">// Check REX.W bit. - </span><span class="macro">assert_eq!</span>(r.rexw(), <span class="bool-val">true</span>); + </span><span class="macro">assert!</span>(r.rexw()); <span class="comment">// Check need REX byte. - </span><span class="macro">assert_eq!</span>(r.need_rex(), <span class="bool-val">true</span>); + </span><span class="macro">assert!</span>(r.need_rex()); <span class="comment">// Check need SIB byte. - </span><span class="kw">let </span>sib = <span class="kw">match </span>r { - rsp | r12 => <span class="bool-val">true</span>, - <span class="kw">_ </span>=> <span class="bool-val">false</span>, - }; + </span><span class="kw">let </span>sib = <span class="macro">matches!</span>(r, rsp | r12); <span class="macro">assert_eq!</span>(r.need_sib(), sib); <span class="comment">// Check if is PC relative addressing. - </span><span class="kw">let </span>rel = <span class="kw">match </span>r { - rbp | r13 => <span class="bool-val">true</span>, - <span class="kw">_ </span>=> <span class="bool-val">false</span>, - }; + </span><span class="kw">let </span>rel = <span class="macro">matches!</span>(r, rbp | r13); <span class="macro">assert_eq!</span>(r.is_pc_rel(), rel); } } diff --git a/src/juicebox_asm/rt.rs.html b/src/juicebox_asm/rt.rs.html index 244be8b..efc55d3 100644 --- a/src/juicebox_asm/rt.rs.html +++ b/src/juicebox_asm/rt.rs.html @@ -86,10 +86,129 @@ <a href="#86" id="86">86</a> <a href="#87" id="87">87</a> <a href="#88" id="88">88</a> -</pre></div><pre class="rust"><code><span class="doccomment">//! A simple runtime which can be used to execute emitted instructions. +<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> +<a href="#110" id="110">110</a> +<a href="#111" id="111">111</a> +<a href="#112" id="112">112</a> +<a href="#113" id="113">113</a> +<a href="#114" id="114">114</a> +<a href="#115" id="115">115</a> +<a href="#116" id="116">116</a> +<a href="#117" id="117">117</a> +<a href="#118" id="118">118</a> +<a href="#119" id="119">119</a> +<a href="#120" id="120">120</a> +<a href="#121" id="121">121</a> +<a href="#122" id="122">122</a> +<a href="#123" id="123">123</a> +<a href="#124" id="124">124</a> +<a href="#125" id="125">125</a> +<a href="#126" id="126">126</a> +<a href="#127" id="127">127</a> +<a href="#128" id="128">128</a> +<a href="#129" id="129">129</a> +<a href="#130" id="130">130</a> +<a href="#131" id="131">131</a> +<a href="#132" id="132">132</a> +<a href="#133" id="133">133</a> +<a href="#134" id="134">134</a> +<a href="#135" id="135">135</a> +<a href="#136" id="136">136</a> +<a href="#137" id="137">137</a> +<a href="#138" id="138">138</a> +<a href="#139" id="139">139</a> +<a href="#140" id="140">140</a> +<a href="#141" id="141">141</a> +<a href="#142" id="142">142</a> +<a href="#143" id="143">143</a> +<a href="#144" id="144">144</a> +<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> +<a href="#156" id="156">156</a> +<a href="#157" id="157">157</a> +<a href="#158" id="158">158</a> +<a href="#159" id="159">159</a> +<a href="#160" id="160">160</a> +<a href="#161" id="161">161</a> +<a href="#162" id="162">162</a> +<a href="#163" id="163">163</a> +<a href="#164" id="164">164</a> +<a href="#165" id="165">165</a> +<a href="#166" id="166">166</a> +<a href="#167" id="167">167</a> +<a href="#168" id="168">168</a> +<a href="#169" id="169">169</a> +<a href="#170" id="170">170</a> +<a href="#171" id="171">171</a> +<a href="#172" id="172">172</a> +<a href="#173" id="173">173</a> +<a href="#174" id="174">174</a> +<a href="#175" id="175">175</a> +<a href="#176" id="176">176</a> +<a href="#177" id="177">177</a> +<a href="#178" id="178">178</a> +<a href="#179" id="179">179</a> +<a href="#180" id="180">180</a> +<a href="#181" id="181">181</a> +<a href="#182" id="182">182</a> +<a href="#183" id="183">183</a> +<a href="#184" id="184">184</a> +<a href="#185" id="185">185</a> +<a href="#186" id="186">186</a> +<a href="#187" id="187">187</a> +<a href="#188" id="188">188</a> +<a href="#189" id="189">189</a> +<a href="#190" id="190">190</a> +<a href="#191" id="191">191</a> +<a href="#192" id="192">192</a> +<a href="#193" id="193">193</a> +<a href="#194" id="194">194</a> +<a href="#195" id="195">195</a> +<a href="#196" id="196">196</a> +<a href="#197" id="197">197</a> +<a href="#198" id="198">198</a> +<a href="#199" id="199">199</a> +<a href="#200" id="200">200</a> +<a href="#201" id="201">201</a> +<a href="#202" id="202">202</a> +</pre></div><pre class="rust"><code><span class="doccomment">//! Simple `mmap`ed runtime. +//! +//! This runtime supports adding code to executable pages and turn the added code into user +//! specified function pointer. -</span><span class="kw">use </span>core::slice; -<span class="kw">use </span>nix::sys::mman::{mmap, mprotect, munmap, MapFlags, ProtFlags}; +</span><span class="kw">use </span>nix::sys::mman::{mmap, mprotect, munmap, MapFlags, ProtFlags}; + +<span class="attr">#[cfg(not(target_os = <span class="string">"linux"</span>))] +</span><span class="macro">compile_error!</span>(<span class="string">"This runtime is only supported on linux"</span>); <span class="doccomment">/// A simple `mmap`ed runtime with executable pages. </span><span class="kw">pub struct </span>Runtime { @@ -100,19 +219,23 @@ <span class="kw">impl </span>Runtime { <span class="doccomment">/// Create a new [Runtime]. + /// + /// # Panics + /// + /// Panics if the `mmap` call fails. </span><span class="kw">pub fn </span>new() -> Runtime { <span class="comment">// Allocate a single page. - </span><span class="kw">let </span>len = core::num::NonZeroUsize::new(<span class="number">4096</span>).unwrap(); + </span><span class="kw">let </span>len = core::num::NonZeroUsize::new(<span class="number">4096</span>).expect(<span class="string">"Value is non zero"</span>); <span class="kw">let </span>buf = <span class="kw">unsafe </span>{ mmap( <span class="prelude-val">None</span>, len, - ProtFlags::PROT_WRITE | ProtFlags::PROT_READ | ProtFlags::PROT_EXEC, + ProtFlags::PROT_NONE, MapFlags::MAP_PRIVATE | MapFlags::MAP_ANONYMOUS, <span class="number">0</span>, <span class="comment">/* fd */ </span><span class="number">0</span>, <span class="comment">/* off */ </span>) - .unwrap() <span class="kw">as </span><span class="kw-2">*mut </span>u8 + .expect(<span class="string">"Failed to mmap runtime code page"</span>) <span class="kw">as </span><span class="kw-2">*mut </span>u8 }; Runtime { @@ -122,55 +245,160 @@ } } - <span class="doccomment">/// Write protect the underlying code page(s). - </span><span class="kw">pub fn </span>protect(<span class="kw-2">&mut </span><span class="self">self</span>) { - <span class="kw">unsafe </span>{ - <span class="comment">// Remove write permissions from code buffer and allow to read-execute from it. - </span>mprotect( - <span class="self">self</span>.buf.cast(), - <span class="self">self</span>.len, - ProtFlags::PROT_READ | ProtFlags::PROT_EXEC, - ) - .expect(<span class="string">"Failed to RX mprotect Runtime code buffer"</span>); - } - } - - <span class="doccomment">/// Add block of code to the runtime and get function pointer back. + <span class="doccomment">/// Add the block of `code` to the runtime and a get function pointer of type `F`. + /// + /// # Panics + /// + /// Panics if the `code` does not fit on the `mmap`ed pages or is empty. + /// + /// # Safety + /// + /// The code added must fulfill the ABI of the specified function `F` and the returned function + /// pointer is only valid until the [`Runtime`] is dropped. + /// + /// # Examples + /// + /// ``` + /// let mut rt = juicebox_asm::Runtime::new(); + /// + /// let code = [ 0x90 /* nop */, 0xc3 /* ret */ ]; + /// let nop = unsafe { rt.add_code::<extern "C" fn()>(&code) }; + /// + /// nop(); + /// ``` </span><span class="kw">pub unsafe fn </span>add_code<F>(<span class="kw-2">&mut </span><span class="self">self</span>, code: <span class="kw">impl </span>AsRef<[u8]>) -> F { <span class="comment">// Get pointer to start of next free byte. - </span><span class="macro">assert!</span>(<span class="self">self</span>.idx < <span class="self">self</span>.len); + </span><span class="macro">assert!</span>(<span class="self">self</span>.idx < <span class="self">self</span>.len, <span class="string">"Runtime code page full"</span>); <span class="kw">let </span>fn_start = <span class="self">self</span>.buf.add(<span class="self">self</span>.idx); <span class="comment">// Copy over code. </span><span class="kw">let </span>code = code.as_ref(); - <span class="macro">assert!</span>(code.len() < (<span class="self">self</span>.len - <span class="self">self</span>.idx)); + <span class="macro">assert!</span>(!code.is_empty(), <span class="string">"Adding empty code not supported"</span>); + <span class="macro">assert!</span>( + code.len() <= (<span class="self">self</span>.len - <span class="self">self</span>.idx), + <span class="string">"Code does not fit on the runtime code page" + </span>); + <span class="self">self</span>.unprotect(); <span class="kw">unsafe </span>{ std::ptr::copy_nonoverlapping(code.as_ptr(), fn_start, code.len()) }; + <span class="self">self</span>.protect(); <span class="comment">// Increment index to next free byte. </span><span class="self">self</span>.idx += code.len(); <span class="comment">// Return function to newly added code. - </span><span class="self">Self</span>::as_fn::<F>(fn_start) + </span><span class="kw">unsafe </span>{ <span class="self">Self</span>::as_fn::<F>(fn_start) } } - <span class="doccomment">/// Reinterpret the block of code as `F`. + <span class="doccomment">/// Dump the code added so far to the runtime into a file called `jit.asm` in the processes + /// current working directory. + /// + /// The code can be inspected with a disassembler as for example `ndiasm` from + /// [nasm.us](https://nasm.us/index.php). + /// ```sh + /// ndisasm -b 64 jit.asm + /// ``` + /// + /// # Panics + /// + /// Panics if writing the file failed. + </span><span class="kw">pub fn </span>dump(<span class="kw-2">&</span><span class="self">self</span>) { + <span class="macro">assert!</span>(<span class="self">self</span>.idx <= <span class="self">self</span>.len); + <span class="kw">let </span>code = <span class="kw">unsafe </span>{ core::slice::from_raw_parts(<span class="self">self</span>.buf, <span class="self">self</span>.idx) }; + std::fs::write(<span class="string">"jit.asm"</span>, code).expect(<span class="string">"Failed to write file"</span>); + } + + <span class="doccomment">/// Reinterpret the block of code pointed to by `fn_start` as `F`. </span><span class="attr">#[inline] </span><span class="kw">unsafe fn </span>as_fn<F>(fn_start: <span class="kw-2">*mut </span>u8) -> F { <span class="kw">unsafe </span>{ std::mem::transmute_copy(<span class="kw-2">&</span>fn_start) } } - <span class="doccomment">/// Dump the currently added code to a file called `jit.asm`. The disassembly can be inspected - /// as `ndisasm -b 64 jit.asm`. - </span><span class="kw">pub fn </span>dump(<span class="kw-2">&</span><span class="self">self</span>) { - <span class="kw">let </span>code = <span class="kw">unsafe </span>{ slice::from_raw_parts(<span class="self">self</span>.buf, <span class="self">self</span>.idx) }; - std::fs::write(<span class="string">"jit.asm"</span>, code).unwrap(); + <span class="doccomment">/// Add write protection the underlying code page(s). + /// + /// # Panics + /// + /// Panics if the `mprotect` call fails. + </span><span class="kw">fn </span>protect(<span class="kw-2">&mut </span><span class="self">self</span>) { + <span class="kw">unsafe </span>{ + <span class="comment">// Remove write permissions from code page and allow to read-execute from it. + </span>mprotect( + <span class="self">self</span>.buf.cast(), + <span class="self">self</span>.len, + ProtFlags::PROT_READ | ProtFlags::PROT_EXEC, + ) + .expect(<span class="string">"Failed to RX mprotect runtime code page"</span>); + } + } + + <span class="doccomment">/// Remove write protection the underlying code page(s). + /// + /// # Panics + /// + /// Panics if the `mprotect` call fails. + </span><span class="kw">fn </span>unprotect(<span class="kw-2">&mut </span><span class="self">self</span>) { + <span class="kw">unsafe </span>{ + <span class="comment">// Add write permissions to code page. + </span>mprotect(<span class="self">self</span>.buf.cast(), <span class="self">self</span>.len, ProtFlags::PROT_WRITE) + .expect(<span class="string">"Failed to W mprotect runtime code page"</span>); + } } } <span class="kw">impl </span>Drop <span class="kw">for </span>Runtime { - <span class="kw">fn </span>drop(<span class="kw-2">&mut </span><span class="self">self</span>) { + <span class="doccomment">/// Unmaps the code page. This invalidates all the function pointer returned by + /// [`Runtime::add_code`]. + </span><span class="kw">fn </span>drop(<span class="kw-2">&mut </span><span class="self">self</span>) { + <span class="kw">unsafe </span>{ + munmap(<span class="self">self</span>.buf.cast(), <span class="self">self</span>.len).expect(<span class="string">"Failed to munmap runtime"</span>); + } + } +} + +<span class="attr">#[cfg(test)] +</span><span class="kw">mod </span>test { + <span class="kw">use super</span>::<span class="kw-2">*</span>; + + <span class="attr">#[test] + </span><span class="kw">fn </span>test_code_max_size() { + <span class="kw">let </span><span class="kw-2">mut </span>rt = Runtime::new(); + <span class="kw">let </span>code = [<span class="number">0u8</span>; <span class="number">4096</span>]; + <span class="kw">unsafe </span>{ + rt.add_code::<<span class="kw">extern </span><span class="string">"C" </span><span class="kw">fn</span>()>(code); + } + } + + <span class="attr">#[test] + #[should_panic] + </span><span class="kw">fn </span>test_code_max_size_plus_1() { + <span class="kw">let </span><span class="kw-2">mut </span>rt = Runtime::new(); + <span class="kw">let </span>code = [<span class="number">0u8</span>; <span class="number">4097</span>]; + <span class="kw">unsafe </span>{ + rt.add_code::<<span class="kw">extern </span><span class="string">"C" </span><span class="kw">fn</span>()>(code); + } + } + + <span class="attr">#[test] + #[should_panic] + </span><span class="kw">fn </span>test_code_max_size_plus_1_2() { + <span class="kw">let </span><span class="kw-2">mut </span>rt = Runtime::new(); + <span class="kw">let </span>code = [<span class="number">0u8</span>; <span class="number">4096</span>]; + <span class="kw">unsafe </span>{ + rt.add_code::<<span class="kw">extern </span><span class="string">"C" </span><span class="kw">fn</span>()>(code); + } + + <span class="kw">let </span>code = [<span class="number">0u8</span>; <span class="number">1</span>]; + <span class="kw">unsafe </span>{ + rt.add_code::<<span class="kw">extern </span><span class="string">"C" </span><span class="kw">fn</span>()>(code); + } + } + + <span class="attr">#[test] + #[should_panic] + </span><span class="kw">fn </span>test_empty_code() { + <span class="kw">let </span><span class="kw-2">mut </span>rt = Runtime::new(); + <span class="kw">let </span>code = [<span class="number">0u8</span>; <span class="number">0</span>]; <span class="kw">unsafe </span>{ - munmap(<span class="self">self</span>.buf.cast(), <span class="self">self</span>.len).expect(<span class="string">"Failed to munmap Runtime"</span>); + rt.add_code::<<span class="kw">extern </span><span class="string">"C" </span><span class="kw">fn</span>()>(code); } } } diff --git a/src/tiny_vm/tiny_vm.rs.html b/src/tiny_vm/tiny_vm.rs.html index b986ed6..7de10c9 100644 --- a/src/tiny_vm/tiny_vm.rs.html +++ b/src/tiny_vm/tiny_vm.rs.html @@ -695,6 +695,7 @@ <a href="#695" id="695">695</a> <a href="#696" id="696">696</a> <a href="#697" id="697">697</a> +<a href="#698" id="698">698</a> </pre></div><pre class="rust"><code><span class="doccomment">//! TinyVm example. //! //! This example introduces as simple 16 bit virtual machine the [`TinyVm`]. The VM consits of @@ -736,8 +737,9 @@ </span><span class="attr">#[cfg(not(any(target_arch = <span class="string">"x86_64"</span>, target_os = <span class="string">"linux"</span>)))] </span><span class="macro">compile_error!</span>(<span class="string">"Only supported on x86_64 with SystemV abi"</span>); -<span class="kw">use </span>juicebox_asm::prelude::<span class="kw-2">*</span>; +<span class="kw">use </span>juicebox_asm::insn::<span class="kw-2">*</span>; <span class="kw">use </span>juicebox_asm::Runtime; +<span class="kw">use </span>juicebox_asm::{Asm, Imm16, Imm64, Label, MemOp, Reg16, Reg64}; <span class="doccomment">/// A guest physical address. </span><span class="kw">pub struct </span>PhysAddr(<span class="kw">pub </span>u16); diff --git a/tiny_vm/enum.TinyInsn.html b/tiny_vm/enum.TinyInsn.html index ac8d1b9..57b3487 100644 --- a/tiny_vm/enum.TinyInsn.html +++ b/tiny_vm/enum.TinyInsn.html @@ -1,4 +1,4 @@ -<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="The instructions for the `TinyVm`."><title>TinyInsn in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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 enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">TinyInsn</a></h2><div class="sidebar-elems"><section><h3><a href="#variants">Variants</a></h3><ul class="block"><li><a href="#variant.Add">Add</a></li><li><a href="#variant.Addi">Addi</a></li><li><a href="#variant.Branch">Branch</a></li><li><a href="#variant.BranchZero">BranchZero</a></li><li><a href="#variant.Halt">Halt</a></li><li><a href="#variant.Load">Load</a></li><li><a href="#variant.LoadImm">LoadImm</a></li><li><a href="#variant.Store">Store</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Clone-for-TinyInsn">Clone</a></li><li><a href="#impl-Copy-for-TinyInsn">Copy</a></li><li><a href="#impl-Debug-for-TinyInsn">Debug</a></li><li><a href="#impl-PartialEq%3CTinyInsn%3E-for-TinyInsn">PartialEq<TinyInsn></a></li><li><a href="#impl-StructuralPartialEq-for-TinyInsn">StructuralPartialEq</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-TinyInsn">RefUnwindSafe</a></li><li><a href="#impl-Send-for-TinyInsn">Send</a></li><li><a href="#impl-Sync-for-TinyInsn">Sync</a></li><li><a href="#impl-Unpin-for-TinyInsn">Unpin</a></li><li><a href="#impl-UnwindSafe-for-TinyInsn">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-TinyInsn">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-TinyInsn">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-TinyInsn">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-TinyInsn">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-TinyInsn">Into<U></a></li><li><a href="#impl-ToOwned-for-TinyInsn">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-TinyInsn">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-TinyInsn">TryInto<U></a></li></ul></section><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Enum <a href="index.html">tiny_vm</a>::<wbr><a class="enum" href="#">TinyInsn</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/tiny_vm/tiny_vm.rs.html#71-88">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub enum TinyInsn { +<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="The instructions for the `TinyVm`."><title>TinyInsn in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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 enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">TinyInsn</a></h2><div class="sidebar-elems"><section><h3><a href="#variants">Variants</a></h3><ul class="block"><li><a href="#variant.Add">Add</a></li><li><a href="#variant.Addi">Addi</a></li><li><a href="#variant.Branch">Branch</a></li><li><a href="#variant.BranchZero">BranchZero</a></li><li><a href="#variant.Halt">Halt</a></li><li><a href="#variant.Load">Load</a></li><li><a href="#variant.LoadImm">LoadImm</a></li><li><a href="#variant.Store">Store</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Clone-for-TinyInsn">Clone</a></li><li><a href="#impl-Copy-for-TinyInsn">Copy</a></li><li><a href="#impl-Debug-for-TinyInsn">Debug</a></li><li><a href="#impl-PartialEq%3CTinyInsn%3E-for-TinyInsn">PartialEq<TinyInsn></a></li><li><a href="#impl-StructuralPartialEq-for-TinyInsn">StructuralPartialEq</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-TinyInsn">RefUnwindSafe</a></li><li><a href="#impl-Send-for-TinyInsn">Send</a></li><li><a href="#impl-Sync-for-TinyInsn">Sync</a></li><li><a href="#impl-Unpin-for-TinyInsn">Unpin</a></li><li><a href="#impl-UnwindSafe-for-TinyInsn">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-TinyInsn">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-TinyInsn">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-TinyInsn">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-TinyInsn">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-TinyInsn">Into<U></a></li><li><a href="#impl-ToOwned-for-TinyInsn">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-TinyInsn">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-TinyInsn">TryInto<U></a></li></ul></section><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Enum <a href="index.html">tiny_vm</a>::<wbr><a class="enum" href="#">TinyInsn</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/tiny_vm/tiny_vm.rs.html#72-89">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub enum TinyInsn { Halt, LoadImm(<a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a>, <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>), Load(<a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a>, <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>), @@ -16,9 +16,9 @@ </div><section id="variant.Addi" class="variant"><a href="#variant.Addi" class="anchor">§</a><h3 class="code-header">Addi(<a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a>, <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.i16.html">i16</a>)</h3></section><div class="docblock"><p>Add the immediate to the register <code>reg += imm</code>.</p> </div><section id="variant.Branch" class="variant"><a href="#variant.Branch" class="anchor">§</a><h3 class="code-header">Branch(<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.usize.html">usize</a>)</h3></section><div class="docblock"><p>Jump unconditional (absolute addressing) <code>pc = disp</code>.</p> </div><section id="variant.BranchZero" class="variant"><a href="#variant.BranchZero" class="anchor">§</a><h3 class="code-header">BranchZero(<a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a>, <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.usize.html">usize</a>)</h3></section><div class="docblock"><p>Jump if the register is zero (absolute addressing) <code>pc = (reg == 0) ? disp : pc++</code>.</p> -</div></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-TinyInsn" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#70">source</a><a href="#impl-Clone-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#70">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-TinyInsn" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#70">source</a><a href="#impl-Debug-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#70">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/1.74.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.74.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq%3CTinyInsn%3E-for-TinyInsn" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#70">source</a><a href="#impl-PartialEq%3CTinyInsn%3E-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#70">source</a><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/cmp/trait.PartialEq.html#tymethod.eq" class="fn">eq</a>(&self, other: &<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used +</div></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-TinyInsn" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#71">source</a><a href="#impl-Clone-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#71">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-TinyInsn" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#71">source</a><a href="#impl-Debug-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#71">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/1.74.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.74.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq%3CTinyInsn%3E-for-TinyInsn" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#71">source</a><a href="#impl-PartialEq%3CTinyInsn%3E-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#71">source</a><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/cmp/trait.PartialEq.html#tymethod.eq" class="fn">eq</a>(&self, other: &<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/cmp.rs.html#231">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/cmp/trait.PartialEq.html#method.ne" class="fn">ne</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>!=</code>. The default implementation is almost always -sufficient, and should not be overridden without very good reason.</div></details></div></details><section id="impl-Copy-for-TinyInsn" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#70">source</a><a href="#impl-Copy-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section><section id="impl-StructuralPartialEq-for-TinyInsn" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#70">source</a><a href="#impl-StructuralPartialEq-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.StructuralPartialEq.html" title="trait core::marker::StructuralPartialEq">StructuralPartialEq</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-TinyInsn" class="impl"><a href="#impl-RefUnwindSafe-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section><section id="impl-Send-for-TinyInsn" class="impl"><a href="#impl-Send-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section><section id="impl-Sync-for-TinyInsn" class="impl"><a href="#impl-Sync-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section><section id="impl-Unpin-for-TinyInsn" class="impl"><a href="#impl-Unpin-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section><section id="impl-UnwindSafe-for-TinyInsn" class="impl"><a href="#impl-UnwindSafe-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-TinyInsn" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +sufficient, and should not be overridden without very good reason.</div></details></div></details><section id="impl-Copy-for-TinyInsn" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#71">source</a><a href="#impl-Copy-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section><section id="impl-StructuralPartialEq-for-TinyInsn" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#71">source</a><a href="#impl-StructuralPartialEq-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.StructuralPartialEq.html" title="trait core::marker::StructuralPartialEq">StructuralPartialEq</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-TinyInsn" class="impl"><a href="#impl-RefUnwindSafe-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section><section id="impl-Send-for-TinyInsn" class="impl"><a href="#impl-Send-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section><section id="impl-Sync-for-TinyInsn" class="impl"><a href="#impl-Sync-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section><section id="impl-Unpin-for-TinyInsn" class="impl"><a href="#impl-Unpin-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section><section id="impl-UnwindSafe-for-TinyInsn" class="impl"><a href="#impl-UnwindSafe-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-TinyInsn" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-TinyInsn" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-TinyInsn" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-TinyInsn" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-TinyInsn" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/tiny_vm/enum.TinyReg.html b/tiny_vm/enum.TinyReg.html index 61495de..a5c9df9 100644 --- a/tiny_vm/enum.TinyReg.html +++ b/tiny_vm/enum.TinyReg.html @@ -1,11 +1,11 @@ -<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="The registers for the `TinyVm`."><title>TinyReg in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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 enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">TinyReg</a></h2><div class="sidebar-elems"><section><h3><a href="#variants">Variants</a></h3><ul class="block"><li><a href="#variant.A">A</a></li><li><a href="#variant.B">B</a></li><li><a href="#variant.C">C</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Clone-for-TinyReg">Clone</a></li><li><a href="#impl-Copy-for-TinyReg">Copy</a></li><li><a href="#impl-Debug-for-TinyReg">Debug</a></li><li><a href="#impl-PartialEq%3CTinyReg%3E-for-TinyReg">PartialEq<TinyReg></a></li><li><a href="#impl-StructuralPartialEq-for-TinyReg">StructuralPartialEq</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-TinyReg">RefUnwindSafe</a></li><li><a href="#impl-Send-for-TinyReg">Send</a></li><li><a href="#impl-Sync-for-TinyReg">Sync</a></li><li><a href="#impl-Unpin-for-TinyReg">Unpin</a></li><li><a href="#impl-UnwindSafe-for-TinyReg">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-TinyReg">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-TinyReg">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-TinyReg">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-TinyReg">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-TinyReg">Into<U></a></li><li><a href="#impl-ToOwned-for-TinyReg">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-TinyReg">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-TinyReg">TryInto<U></a></li></ul></section><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Enum <a href="index.html">tiny_vm</a>::<wbr><a class="enum" href="#">TinyReg</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/tiny_vm/tiny_vm.rs.html#56-60">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub enum TinyReg { +<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="The registers for the `TinyVm`."><title>TinyReg in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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 enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">TinyReg</a></h2><div class="sidebar-elems"><section><h3><a href="#variants">Variants</a></h3><ul class="block"><li><a href="#variant.A">A</a></li><li><a href="#variant.B">B</a></li><li><a href="#variant.C">C</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Clone-for-TinyReg">Clone</a></li><li><a href="#impl-Copy-for-TinyReg">Copy</a></li><li><a href="#impl-Debug-for-TinyReg">Debug</a></li><li><a href="#impl-PartialEq%3CTinyReg%3E-for-TinyReg">PartialEq<TinyReg></a></li><li><a href="#impl-StructuralPartialEq-for-TinyReg">StructuralPartialEq</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-TinyReg">RefUnwindSafe</a></li><li><a href="#impl-Send-for-TinyReg">Send</a></li><li><a href="#impl-Sync-for-TinyReg">Sync</a></li><li><a href="#impl-Unpin-for-TinyReg">Unpin</a></li><li><a href="#impl-UnwindSafe-for-TinyReg">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-TinyReg">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-TinyReg">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-TinyReg">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-TinyReg">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-TinyReg">Into<U></a></li><li><a href="#impl-ToOwned-for-TinyReg">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-TinyReg">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-TinyReg">TryInto<U></a></li></ul></section><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Enum <a href="index.html">tiny_vm</a>::<wbr><a class="enum" href="#">TinyReg</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/tiny_vm/tiny_vm.rs.html#57-61">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub enum TinyReg { A, B, C, }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The registers for the <a href="struct.TinyVm.html" title="struct tiny_vm::TinyVm"><code>TinyVm</code></a>.</p> -</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.A" class="variant"><a href="#variant.A" class="anchor">§</a><h3 class="code-header">A</h3></section><section id="variant.B" class="variant"><a href="#variant.B" class="anchor">§</a><h3 class="code-header">B</h3></section><section id="variant.C" class="variant"><a href="#variant.C" class="anchor">§</a><h3 class="code-header">C</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-TinyReg" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#55">source</a><a href="#impl-Clone-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#55">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-TinyReg" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#55">source</a><a href="#impl-Debug-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#55">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/1.74.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.74.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq%3CTinyReg%3E-for-TinyReg" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#55">source</a><a href="#impl-PartialEq%3CTinyReg%3E-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><<a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a>> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#55">source</a><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/cmp/trait.PartialEq.html#tymethod.eq" class="fn">eq</a>(&self, other: &<a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used +</div></details><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.A" class="variant"><a href="#variant.A" class="anchor">§</a><h3 class="code-header">A</h3></section><section id="variant.B" class="variant"><a href="#variant.B" class="anchor">§</a><h3 class="code-header">B</h3></section><section id="variant.C" class="variant"><a href="#variant.C" class="anchor">§</a><h3 class="code-header">C</h3></section></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-TinyReg" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#56">source</a><a href="#impl-Clone-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#56">source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h4></section></summary><div class='docblock'>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/clone.rs.html#169">source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.74.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-TinyReg" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#56">source</a><a href="#impl-Debug-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#56">source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/1.74.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.74.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq%3CTinyReg%3E-for-TinyReg" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#56">source</a><a href="#impl-PartialEq%3CTinyReg%3E-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><<a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a>> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#56">source</a><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/cmp/trait.PartialEq.html#tymethod.eq" class="fn">eq</a>(&self, other: &<a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.74.0/src/core/cmp.rs.html#231">source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/cmp/trait.PartialEq.html#method.ne" class="fn">ne</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>This method tests for <code>!=</code>. The default implementation is almost always -sufficient, and should not be overridden without very good reason.</div></details></div></details><section id="impl-Copy-for-TinyReg" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#55">source</a><a href="#impl-Copy-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section><section id="impl-StructuralPartialEq-for-TinyReg" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#55">source</a><a href="#impl-StructuralPartialEq-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.StructuralPartialEq.html" title="trait core::marker::StructuralPartialEq">StructuralPartialEq</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-TinyReg" class="impl"><a href="#impl-RefUnwindSafe-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section><section id="impl-Send-for-TinyReg" class="impl"><a href="#impl-Send-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section><section id="impl-Sync-for-TinyReg" class="impl"><a href="#impl-Sync-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section><section id="impl-Unpin-for-TinyReg" class="impl"><a href="#impl-Unpin-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section><section id="impl-UnwindSafe-for-TinyReg" class="impl"><a href="#impl-UnwindSafe-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-TinyReg" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +sufficient, and should not be overridden without very good reason.</div></details></div></details><section id="impl-Copy-for-TinyReg" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#56">source</a><a href="#impl-Copy-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section><section id="impl-StructuralPartialEq-for-TinyReg" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#56">source</a><a href="#impl-StructuralPartialEq-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.StructuralPartialEq.html" title="trait core::marker::StructuralPartialEq">StructuralPartialEq</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-TinyReg" class="impl"><a href="#impl-RefUnwindSafe-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section><section id="impl-Send-for-TinyReg" class="impl"><a href="#impl-Send-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section><section id="impl-Sync-for-TinyReg" class="impl"><a href="#impl-Sync-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section><section id="impl-Unpin-for-TinyReg" class="impl"><a href="#impl-Unpin-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section><section id="impl-UnwindSafe-for-TinyReg" class="impl"><a href="#impl-UnwindSafe-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-TinyReg" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-TinyReg" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-TinyReg" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-TinyReg" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-TinyReg" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/tiny_vm/fn.make_tinyvm_fib.html b/tiny_vm/fn.make_tinyvm_fib.html index 03ed4e0..4ccf6e5 100644 --- a/tiny_vm/fn.make_tinyvm_fib.html +++ b/tiny_vm/fn.make_tinyvm_fib.html @@ -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="Generate a guest program to compute the fiibonacci sequence for `n`."><title>make_tinyvm_fib in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><div class="sidebar-elems"><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Function <a href="index.html">tiny_vm</a>::<wbr><a class="fn" href="#">make_tinyvm_fib</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/tiny_vm/tiny_vm.rs.html#373-449">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub fn make_tinyvm_fib(start_n: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Generate a guest program to compute the fiibonacci sequence for <code>n</code>.</p> +<!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="Generate a guest program to compute the fiibonacci sequence for `n`."><title>make_tinyvm_fib in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><div class="sidebar-elems"><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Function <a href="index.html">tiny_vm</a>::<wbr><a class="fn" href="#">make_tinyvm_fib</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/tiny_vm/tiny_vm.rs.html#374-450">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub fn make_tinyvm_fib(start_n: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Generate a guest program to compute the fiibonacci sequence for <code>n</code>.</p> </div></details></section></div></main></body></html>
\ No newline at end of file diff --git a/tiny_vm/fn.make_tinyvm_jit_perf.html b/tiny_vm/fn.make_tinyvm_jit_perf.html index fa4fee2..28089e3 100644 --- a/tiny_vm/fn.make_tinyvm_jit_perf.html +++ b/tiny_vm/fn.make_tinyvm_jit_perf.html @@ -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="Generate a simple count down loop to crunch some instructions."><title>make_tinyvm_jit_perf in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><div class="sidebar-elems"><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Function <a href="index.html">tiny_vm</a>::<wbr><a class="fn" href="#">make_tinyvm_jit_perf</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/tiny_vm/tiny_vm.rs.html#479-490">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub fn make_tinyvm_jit_perf() -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Generate a simple count down loop to crunch some instructions.</p> +<!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="Generate a simple count down loop to crunch some instructions."><title>make_tinyvm_jit_perf in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><div class="sidebar-elems"><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Function <a href="index.html">tiny_vm</a>::<wbr><a class="fn" href="#">make_tinyvm_jit_perf</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/tiny_vm/tiny_vm.rs.html#480-491">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub fn make_tinyvm_jit_perf() -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Generate a simple count down loop to crunch some instructions.</p> </div></details></section></div></main></body></html>
\ No newline at end of file diff --git a/tiny_vm/fn.make_tinyvm_jit_test.html b/tiny_vm/fn.make_tinyvm_jit_test.html index 88ebf5b..903f42c 100644 --- a/tiny_vm/fn.make_tinyvm_jit_test.html +++ b/tiny_vm/fn.make_tinyvm_jit_test.html @@ -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="Generate a test program for the jit."><title>make_tinyvm_jit_test in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><div class="sidebar-elems"><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Function <a href="index.html">tiny_vm</a>::<wbr><a class="fn" href="#">make_tinyvm_jit_test</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/tiny_vm/tiny_vm.rs.html#452-476">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub fn make_tinyvm_jit_test() -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Generate a test program for the jit.</p> +<!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="Generate a test program for the jit."><title>make_tinyvm_jit_test in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><div class="sidebar-elems"><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Function <a href="index.html">tiny_vm</a>::<wbr><a class="fn" href="#">make_tinyvm_jit_test</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/tiny_vm/tiny_vm.rs.html#453-477">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub fn make_tinyvm_jit_test() -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Generate a test program for the jit.</p> </div></details></section></div></main></body></html>
\ No newline at end of file diff --git a/tiny_vm/index.html b/tiny_vm/index.html index 38f37bd..0323d25 100644 --- a/tiny_vm/index.html +++ b/tiny_vm/index.html @@ -1,4 +1,4 @@ -<!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="TinyVm example."><title>tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="../crates.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Crate tiny_vm</a></h2><div class="sidebar-elems"><ul class="block"><li class="version">Version 0.1.0</li><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="#enums">Enums</a></li><li><a href="#functions">Functions</a></li></ul></section></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Crate <a class="mod" href="#">tiny_vm</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/tiny_vm/tiny_vm.rs.html#1-697">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>TinyVm example.</p> +<!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="TinyVm example."><title>tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="../crates.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.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">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Crate tiny_vm</a></h2><div class="sidebar-elems"><ul class="block"><li class="version">Version 0.1.0</li><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="#enums">Enums</a></li><li><a href="#functions">Functions</a></li></ul></section></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Crate <a class="mod" href="#">tiny_vm</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/tiny_vm/tiny_vm.rs.html#1-698">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>TinyVm example.</p> <p>This example introduces as simple 16 bit virtual machine the <a href="struct.TinyVm.html" title="struct tiny_vm::TinyVm"><code>TinyVm</code></a>. The VM consits of three registers defined in <a href="enum.TinyReg.html" title="enum tiny_vm::TinyReg"><code>TinyReg</code></a>, a separate <em>data</em> and <em>insutrction</em> memory and a small set of instructions <a href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn"><code>TinyInsn</code></a>, sufficient to implement a guest program to compute the diff --git a/tiny_vm/struct.Fixup.html b/tiny_vm/struct.Fixup.html index 0711c0b..83e7fb1 100644 --- a/tiny_vm/struct.Fixup.html +++ b/tiny_vm/struct.Fixup.html @@ -1,6 +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="A minial fixup utility to implement jump labels when constructing guest programs."><title>Fixup in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Fixup</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.bind">bind</a></li><li><a href="#method.new">new</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Fixup">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Fixup">Send</a></li><li><a href="#impl-Sync-for-Fixup">Sync</a></li><li><a href="#impl-Unpin-for-Fixup">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Fixup">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Fixup">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Fixup">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Fixup">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Fixup">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Fixup">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Fixup">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Fixup">TryInto<U></a></li></ul></section><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">tiny_vm</a>::<wbr><a class="struct" href="#">Fixup</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/tiny_vm/tiny_vm.rs.html#343-345">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Fixup { /* private fields */ }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A minial fixup utility to implement jump labels when constructing guest programs.</p> -</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Fixup" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#347-370">source</a><a href="#impl-Fixup" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Fixup.html" title="struct tiny_vm::Fixup">Fixup</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#349-351">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(pc: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.usize.html">usize</a>) -> Self</h4></section></summary><div class="docblock"><p>Create a new <code>Fixup</code> at the current pc.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.bind" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#354-369">source</a><h4 class="code-header">pub fn <a href="#method.bind" class="fn">bind</a>(self, prog: &mut <a class="struct" href="https://doc.rust-lang.org/1.74.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>>)</h4></section></summary><div class="docblock"><p>Bind the <code>Fixup</code> to the current location of <code>prog</code> and resolve the <code>Fixup</code>.</p> +<!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="A minial fixup utility to implement jump labels when constructing guest programs."><title>Fixup in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">Fixup</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.bind">bind</a></li><li><a href="#method.new">new</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-Fixup">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Fixup">Send</a></li><li><a href="#impl-Sync-for-Fixup">Sync</a></li><li><a href="#impl-Unpin-for-Fixup">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Fixup">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-Fixup">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Fixup">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Fixup">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-Fixup">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-Fixup">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-Fixup">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-Fixup">TryInto<U></a></li></ul></section><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">tiny_vm</a>::<wbr><a class="struct" href="#">Fixup</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/tiny_vm/tiny_vm.rs.html#344-346">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct Fixup { /* private fields */ }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A minial fixup utility to implement jump labels when constructing guest programs.</p> +</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Fixup" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#348-371">source</a><a href="#impl-Fixup" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Fixup.html" title="struct tiny_vm::Fixup">Fixup</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#350-352">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(pc: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.usize.html">usize</a>) -> Self</h4></section></summary><div class="docblock"><p>Create a new <code>Fixup</code> at the current pc.</p> +</div></details><details class="toggle method-toggle" open><summary><section id="method.bind" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#355-370">source</a><h4 class="code-header">pub fn <a href="#method.bind" class="fn">bind</a>(self, prog: &mut <a class="struct" href="https://doc.rust-lang.org/1.74.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>>)</h4></section></summary><div class="docblock"><p>Bind the <code>Fixup</code> to the current location of <code>prog</code> and resolve the <code>Fixup</code>.</p> </div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Fixup" class="impl"><a href="#impl-RefUnwindSafe-for-Fixup" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Fixup.html" title="struct tiny_vm::Fixup">Fixup</a></h3></section><section id="impl-Send-for-Fixup" class="impl"><a href="#impl-Send-for-Fixup" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Fixup.html" title="struct tiny_vm::Fixup">Fixup</a></h3></section><section id="impl-Sync-for-Fixup" class="impl"><a href="#impl-Sync-for-Fixup" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Fixup.html" title="struct tiny_vm::Fixup">Fixup</a></h3></section><section id="impl-Unpin-for-Fixup" class="impl"><a href="#impl-Unpin-for-Fixup" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Fixup.html" title="struct tiny_vm::Fixup">Fixup</a></h3></section><section id="impl-UnwindSafe-for-Fixup" class="impl"><a href="#impl-UnwindSafe-for-Fixup" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Fixup.html" title="struct tiny_vm::Fixup">Fixup</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-Fixup" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-Fixup" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Fixup" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-Fixup" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Fixup" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-Fixup" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where diff --git a/tiny_vm/struct.PhysAddr.html b/tiny_vm/struct.PhysAddr.html index 3e549f7..6f09f30 100644 --- a/tiny_vm/struct.PhysAddr.html +++ b/tiny_vm/struct.PhysAddr.html @@ -1,5 +1,5 @@ -<!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="A guest physical address."><title>PhysAddr in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">PhysAddr</a></h2><div class="sidebar-elems"><section><h3><a href="#fields">Tuple Fields</a></h3><ul class="block"><li><a href="#structfield.0">0</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Into%3Cusize%3E-for-PhysAddr">Into<usize></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-PhysAddr">RefUnwindSafe</a></li><li><a href="#impl-Send-for-PhysAddr">Send</a></li><li><a href="#impl-Sync-for-PhysAddr">Sync</a></li><li><a href="#impl-Unpin-for-PhysAddr">Unpin</a></li><li><a href="#impl-UnwindSafe-for-PhysAddr">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-PhysAddr">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-PhysAddr">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-PhysAddr">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-PhysAddr">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-PhysAddr">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-PhysAddr">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-PhysAddr">TryInto<U></a></li></ul></section><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">tiny_vm</a>::<wbr><a class="struct" href="#">PhysAddr</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/tiny_vm/tiny_vm.rs.html#46">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct PhysAddr(pub <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>);</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A guest physical address.</p> -</div></details><h2 id="fields" class="fields small-section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield small-section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a></code></span><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Into%3Cusize%3E-for-PhysAddr" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#48-52">source</a><a href="#impl-Into%3Cusize%3E-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.usize.html">usize</a>> for <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#49-51">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Converts this type into the (usually inferred) input type.</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-PhysAddr" class="impl"><a href="#impl-RefUnwindSafe-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a></h3></section><section id="impl-Send-for-PhysAddr" class="impl"><a href="#impl-Send-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a></h3></section><section id="impl-Sync-for-PhysAddr" class="impl"><a href="#impl-Sync-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a></h3></section><section id="impl-Unpin-for-PhysAddr" class="impl"><a href="#impl-Unpin-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a></h3></section><section id="impl-UnwindSafe-for-PhysAddr" class="impl"><a href="#impl-UnwindSafe-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-PhysAddr" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where +<!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="A guest physical address."><title>PhysAddr in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">PhysAddr</a></h2><div class="sidebar-elems"><section><h3><a href="#fields">Tuple Fields</a></h3><ul class="block"><li><a href="#structfield.0">0</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Into%3Cusize%3E-for-PhysAddr">Into<usize></a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-PhysAddr">RefUnwindSafe</a></li><li><a href="#impl-Send-for-PhysAddr">Send</a></li><li><a href="#impl-Sync-for-PhysAddr">Sync</a></li><li><a href="#impl-Unpin-for-PhysAddr">Unpin</a></li><li><a href="#impl-UnwindSafe-for-PhysAddr">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-PhysAddr">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-PhysAddr">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-PhysAddr">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-PhysAddr">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-PhysAddr">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-PhysAddr">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-PhysAddr">TryInto<U></a></li></ul></section><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">tiny_vm</a>::<wbr><a class="struct" href="#">PhysAddr</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/tiny_vm/tiny_vm.rs.html#47">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct PhysAddr(pub <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>);</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A guest physical address.</p> +</div></details><h2 id="fields" class="fields small-section-header">Tuple Fields<a href="#fields" class="anchor">§</a></h2><span id="structfield.0" class="structfield small-section-header"><a href="#structfield.0" class="anchor field">§</a><code>0: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a></code></span><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Into%3Cusize%3E-for-PhysAddr" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#49-53">source</a><a href="#impl-Into%3Cusize%3E-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><<a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.usize.html">usize</a>> for <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#50-52">source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Converts this type into the (usually inferred) input type.</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-PhysAddr" class="impl"><a href="#impl-RefUnwindSafe-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a></h3></section><section id="impl-Send-for-PhysAddr" class="impl"><a href="#impl-Send-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a></h3></section><section id="impl-Sync-for-PhysAddr" class="impl"><a href="#impl-Sync-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a></h3></section><section id="impl-Unpin-for-PhysAddr" class="impl"><a href="#impl-Unpin-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a></h3></section><section id="impl-UnwindSafe-for-PhysAddr" class="impl"><a href="#impl-UnwindSafe-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-PhysAddr" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-PhysAddr" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#210">source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-PhysAddr" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#216">source</a><a href="#impl-BorrowMut%3CT%3E-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<span class="where fmt-newline">where T: ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#217">source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-PhysAddr" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#722">source</a><a href="#impl-From%3CT%3E-for-PhysAddr" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/convert/mod.rs.html#725">source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p> diff --git a/tiny_vm/struct.TinyVm.html b/tiny_vm/struct.TinyVm.html index a7c57cf..9932a6a 100644 --- a/tiny_vm/struct.TinyVm.html +++ b/tiny_vm/struct.TinyVm.html @@ -1,12 +1,12 @@ -<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="The `TinyVm` virtual machine state."><title>TinyVm in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">TinyVm</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.dump">dump</a></li><li><a href="#method.interp">interp</a></li><li><a href="#method.jit">jit</a></li><li><a href="#method.new">new</a></li><li><a href="#method.read_mem">read_mem</a></li><li><a href="#method.read_reg">read_reg</a></li><li><a href="#method.write_mem">write_mem</a></li><li><a href="#method.write_reg">write_reg</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Send-for-TinyVm">!Send</a></li><li><a href="#impl-Sync-for-TinyVm">!Sync</a></li><li><a href="#impl-RefUnwindSafe-for-TinyVm">RefUnwindSafe</a></li><li><a href="#impl-Unpin-for-TinyVm">Unpin</a></li><li><a href="#impl-UnwindSafe-for-TinyVm">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-TinyVm">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-TinyVm">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-TinyVm">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-TinyVm">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-TinyVm">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-TinyVm">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-TinyVm">TryInto<U></a></li></ul></section><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">tiny_vm</a>::<wbr><a class="struct" href="#">TinyVm</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/tiny_vm/tiny_vm.rs.html#111-132">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct TinyVm { /* private fields */ }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The <code>TinyVm</code> virtual machine state.</p> -</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-TinyVm" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#134-340">source</a><a href="#impl-TinyVm" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.TinyVm.html" title="struct tiny_vm::TinyVm">TinyVm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#136-150">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(code: <a class="struct" href="https://doc.rust-lang.org/1.74.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>>) -> Self</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.TinyVm.html" title="struct tiny_vm::TinyVm"><code>TinyVm</code></a> and initialize the instruction memory from <code>code</code>.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.read_reg" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#154-156">source</a><h4 class="code-header">pub fn <a href="#method.read_reg" class="fn">read_reg</a>(&self, reg: <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a></h4></section></summary><div class="docblock"><p>Read guest register.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.write_reg" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#160-162">source</a><h4 class="code-header">pub fn <a href="#method.write_reg" class="fn">write_reg</a>(&mut self, reg: <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a>, val: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>)</h4></section></summary><div class="docblock"><p>Write guest register.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.read_mem" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#166-170">source</a><h4 class="code-header">pub fn <a href="#method.read_mem" class="fn">read_mem</a>(&self, paddr: <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a></h4></section></summary><div class="docblock"><p>Read guest data memory.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.write_mem" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#174-177">source</a><h4 class="code-header">pub fn <a href="#method.write_mem" class="fn">write_mem</a>(&mut self, paddr: <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a>, val: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>)</h4></section></summary><div class="docblock"><p>Write guest data memory.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.dump" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#180-190">source</a><h4 class="code-header">pub fn <a href="#method.dump" class="fn">dump</a>(&self)</h4></section></summary><div class="docblock"><p>Dump the VM state to stdout.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.interp" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#193-234">source</a><h4 class="code-header">pub fn <a href="#method.interp" class="fn">interp</a>(&mut self)</h4></section></summary><div class="docblock"><p>Run in interpreter mode until the next <a href="enum.TinyInsn.html#variant.Halt" title="variant tiny_vm::TinyInsn::Halt"><code>TinyInsn::Halt</code></a> instruction is hit.</p> -</div></details><details class="toggle method-toggle" open><summary><section id="method.jit" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#238-258">source</a><h4 class="code-header">pub fn <a href="#method.jit" class="fn">jit</a>(&mut self)</h4></section></summary><div class="docblock"><p>Run in JIT mode until the next <a href="enum.TinyInsn.html#variant.Halt" title="variant tiny_vm::TinyInsn::Halt"><code>TinyInsn::Halt</code></a> instruction is hit. Translate guest +<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="The `TinyVm` virtual machine state."><title>TinyVm in tiny_vm - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../static.files/rustdoc-fa3bb1812debf86c.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="tiny_vm" data-themes="" data-resource-suffix="" data-rustdoc-version="1.74.0 (79e9716c9 2023-11-13)" data-channel="1.74.0" data-search-js="search-8be46b629f5f14a8.js" data-settings-js="settings-74424d7eec62a23e.js" ><script src="../static.files/storage-fec3eaa3851e447d.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-c5bd66d33317d69f.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-5d8b3c7633ad77ba.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">☰</button><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a></nav><nav class="sidebar"><a class="logo-container" href="../tiny_vm/index.html"><img class="rust-logo" src="../static.files/rust-logo-151179464ae7ed46.svg" alt="logo"></a><h2 class="location"><a href="#">TinyVm</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.dump">dump</a></li><li><a href="#method.interp">interp</a></li><li><a href="#method.jit">jit</a></li><li><a href="#method.new">new</a></li><li><a href="#method.read_mem">read_mem</a></li><li><a href="#method.read_reg">read_reg</a></li><li><a href="#method.write_mem">write_mem</a></li><li><a href="#method.write_reg">write_reg</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Send-for-TinyVm">!Send</a></li><li><a href="#impl-Sync-for-TinyVm">!Sync</a></li><li><a href="#impl-RefUnwindSafe-for-TinyVm">RefUnwindSafe</a></li><li><a href="#impl-Unpin-for-TinyVm">Unpin</a></li><li><a href="#impl-UnwindSafe-for-TinyVm">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-TinyVm">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-TinyVm">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-TinyVm">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-TinyVm">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-TinyVm">Into<U></a></li><li><a href="#impl-TryFrom%3CU%3E-for-TinyVm">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-TinyVm">TryInto<U></a></li></ul></section><h2><a href="index.html">In tiny_vm</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Struct <a href="index.html">tiny_vm</a>::<wbr><a class="struct" href="#">TinyVm</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/tiny_vm/tiny_vm.rs.html#112-133">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>−</span>]</button></span></div><pre class="rust item-decl"><code>pub struct TinyVm { /* private fields */ }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The <code>TinyVm</code> virtual machine state.</p> +</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-TinyVm" class="impl"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#135-341">source</a><a href="#impl-TinyVm" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.TinyVm.html" title="struct tiny_vm::TinyVm">TinyVm</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#137-151">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>(code: <a class="struct" href="https://doc.rust-lang.org/1.74.0/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="enum.TinyInsn.html" title="enum tiny_vm::TinyInsn">TinyInsn</a>>) -> Self</h4></section></summary><div class="docblock"><p>Create a new <a href="struct.TinyVm.html" title="struct tiny_vm::TinyVm"><code>TinyVm</code></a> and initialize the instruction memory from <code>code</code>.</p> +</div></details><details class="toggle method-toggle" open><summary><section id="method.read_reg" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#155-157">source</a><h4 class="code-header">pub fn <a href="#method.read_reg" class="fn">read_reg</a>(&self, reg: <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a></h4></section></summary><div class="docblock"><p>Read guest register.</p> +</div></details><details class="toggle method-toggle" open><summary><section id="method.write_reg" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#161-163">source</a><h4 class="code-header">pub fn <a href="#method.write_reg" class="fn">write_reg</a>(&mut self, reg: <a class="enum" href="enum.TinyReg.html" title="enum tiny_vm::TinyReg">TinyReg</a>, val: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>)</h4></section></summary><div class="docblock"><p>Write guest register.</p> +</div></details><details class="toggle method-toggle" open><summary><section id="method.read_mem" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#167-171">source</a><h4 class="code-header">pub fn <a href="#method.read_mem" class="fn">read_mem</a>(&self, paddr: <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a></h4></section></summary><div class="docblock"><p>Read guest data memory.</p> +</div></details><details class="toggle method-toggle" open><summary><section id="method.write_mem" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#175-178">source</a><h4 class="code-header">pub fn <a href="#method.write_mem" class="fn">write_mem</a>(&mut self, paddr: <a class="struct" href="struct.PhysAddr.html" title="struct tiny_vm::PhysAddr">PhysAddr</a>, val: <a class="primitive" href="https://doc.rust-lang.org/1.74.0/std/primitive.u16.html">u16</a>)</h4></section></summary><div class="docblock"><p>Write guest data memory.</p> +</div></details><details class="toggle method-toggle" open><summary><section id="method.dump" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#181-191">source</a><h4 class="code-header">pub fn <a href="#method.dump" class="fn">dump</a>(&self)</h4></section></summary><div class="docblock"><p>Dump the VM state to stdout.</p> +</div></details><details class="toggle method-toggle" open><summary><section id="method.interp" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#194-235">source</a><h4 class="code-header">pub fn <a href="#method.interp" class="fn">interp</a>(&mut self)</h4></section></summary><div class="docblock"><p>Run in interpreter mode until the next <a href="enum.TinyInsn.html#variant.Halt" title="variant tiny_vm::TinyInsn::Halt"><code>TinyInsn::Halt</code></a> instruction is hit.</p> +</div></details><details class="toggle method-toggle" open><summary><section id="method.jit" class="method"><a class="src rightside" href="../src/tiny_vm/tiny_vm.rs.html#239-259">source</a><h4 class="code-header">pub fn <a href="#method.jit" class="fn">jit</a>(&mut self)</h4></section></summary><div class="docblock"><p>Run in JIT mode until the next <a href="enum.TinyInsn.html#variant.Halt" title="variant tiny_vm::TinyInsn::Halt"><code>TinyInsn::Halt</code></a> instruction is hit. Translate guest <em>basic blocks</em> on demand.</p> </div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-TinyVm" class="impl"><a href="#impl-RefUnwindSafe-for-TinyVm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.TinyVm.html" title="struct tiny_vm::TinyVm">TinyVm</a></h3></section><section id="impl-Send-for-TinyVm" class="impl"><a href="#impl-Send-for-TinyVm" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.TinyVm.html" title="struct tiny_vm::TinyVm">TinyVm</a></h3></section><section id="impl-Sync-for-TinyVm" class="impl"><a href="#impl-Sync-for-TinyVm" class="anchor">§</a><h3 class="code-header">impl !<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.TinyVm.html" title="struct tiny_vm::TinyVm">TinyVm</a></h3></section><section id="impl-Unpin-for-TinyVm" class="impl"><a href="#impl-Unpin-for-TinyVm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.TinyVm.html" title="struct tiny_vm::TinyVm">TinyVm</a></h3></section><section id="impl-UnwindSafe-for-TinyVm" class="impl"><a href="#impl-UnwindSafe-for-TinyVm" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.TinyVm.html" title="struct tiny_vm::TinyVm">TinyVm</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-TinyVm" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#135">source</a><a href="#impl-Any-for-TinyVm" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<span class="where fmt-newline">where T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.74.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</span></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/any.rs.html#136">source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.74.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.74.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-TinyVm" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.74.0/src/core/borrow.rs.html#208">source</a><a href="#impl-Borrow%3CT%3E-for-TinyVm" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.74.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<span class="where fmt-newline">where |