pub struct Converter<'a> {
pub cfg: &'a Cfg,
pub results: &'a Vec<BlockResult>,
pub groups: Vec<TryGroup>,
pub dom: DomInfo,
pub pending_labels: HashMap<usize, String>,
/* private fields */
}Fields§
§cfg: &'a Cfg§results: &'a Vec<BlockResult>§groups: Vec<TryGroup>§dom: DomInfoDominators over the full method graph (for goto fallback decisions).
pending_labels: HashMap<usize, String>Collected label emissions: block target -> label name (for Label stmts).
Implementations§
Source§impl<'a> Converter<'a>
impl<'a> Converter<'a>
pub fn with_copied_tails(self, tails: HashSet<usize>) -> Self
pub fn with_final_fields(self, finals: HashSet<String>) -> Self
pub fn new(cfg: &'a Cfg, results: &'a Vec<BlockResult>) -> Self
Sourcepub fn with_precomputed(
cfg: &'a Cfg,
results: &'a Vec<BlockResult>,
groups: Vec<TryGroup>,
dom: DomInfo,
) -> Self
pub fn with_precomputed( cfg: &'a Cfg, results: &'a Vec<BlockResult>, groups: Vec<TryGroup>, dom: DomInfo, ) -> Self
new with the group set and dominator tree precomputed and shared
with the Structurer (see Structurer::with_precomputed_groups).
pub fn convert(&mut self, r: Region) -> Stmt
Auto Trait Implementations§
impl<'a> !Freeze for Converter<'a>
impl<'a> !RefUnwindSafe for Converter<'a>
impl<'a> !Sync for Converter<'a>
impl<'a> Send for Converter<'a>
impl<'a> Unpin for Converter<'a>
impl<'a> UnsafeUnpin for Converter<'a>
impl<'a> UnwindSafe for Converter<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more