<!DOCTYPE html><htmllang="en"><head><metacharset="utf-8"><metaname="viewport"content="width=device-width, initial-scale=1.0"><metaname="generator"content="rustdoc"><metaname="description"content="API documentation for the Rust `FuncCursor` struct in crate `cranelift_codegen`."><metaname="keywords"content="rust, rustlang, rust-lang, FuncCursor"><title>cranelift_codegen::cursor::FuncCursor - Rust</title><linkrel="stylesheet"type="text/css"href="../../normalize.css"><linkrel="stylesheet"type="text/css"href="../../rustdoc.css"id="mainThemeStyle"><linkrel="stylesheet"type="text/css"href="../../dark.css"><linkrel="stylesheet"type="text/css"href="../../light.css"id="themeStyle"><scriptsrc="../../storage.js"></script><noscript><linkrel="stylesheet"href="../../noscript.css"></noscript><linkrel="shortcut icon"href="../../favicon.ico"><styletype="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><bodyclass="rustdoc struct"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><navclass="sidebar"><divclass="sidebar-menu">☰</div><ahref='../../cranelift_codegen/index.html'><divclass='logo-container'><imgsrc='../../rust-logo.png'alt='logo'></div></a><pclass='location'>Struct FuncCursor</p><divclass="sidebar-elems"><divclass="block items"><aclass="sidebar-title"href="#fields">Fields</a><divclass="sidebar-links"><ahref="#structfield.func">func</a></div><aclass="sidebar-title"href="#methods">Methods</a><divclass="sidebar-links"><ahref="#method.ins">ins</a><ahref="#method.new">new</a><ahref="#method.use_srcloc">use_srcloc</a></div><aclass="sidebar-title"href="#implementations">Trait Implementations</a><divclass="sidebar-links"><ahref="#impl-Cursor">Cursor</a><ahref="#impl-InstInserterBase%3C%27c%3E">InstInserterBase<'c></a></div><aclass="sidebar-title"href="#synthetic-implementations">Auto Trait Implementations</a><divclass="sidebar-links"><ahref="#impl-RefUnwindSafe">RefUnwindSafe</a><ahref="#impl-Send">Send</a><ahref="#impl-Sync">Sync</a><ahref="#impl-Unpin">Unpin</a><ahref="#impl-UnwindSafe">!UnwindSafe</a></div><aclass="sidebar-title"href="#blanket-implementations">Blanket Implementations</a><divclass="sidebar-links"><ahref="#impl-Any">Any</a><ahref="#impl-Borrow%3CT%3E">Borrow<T></a><ahref="#impl-BorrowMut%3CT%3E">BorrowMut<T></a><ahref="#impl-From%3CT%3E">From<T></a><ahref="#impl-Into%3CU%3E">Into<U></a><ahref="#impl-TryFrom%3CU%3E">TryFrom<U></a><ahref="#impl-TryInto%3CU%3E">TryInto<U></a></div></div><pclass='location'><ahref='../index.html'>cranelift_codegen</a>::<wbr><ahref='index.html'>cursor</a></p><script>window.sidebarCurrent={name:'FuncCursor',ty:'struct',relpath:''};</script><scriptdefersrc="sidebar-items.js"></script></div></nav><divclass="theme-picker"><buttonid="theme-picker"aria-label="Pick another theme!"><imgsrc="../../brush.svg"width="18"alt="Pick another theme!"></button><divid="theme-choices"></div></div><scriptsrc="../../theme.js"></script><navclass="sub"><formclass="search-form js-only"><divclass="search-container"><div><selectid="crate-search"><optionvalue="All crates">All crates</option></select><inputclass="search-input"name="search"autocomplete="off"spellcheck="false"placeholder="Click or press ‘S’ to search, ‘?’ for more options…"type="search"></div><aid="settings-menu"href="../../settings.html"><imgsrc="../../wheel.svg"width="18"alt="Change settings"></a></div></form></nav><sectionid="main"class="content"><h1class='fqn'><spanclass='out-of-band'><spanid='render-detail'><aid="toggle-all-docs"href="javascript:void(0)"title="collapse all docs">[<spanclass='inner'>−</span>]</a></span><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#573-579'title='goto source code'>[src]</a></span><spanclass='in-band'>Struct <ahref='../index.html'>cranelift_codegen</a>::<wbr><ahref='index.html'>cursor</a>::<wbr><a
</div><h2id='methods'class='small-section-header'>Methods<ahref='#methods'class='anchor'></a></h2><h3id='impl'class='impl'><codeclass='in-band'>impl<'f><aclass="struct"href="../../cranelift_codegen/cursor/struct.FuncCursor.html"title="struct cranelift_codegen::cursor::FuncCursor">FuncCursor</a><'f></code><ahref='#impl'class='anchor'></a><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#581-600'title='goto source code'>[src]</a></h3><divclass='impl-items'><h4id='method.new'class="method"><codeid='new.v'>pub fn <ahref='#method.new'class='fnname'>new</a>(func: &'f mut <aclass="struct"href="../../cranelift_codegen/ir/function/struct.Function.html"title="struct cranelift_codegen::ir::function::Function">Function</a>) -> Self</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#583-589'title='goto source code'>[src]</a></h4><divclass='docblock'><p>Create a new <code>FuncCursor</code> pointing nowhere.</p>
</div><h4id='method.use_srcloc'class="method"><codeid='use_srcloc.v'>pub fn <ahref='#method.use_srcloc'class='fnname'>use_srcloc</a>(&mut self, inst: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Inst.html"title="struct cranelift_codegen::ir::entities::Inst">Inst</a>)</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#592-594'title='goto source code'>[src]</a></h4><divclass='docblock'><p>Use the source location of <code>inst</code> for future instructions.</p>
</div><h4id='method.ins'class="method"><codeid='ins.v'>pub fn <ahref='#method.ins'class='fnname'>ins</a>(&mut self) -><aclass="struct"href="../../cranelift_codegen/ir/struct.InsertBuilder.html"title="struct cranelift_codegen::ir::InsertBuilder">InsertBuilder</a><&mut <aclass="struct"href="../../cranelift_codegen/cursor/struct.FuncCursor.html"title="struct cranelift_codegen::cursor::FuncCursor">FuncCursor</a><'f>></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#597-599'title='goto source code'>[src]</a></h4><divclass='docblock'><p>Create an instruction builder that inserts an instruction at the current position.</p>
</div></div><h2id='implementations'class='small-section-header'>Trait Implementations<ahref='#implementations'class='anchor'></a></h2><divid='implementations-list'><h3id='impl-Cursor'class='impl'><codeclass='in-band'>impl<'f><aclass="trait"href="../../cranelift_codegen/cursor/trait.Cursor.html"title="trait cranelift_codegen::cursor::Cursor">Cursor</a> for <aclass="struct"href="../../cranelift_codegen/cursor/struct.FuncCursor.html"title="struct cranelift_codegen::cursor::FuncCursor">FuncCursor</a><'f></code><ahref='#impl-Cursor'class='anchor'></a><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#602-626'title='goto source code'>[src]</a></h3><divclass='impl-items'><h4id='method.position'class="method hidden"><codeid='position.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#tymethod.position'class='fnname'>position</a>(&self) -><aclass="enum"href="../../cranelift_codegen/cursor/enum.CursorPosition.html"title="enum cranelift_codegen::cursor::CursorPosition">CursorPosition</a></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#603-605'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Get the current cursor position.</p>
</div><h4id='method.set_position'class="method hidden"><codeid='set_position.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#tymethod.set_position'class='fnname'>set_position</a>(&mut self, pos: <aclass="enum"href="../../cranelift_codegen/cursor/enum.CursorPosition.html"title="enum cranelift_codegen::cursor::CursorPosition">CursorPosition</a>)</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#607-609'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Set the current position.</p>
</div><h4id='method.srcloc'class="method hidden"><codeid='srcloc.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#tymethod.srcloc'class='fnname'>srcloc</a>(&self) -><aclass="struct"href="../../cranelift_codegen/ir/struct.SourceLoc.html"title="struct cranelift_codegen::ir::SourceLoc">SourceLoc</a></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#611-613'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Get the source location that should be assigned to new instructions.</p>
</div><h4id='method.set_srcloc'class="method hidden"><codeid='set_srcloc.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#tymethod.set_srcloc'class='fnname'>set_srcloc</a>(&mut self, srcloc: <aclass="struct"href="../../cranelift_codegen/ir/struct.SourceLoc.html"title="struct cranelift_codegen::ir::SourceLoc">SourceLoc</a>)</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#615-617'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Set the source location that should be assigned to new instructions.</p>
</div><h4id='method.layout'class="method hidden"><codeid='layout.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#tymethod.layout'class='fnname'>layout</a>(&self) ->&<aclass="struct"href="../../cranelift_codegen/ir/layout/struct.Layout.html"title="struct cranelift_codegen::ir::layout::Layout">Layout</a></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#619-621'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Borrow a reference to the function layout that this cursor is navigating.</p>
</div><h4id='method.layout_mut'class="method hidden"><codeid='layout_mut.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#tymethod.layout_mut'class='fnname'>layout_mut</a>(&mut self) ->&mut <aclass="struct"href="../../cranelift_codegen/ir/layout/struct.Layout.html"title="struct cranelift_codegen::ir::layout::Layout">Layout</a></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#623-625'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Borrow a mutable reference to the function layout that this cursor is navigating.</p>
</div><h4id='method.with_srcloc'class="method hidden"><codeid='with_srcloc.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.with_srcloc'class='fnname'>with_srcloc</a>(self, srcloc: <aclass="struct"href="../../cranelift_codegen/ir/struct.SourceLoc.html"title="struct cranelift_codegen::ir::SourceLoc">SourceLoc</a>) -> Self <spanclass="where fmt-newline">where<br> Self: <aclass="trait"href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>, </span></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#57-63'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Exchange this cursor for one with a set source location. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.with_srcloc">Read more</a></p>
</div><h4id='method.at_position'class="method hidden"><codeid='at_position.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.at_position'class='fnname'>at_position</a>(self, pos: <aclass="enum"href="../../cranelift_codegen/cursor/enum.CursorPosition.html"title="enum cranelift_codegen::cursor::CursorPosition">CursorPosition</a>) -> Self <spanclass="where fmt-newline">where<br> Self: <aclass="trait"href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>, </span></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#66-72'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Rebuild this cursor positioned at <code>pos</code>.</p>
</div><h4id='method.at_first_insertion_point'class="method hidden"><codeid='at_first_insertion_point.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.at_first_insertion_point'class='fnname'>at_first_insertion_point</a>(self, ebb: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>) -> Self <spanclass="where fmt-newline">where<br> Self: <aclass="trait"href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>, </span></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#110-116'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Rebuild this cursor positioned at the first insertion point for <code>ebb</code>. This differs from <code>at_first_inst</code> in that it doesn't assume that any instructions have been inserted into <code>ebb</code> yet. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.at_first_insertion_point">Read more</a></p>
</div><h4id='method.at_first_inst'class="method hidden"><codeid='at_first_inst.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.at_first_inst'class='fnname'>at_first_inst</a>(self, ebb: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>) -> Self <spanclass="where fmt-newline">where<br> Self: <aclass="trait"href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>, </span></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#131-137'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Rebuild this cursor positioned at the first instruction in <code>ebb</code>. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.at_first_inst">Read more</a></p>
</div><h4id='method.at_last_inst'class="method hidden"><codeid='at_last_inst.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.at_last_inst'class='fnname'>at_last_inst</a>(self, ebb: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>) -> Self <spanclass="where fmt-newline">where<br> Self: <aclass="trait"href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>, </span></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#152-158'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Rebuild this cursor positioned at the last instruction in <code>ebb</code>. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.at_last_inst">Read more</a></p>
</div><h4id='method.at_top'class="method hidden"><codeid='at_top.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.at_top'class='fnname'>at_top</a>(self, ebb: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>) -> Self <spanclass="where fmt-newline">where<br> Self: <aclass="trait"href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>, </span></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#194-200'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Rebuild this cursor positioned at the top of <code>ebb</code>. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.at_top">Read more</a></p>
</div><h4id='method.at_bottom'class="method hidden"><codeid='at_bottom.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.at_bottom'class='fnname'>at_bottom</a>(self, ebb: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>) -> Self <spanclass="where fmt-newline">where<br> Self: <aclass="trait"href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>, </span></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#215-221'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Rebuild this cursor positioned at the bottom of <code>ebb</code>. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.at_bottom">Read more</a></p>
</div><h4id='method.current_ebb'class="method hidden"><codeid='current_ebb.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.current_ebb'class='fnname'>current_ebb</a>(&self) -><aclass="enum"href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#224-231'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Get the EBB corresponding to the current position.</p>
</div><h4id='method.current_inst'class="method hidden"><codeid='current_inst.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.current_inst'class='fnname'>current_inst</a>(&self) -><aclass="enum"href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Inst.html"title="struct cranelift_codegen::ir::entities::Inst">Inst</a>></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#234-240'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Get the instruction corresponding to the current position, if any.</p>
</div><h4id='method.goto_after_inst'class="method hidden"><codeid='goto_after_inst.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.goto_after_inst'class='fnname'>goto_after_inst</a>(&mut self, inst: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Inst.html"title="struct cranelift_codegen::ir::entities::Inst">Inst</a>)</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#244-256'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Go to the position after a specific instruction, which must be inserted in the layout. New instructions will be inserted after <code>inst</code>. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.goto_after_inst">Read more</a></p>
</div><h4id='method.goto_inst'class="method hidden"><codeid='goto_inst.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.goto_inst'class='fnname'>goto_inst</a>(&mut self, inst: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Inst.html"title="struct cranelift_codegen::ir::entities::Inst">Inst</a>)</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#260-263'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Go to a specific instruction which must be inserted in the layout. New instructions will be inserted before <code>inst</code>. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.goto_inst">Read more</a></p>
</div><h4id='method.goto_first_insertion_point'class="method hidden"><codeid='goto_first_insertion_point.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.goto_first_insertion_point'class='fnname'>goto_first_insertion_point</a>(&mut self, ebb: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>)</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#268-274'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Go to the position for inserting instructions at the beginning of <code>ebb</code>, which unlike <code>goto_first_inst</code> doesn't assume that any instructions have been inserted into <code>ebb</code> yet. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.goto_first_insertion_point">Read more</a></p>
</div><h4id='method.goto_first_inst'class="method hidden"><codeid='goto_first_inst.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.goto_first_inst'class='fnname'>goto_first_inst</a>(&mut self, ebb: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>)</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#277-280'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Go to the first instruction in <code>ebb</code>.</p>
</div><h4id='method.goto_last_inst'class="method hidden"><codeid='goto_last_inst.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.goto_last_inst'class='fnname'>goto_last_inst</a>(&mut self, ebb: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>)</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#283-286'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Go to the last instruction in <code>ebb</code>.</p>
</div><h4id='method.goto_top'class="method hidden"><codeid='goto_top.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.goto_top'class='fnname'>goto_top</a>(&mut self, ebb: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>)</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#291-294'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Go to the top of <code>ebb</code> which must be inserted into the layout. At this position, instructions cannot be inserted, but <code>next_inst()</code> will move to the first instruction in <code>ebb</code>. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.goto_top">Read more</a></p>
</div><h4id='method.goto_bottom'class="method hidden"><codeid='goto_bottom.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.goto_bottom'class='fnname'>goto_bottom</a>(&mut self, ebb: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>)</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#298-301'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Go to the bottom of <code>ebb</code> which must be inserted into the layout. At this position, inserted instructions will be appended to <code>ebb</code>. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.goto_bottom">Read more</a></p>
</div><h4id='method.next_ebb'class="method hidden"><codeid='next_ebb.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.next_ebb'class='fnname'>next_ebb</a>(&mut self) -><aclass="enum"href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#323-334'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Go to the top of the next EBB in layout order and return it. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.next_ebb">Read more</a></p>
</div><h4id='method.prev_ebb'class="method hidden"><codeid='prev_ebb.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.prev_ebb'class='fnname'>prev_ebb</a>(&mut self) -><aclass="enum"href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#356-367'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Go to the bottom of the previous EBB in layout order and return it. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.prev_ebb">Read more</a></p>
</div><h4id='method.next_inst'class="method hidden"><codeid='next_inst.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.next_inst'class='fnname'>next_inst</a>(&mut self) -><aclass="enum"href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Inst.html"title="struct cranelift_codegen::ir::entities::Inst">Inst</a>></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#409-437'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Move to the next instruction in the same EBB and return it. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.next_inst">Read more</a></p>
</div><h4id='method.prev_inst'class="method hidden"><codeid='prev_inst.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.prev_inst'class='fnname'>prev_inst</a>(&mut self) -><aclass="enum"href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Inst.html"title="struct cranelift_codegen::ir::entities::Inst">Inst</a>></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#463-491'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Move to the previous instruction in the same EBB and return it. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.prev_inst">Read more</a></p>
</div><h4id='method.insert_inst'class="method hidden"><codeid='insert_inst.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.insert_inst'class='fnname'>insert_inst</a>(&mut self, inst: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Inst.html"title="struct cranelift_codegen::ir::entities::Inst">Inst</a>)</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#502-509'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Insert an instruction at the current position. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.insert_inst">Read more</a></p>
</div><h4id='method.remove_inst'class="method hidden"><codeid='remove_inst.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.remove_inst'class='fnname'>remove_inst</a>(&mut self) -><aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Inst.html"title="struct cranelift_codegen::ir::entities::Inst">Inst</a></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#516-521'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Remove the instruction under the cursor. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.remove_inst">Read more</a></p>
</div><h4id='method.remove_inst_and_step_back'class="method hidden"><codeid='remove_inst_and_step_back.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.remove_inst_and_step_back'class='fnname'>remove_inst_and_step_back</a>(&mut self) -><aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Inst.html"title="struct cranelift_codegen::ir::entities::Inst">Inst</a></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#528-533'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Remove the instruction under the cursor. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.remove_inst_and_step_back">Read more</a></p>
</div><h4id='method.insert_ebb'class="method hidden"><codeid='insert_ebb.v'>fn <ahref='../../cranelift_codegen/cursor/trait.Cursor.html#method.insert_ebb'class='fnname'>insert_ebb</a>(&mut self, new_ebb: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Ebb.html"title="struct cranelift_codegen::ir::entities::Ebb">Ebb</a>)</code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#549-563'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Insert an EBB at the current position and switch to it. <ahref="../../cranelift_codegen/cursor/trait.Cursor.html#method.insert_ebb">Read more</a></p>
</div></div><h3id='impl-InstInserterBase%3C%27c%3E'class='impl'><codeclass='in-band'>impl<'c, 'f><aclass="trait"href="../../cranelift_codegen/ir/trait.InstInserterBase.html"title="trait cranelift_codegen::ir::InstInserterBase">InstInserterBase</a><'c> for &'c mut <aclass="struct"href="../../cranelift_codegen/cursor/struct.FuncCursor.html"title="struct cranelift_codegen::cursor::FuncCursor">FuncCursor</a><'f></code><ahref='#impl-InstInserterBase%3C%27c%3E'class='anchor'></a><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#628-644'title='goto source code'>[src]</a></h3><divclass='impl-items'><h4id='method.data_flow_graph'class="method hidden"><codeid='data_flow_graph.v'>fn <ahref='../../cranelift_codegen/ir/trait.InstInserterBase.html#tymethod.data_flow_graph'class='fnname'>data_flow_graph</a>(&self) ->&<aclass="struct"href="../../cranelift_codegen/ir/dfg/struct.DataFlowGraph.html"title="struct cranelift_codegen::ir::dfg::DataFlowGraph">DataFlowGraph</a></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#629-631'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Get an immutable reference to the data flow graph.</p>
</div><h4id='method.data_flow_graph_mut'class="method hidden"><codeid='data_flow_graph_mut.v'>fn <ahref='../../cranelift_codegen/ir/trait.InstInserterBase.html#tymethod.data_flow_graph_mut'class='fnname'>data_flow_graph_mut</a>(&mut self) ->&mut <aclass="struct"href="../../cranelift_codegen/ir/dfg/struct.DataFlowGraph.html"title="struct cranelift_codegen::ir::dfg::DataFlowGraph">DataFlowGraph</a></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#633-635'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Get a mutable reference to the data flow graph.</p>
</div><h4id='method.insert_built_inst'class="method hidden"><codeid='insert_built_inst.v'>fn <ahref='../../cranelift_codegen/ir/trait.InstInserterBase.html#tymethod.insert_built_inst'class='fnname'>insert_built_inst</a>(self, inst: <aclass="struct"href="../../cranelift_codegen/ir/entities/struct.Inst.html"title="struct cranelift_codegen::ir::entities::Inst">Inst</a>, _: <aclass="struct"href="../../cranelift_codegen/ir/types/struct.Type.html"title="struct cranelift_codegen::ir::types::Type">Type</a>) ->&'c mut <aclass="struct"href="../../cranelift_codegen/ir/dfg/struct.DataFlowGraph.html"title="struct cranelift_codegen::ir::dfg::DataFlowGraph">DataFlowGraph</a></code><aclass='srclink'href='../../src/cranelift_codegen/cursor.rs.html#637-643'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Insert a new instruction which belongs to the DFG.</p>
</div></div><h3id='impl-TryFrom%3CU%3E'class='impl'><codeclass='in-band'>impl<T, U><aclass="trait"href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><U> for T <spanclass="where fmt-newline">where<br> U: <aclass="trait"href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html"title="trait core::convert::Into">Into</a><T>, </span></code><ahref='#impl-TryFrom%3CU%3E'class='anchor'></a><aclass='srclink'href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#571-577'title='goto source code'>[src]</a></h3><divclass='impl-items'><h4id='associatedtype.Error'class="type"><codeid='Error.t'>type <ahref='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error'class="type">Error</a> = <aclass="enum"href="https://doc.rust-lang.org/nightly/core/convert/enum.Infallible.html"title="enum core::convert::Infallible">Infallible</a></code></h4><divclass='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4id='method.try_from'class="method hidden"><codeid='try_from.v'>fn <ahref='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#tymethod.try_from'class='fnname'>try_from</a>(value: U) -><aclass="enum"href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html"title="enum core::result::Result">Result</a><T, <T as <aclass="trait"href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><U>>::<aclass="type"href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error"title="type core::convert::TryFrom::Error">Error</a>></code><aclass='srclink'href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#574-576'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3id='impl-Into%3CU%3E'class='impl'><codeclass='in-band'>impl<T, U><aclass="trait"href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html"title="trait core::convert::Into">Into</a><U> for T <spanclass="where fmt-newline">where<br> U: <aclass="trait"href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html"title="trait core::convert::From">From</a><T>, </span></code><ahref='#impl-Into%3CU%3E'class='anchor'></a><aclass='srclink'href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#543-548'title='goto source code'>[src]</a></h3><divclass='impl-items'><h4id='method.into'class="method hidden"><codeid='into.v'>fn <ahref='https://doc.rust-lang.org/nightly/core/convert/trait.Into.html#tymethod.into'class='fnname'>into</a>(self) -> U</code><aclass='srclink'href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#545-547'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3id='impl-TryInto%3CU%3E'class='impl'><codeclass='in-band'>impl<T, U><aclass="trait"href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html"title="trait core::convert::TryInto">TryInto</a><U> for T <spanclass="where fmt-newline">where<br> U: <aclass="trait"href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><T>, </span></code><ahref='#impl-TryInto%3CU%3E'class='anchor'></a><aclass='srclink'href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#559-566'title='goto source code'>[src]</a></h3><divclass='impl-items'><h4id='associatedtype.Error-1'class="type"><codeid='Error.t-1'>type <ahref='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error'class="type">Error</a> = <U as <aclass="trait"href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><T>>::<aclass="type"href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error"title="type core::convert::TryFrom::Error">Error</a></code></h4><divclass='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4id='method.try_into'class="method hidden"><codeid='try_into.v'>fn <ahref='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#tymethod.try_into'class='fnname'>try_into</a>(self) -><aclass="enum"href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html"title="enum core::result::Result">Result</a><U, <U as <aclass="trait"href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><T>>::<aclass="type"href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error"title="type core::convert::TryFrom::Error">Error</a>></code><aclass='srclink'href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#563-565'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3id='impl-Borrow%3CT%3E'class='impl'><codeclass='in-band'>impl<T><aclass="trait"href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html"title="trait core::borrow::Borrow">Borrow</a><T> for T <spanclass="where fmt-newline">where<br> T: ?<aclass="trait"href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>, </span></code><ahref='#impl-Borrow%3CT%3E'class='anchor'></a><aclass='srclink'href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#213-215'title='goto source code'>[src]</a></h3><divclass='impl-items'><h4id='method.borrow'class="method hidden"><codeid='borrow.v'>fn <ahref='https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow'class='fnname'>borrow</a>(&self) -><aclass="primitive"href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>T</code><aclass='srclink'href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#214'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Immutably borrows from an owned value. <ahref="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
</div></div><h3id='impl-BorrowMut%3CT%3E'class='impl'><codeclass='in-band'>impl<T><aclass="trait"href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html"title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T <spanclass="where fmt-newline">where<br> T: ?<aclass="trait"href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>, </span></code><ahref='#impl-BorrowMut%3CT%3E'class='anchor'></a><aclass='srclink'href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#218-220'title='goto source code'>[src]</a></h3><divclass='impl-items'><h4id='method.borrow_mut'class="method hidden"><codeid='borrow_mut.v'>fn <ahref='https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut'class='fnname'>borrow_mut</a>(&mut self) -><aclass="primitive"href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>T</code><aclass='srclink'href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#219'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Mutably borrows from an owned value. <ahref="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
</div></div><h3id='impl-Any'class='impl'><codeclass='in-band'>impl<T><aclass="trait"href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html"title="trait core::any::Any">Any</a> for T <spanclass="where fmt-newline">where<br> T: 'static + ?<aclass="trait"href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>, </span></code><ahref='#impl-Any'class='anchor'></a><aclass='srclink'href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#100-102'title='goto source code'>[src]</a></h3><divclass='impl-items'><h4id='method.type_id'class="method hidden"><codeid='type_id.v'>fn <ahref='https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id'class='fnname'>type_id</a>(&self) -><aclass="struct"href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html"title="struct core::any::TypeId">TypeId</a></code><aclass='srclink'href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#101'title='goto source code'>[src]</a></h4><divclass='docblock hidden'><p>Gets the <code>TypeId</code> of <code>self</code>. <ahref="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
</div></div></div></section><sectionid="search"class="content hidden"></section><sectionclass="footer"></section><asideid="help"class="hidden"><div><h1class="hidden">Help</h1><divclass="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd>↑</kbd></dt><dd>Move up in search results</dd><dt><kbd>↓</kbd></dt><dd>Move down in search results</dd><dt><kbd>↹</kbd></dt><dd>Switch tab</dd><dt><kbd>⏎</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><divclass="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath="../../";window.currentCrate="cranelift_codegen";</script><scriptsrc="../../aliases.js"></script><scriptsrc="../../main.js"></script><scriptdefersrc="../../search-index.js"></script></body></html>